In che modo JTI impedisce la riproduzione di una JWT?

21

Secondo il RFC JWT, un token JWT può opzionalmente avere un jti che io interpreto come un ID univoco per un token JWT. Sembra che un UUID sia un buon valore per un jti. La RFC afferma che il jti può essere usato per impedire che il JWT venga riprodotto. Due domande

  • In che modo un JTI impedisce la riproduzione di una JWT?
  • Con quale frequenza dovrebbe essere rigenerato il campo JTI? Ad ogni richiesta? o solo quando viene generato un nuovo token?

The "jti" (JWT ID) claim provides a unique identifier for the JWT.
The identifier value MUST be assigned in a manner that ensures that
there is a negligible probability that the same value will be
accidentally assigned to a different data object; if the application
uses multiple issuers, collisions MUST be prevented among values
produced by different issuers as well. The "jti" claim can be used
to prevent the JWT from being replayed. The "jti" value is a case-
sensitive string. Use of this claim is OPTIONAL.

    
posta ams 30.05.2016 - 20:34
fonte

1 risposta

2
  • How does a JTI prevent a JWT from being replayed?
  • How often should the JTI field be regenerated? On every request? or only when a new token is generated?

Credo che le risposte a queste due domande dipenderanno dall'applicazione stessa.

Ad esempio, se è stato programmato per ricevere solo messaggi che hanno un JTI unico, allora una riproduzione della stessa JTI può essere ignorata dall'applicazione.

L'JTI verrebbe rigenerata in questo caso quando è valida per lo stesso messaggio da ripetere.

    
risposta data 31.05.2016 - 13:01
fonte

Leggi altre domande sui tag