Json Web Token Authentication
Json Web Token (JWT) Authentication is available starting from RESTHeart 3.3.
To enable it, you have to add the following configuration fragment to the restheart.yml
file, editing below parameters accordingly to your needs.
# Jwt Authentication Manager
# Authentication via Json Web Token https://jwt.io
# algorithm: RSA (RS256 | RS384 |RS512) or HMAC (HS256 | HS384 | HS512)
# key: for RSA the base64 encoded of the public key; for HMAC, the secret key
# base64Encoded: set to true if the jwt token is base64 encoded. optional, default valud: false
# usernameClaim: the claim that holds the username. optional, default value: 'sub' (jwt subject).
# rolesClaim: the claim that holds the roles as string or array of strings
# issuer: verify the issues (iss claim). optional, default value matches: null (don't check iss)
# audience: verify the audience (aud claim). optional, default value matches: null (don't check aud)
auth-mechanism:
implementation-class: org.restheart.security.impl.JwtAuthenticationManagerFactory
algorithm: HS256
key: secret
base64Encoded: false
usernameClaim: sub
rolesClaim: roles
issuer: myIssuer
audience: myAudience