Ablaufzeit des Google-Zugriffstokens


150

Wenn ich eine access_tokenvon der Google-API erhalte, wird sie mit einem expires_inWert geliefert. Gemäß der Dokumentation gibt dieser Wert "Die verbleibende Lebensdauer des Zugriffstokens" an.

Was sind die Einheiten dieses Wertes?


8
Weil 99,9% der Zeit, in der Sie eine Zahl haben, die die Zeit darstellt, entweder Sekunden oder eine Unterteilung davon ist und Milli / Mikrosekunden für diesen Fall keinen Sinn ergeben?
Venge

7
@FrankLaRosa: Gibt es eine Möglichkeit, den Ablauf des Zugriffstokens auf unbegrenzt zu setzen?
Hardik

Ich wiederhole das Semi-Ding: Bitte akzeptiere die Antwort unten, wenn das zufriedenstellend ist, danke! Die Einheiten dieses Wertes sind jedoch Sekunden.
Davide Castronovo

@Hardik, wie kann ich die Ablaufzeit unbegrenzt machen? Hast du eine Lösung gefunden?
Jay Patel

Welche Beziehung besteht interessanterweise zwischen dem Ablaufen und dem Zulassen einer Aktualisierung (um ein neues Token zu erhalten)? Wenn Sie warten, bis es abläuft, um ein neues Token zu erhalten, schlagen einige API-Aufrufe dazwischen fehl. Wenn Sie zu früh "aktualisieren", erhalten Sie nur den alten Token zurück. Woher wissen Sie, wann Sie ein neues Token relativ zum angegebenen expires_in erhalten können?
John Little

Antworten:



89

Schauen Sie sich Folgendes an: https://developers.google.com/accounts/docs/OAuth2UserAgent#handlingtheresponse

Es sagt:

Weitere in der Antwort enthaltene Parameter sind expires_inund token_type. Diese Parameter beschreiben die Lebensdauer des Tokens in Sekunden ...


Auf welches Token bezieht sich expires_in: Zugriffstoken oder Aktualisierungstoken?
ス レ ッ ク ス

1
@AlexanderSupertramp, der das Zugriffstoken als Aktualisierungstoken bezeichnen sollte, wird verwendet, um neue Zugriffstoken abzurufen, wenn der Benutzer offline ist.
Jeremy Thiesen

15

Da es keine akzeptierte Antwort gibt, werde ich versuchen, diese zu beantworten:

[s] - seconds

6

Aus Google OAuth2.0 für Client- Dokumentation,

  • expires_in - Die Anzahl der Sekunden, die noch verbleiben, bevor das Token ungültig wird.

Es ist nicht mehr auf dieser Seite, der Maximalwert kann als 3900 eingegeben werden, aber der tatsächliche Wert ist 3600. Frage mich, ob es eine Möglichkeit gibt, ein Token ohne Ablaufdatum zu haben?
Sojim2

Siehe diesen Link auf dieser Seite: developer.google.com/identity/protocols/…, aber ich weiß nicht, wie ich ein nicht ablaufendes Token erhalten kann. Ich denke jedoch, dass die Verwendung solcher Token ein schlechtes Design für die Sicherheit ist.
Davide Castronovo
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.