web-dev-qa-db-fra.com

Quel est le format de la revendication exp (Expiration Time) dans un fichier JWT?

J'utilise la bibliothèque ADAL pour obtenir le jeton d'accès à une ressource. Est-ce que quelqu'un sait dans quel format est la date d'expiration? plus spécifiquement "exp" (Expiration time) claim.

JwtSecurityToken class renvoie simplement int32 après l'analyse. Donc, ce n'est pas un bon indicateur.

J'ai essayé de l'analyser en TimeSpan et DateTime, mais les valeurs ne sont pas séparées de 90 minutes. C'est presque pareil.

C’est ce que j’ai reçu de fiddler pour iat et exp claim (utilisé https://jwt.io/ pour analyser le jeton)

iat: 1475874457

exp "1475878357

Les valeurs ne sont pas tellement séparées.

35
Frank Q.

La RFC 7519 indique que les valeurs de revendication exp et iat doivent être NumericDate.

NumericDate est la dernière définition de Section 2. Terminologie , et correspond au nombre de secondes ( pas millisecondes) depuis Epoch:

Valeur numérique JSON représentant le nombre de secondes entre 1970-01-01T00: 00: 00Z UTC et la date/heure UTC spécifiée, en ignorant les secondes intercalaires. Cela équivaut à la définition "Secondes depuis l'époque" de la norme IEEE Standard 1003.1, édition 2013 [POSIX.1], dans laquelle chaque jour est comptabilisé pendant exactement 86 400 secondes, à l'exception des valeurs non entières pouvant être représentées. Voir RFC 3339 [RFC3339] pour plus de détails sur les dates/heures en général et l'UTC en particulier.

47
Les Hazlewood