https://openid.net/specs/draft-jones-json-web-key-03.html
https://blog.csdn.net/javaexploreroooo/article/details/78142768
https://www.programcreek.com/java-api-examples/?code=MyCoRe-Org/mycore/mycore-master/mycore-restapi/src/main/java/org/mycore/restapi/v1/utils/MCRJSONWebTokenUtil.java
https://static.javadoc.io/com.nimbusds/nimbus-jose-jwt/6.0/com/nimbusds/jose/jwk/JWK.html
https://blog.sourced-bvba.be/article/2017/03/04/easy-rsa-signing-with-JWK/
https://github.com/gtaban/JWKTransform
==============================
1>:
setup directory-server --rootUserDn “cn=Directory Manager” --rootUserPassword password --hostname localhost --ldapPort 1389 --httpPort 8080 --adminConnectorPort 4444 --acceptLicense
2>:
status --bindDn “cn=Directory Manager” --bindPassword password --hostname localhost --port 4444 --trustAll
3>:
dsconfig create-backend --backend-name “userRoot” --type “je” --set “base-dn:dc=hsbc,dc=com” --set “enabled:true” --hostname “localhost” --port “4444” --bindDn “cn=Directory Manager” --trustAll --bindPassword password --no-prompt
4>:
ldapmodify --hostname localhost --port 1389 --bindDn “cn=Directory Manager” --bindPassword password -f C:\Users\dr\Desktop\test.ldif
######################### test.ldif #############################
dn:dc=hsbc,dc=com
objectclass:domain
objectclass:top
o:Michael Blog
dc:hsbc
dn: ou=People,dc=hsbc,dc=com
changetype: add
objectclass: top
objectclass: organizationalUnit
ou: People
description: Container for user entries
dn: uid=bjensen,ou=People,dc=hsbc,dc=com
changetype: add
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetorgPerson
uid: bjensen
givenName: Barbara
sn: Jensen
cn: Barbara Jensen
telephoneNumber: (408) 555-3922
facsimileTelephoneNumber: (408) 555-4000
mail: bjensen@example.com
userPassword: secret
#################################################################
5>:
ldapsearch --port 1389 --baseDN dc=hsbc,dc=com “(uid=bjensen)”