2016-10-07 1 views
11

Ich verwende ADAL-Bibliothek, um Zugriffstoken für eine Ressource zu erhalten. Weiß jemand, in welchem ​​Format die Ablaufzeit ist? genauer gesagt "exp" (Expiration time) claim.exp Zeitformat in JWT-Token

JwtSecurityToken Die Klasse gibt nach dem Parsing einfach int32 zurück. Das ist also kein guter Indikator.

Versucht, es zu TimeSpan und DateTime zu analysieren, aber die Werte sind nicht 90 Minuten auseinander. Es ist fast dasselbe. Diese

ist, was ich von Fiedler bekommen für iat und exp Anspruch (verwendet https://jwt.io/ das Token zu analysieren)

iat: sind 1475874457

exp "1475878357

Die Werte, die nicht viel auseinander.

+4

'1475878357-1475874457 = 3900 sec',' 3900 sec/60 sec = 65 min' (1 Stunde Token Lebensdauer + 5 Minuten für die Taktverschiebung) –

+0

Welche Plattform verwenden Sie? –

+0

Verwenden von .NET unter Windows –

Antwort

14

RFC 7519 besagt, dass die Werte exp und iat Anspruch müssenseinWerte.

NumericDate ist die letzte Definition in Section 2. Terminology, und ist als die Anzahl der Sekunden (nicht Millisekunden) seit der Epoche definiert:

numerischer Wert

A JSON, die die Anzahl von Sekunden von 1970-01- 01T00: 00: 00Z UTC bis zum angegebenen UTC Datum/Uhrzeit, Schaltsekunden ignorieren. Dies entspricht der IEEE Std 1003.1, Edition 2013 [POSIX.1] Definition "Sekunden seit der Epoche", in , die jeden Tag genau 86400 Sekunden berücksichtigt wird, andere als diese nicht ganzzahlige Werte dargestellt werden können. Siehe RFC 3339 [RFC3339] für Details in Bezug auf Datum/Uhrzeit im Allgemeinen und UTC in insbesondere.