Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

  • jwtClaimId : nom du claim identifiant le jeton JWT. Valeur par défaut : "jti'. Cette information n'est utile que dans le cas où l'on souhaite savoir si est obligatoire : lorsque la gestion de la révocation est activée, la validation d'un jeton - identifié par son id - a été révoquéest tributaire de sa non révocation.
    Note : si le jeton ne possède pas le claim désigné par la propriété jwtClaimId alors la validation du jeton échouera ; une erreur 401 sera alors retournée par le serveur.
  • jwtPurgeFrequencyTime : Fréquence (en s) de purge de la table des jetons révoqués. Valeur par défaut : 3600. A adapter en rapport à la durée de la validité des jetons.

    Qui a le droit de révoquer un jeton ?

    Le jeton peut être révoqué uniquement par une requête authentifiée par ce même jeton.

    Persistence de la table des jetons révoqués
    La table des jetons révoqués subsiste à un redémarrage du serveur de ressources grâce aux méthodes d'initialisation et de terminaison du bean JwtRevokeConfiguration :
    • init-method : loadTokenMaps
    • destroy-method : saveTokensMaps

    Purge de la table des jetons révoqués
    La table des jetons révoqués est purgée à une fréquence donnée (par défaut toutes les heures, Cf. jwtPurgeFrequencyTime). Les jetons révoqués purgés sont les jetons révoqués arrivés à expiration.

...

  • User/Password
    jwtNatsAuthUser : Nom de l'utilisateur
    jwtNatsAuthPwd : Mot de passe. Pour chiffrer le mot de passe utilisez la commande "java EncryptPassword" du runtime Adélia, et indiquez le mot de passe entre parenthèses préfixé par "CRYPT".
    → exemples :

    <property name="jwtNatsAuthUser" value="bob"/>
    <property name="jwtNatsAuthPwd" value="s3cr3t"/>

    <property name="jwtNatsAuthUser" value="bob"/>
    <property name="jwtNatsAuthPwd" value="CRYPT(0040B783FDB007E032)"/>

  • Token
    jwtNatsAuthToken : Pour chiffrer le token utilisez la commande "java EncryptPassword" du runtime Adélia, et indiquez le mot de passe entre parenthèses préfixé par "CRYPT"
    → exemples :
    <property name="jwtNatsAuthToken" value="s3cr3t"/>
    <property name="jwtNatsAuthToken" value="CRYPT(0040B783FDB007E032)"/>

  • Nkey
    jwtNatsAuthNKeySeed : clé privée. Pour chiffrer la clé utilisez la commande "java EncryptPassword" du runtime Adélia, et indiquez le mot de passe entre parenthèses préfixé par "CRYPT"
    → exemples :
    <property name="jwtNatsAuthNKeySeed" value="SUAFGCEVJB6DTYFPEQIC4DSLGBRSD75BMQPO2HS6SX4FNPVZDTHMQYYN24"/>
    <property name="jwtNatsAuthNKeySeed" value="CRYPT(00D133D32D285115D308A5E89F9CEA80D227FDB3304CBD18AD596D09AA40359D7F3DA0F74CCDE20B8A6BD53687A2584851712091A26207A7F7D790DD719753E7D7)"/>

  • Credentials file

    jwtNatsAuthCredsFile : emplacement du fichier contenant les informations d'authentification. Cf/ https://docs.nats.io/using-nats/developer/connecting/creds

    → exemple :
    <property name="jwtNatsAuthCredsFile" value="nats.creds"/>


(V14.10.0)

Possibilité de préciser une liste de noms de claim pour la propriété jwtClaimId : utiliser le ; comme séparateur.
Le jeton est identifié par le premier nom de claim de la liste valide pour le jeton.

Bloc de code
languagexml
titlejwtClaimId
<bean id="jwtTokensRevocation" class="com.hardis.adelia.webservice.JwtRevokeConfiguration" init-method="loadTokensMap" destroy-method="saveTokensMap">
...
      <property name="jwtClaimId"               value="jti;tid"/> <!-- liste des noms de claim pouvant identifier le jeton -->
...
</bean>