Laufen die Google-Aktualisierungs-Tokens ab?

Ich habe das Refresh-Token mehrmals zu Testzwecken in kurzer Zeit verwendet, aber ich frage mich, ob das Google Refresh-Token abläuft? Oder ich kann dasselbe Refresh-Token aufrufen, um in einem langen Zeitraum (eine Woche oder sogar Monate) immer wieder ein anderes Zugriffstoken zu erhalten?

    Die von Google Auth Server ausgegebenen Refresh-Tokens laufen nie ab – das ist der springende Punkt der Refresh-Token. Das Aktualisierungs-Token läuft ab (oder ich sage, dass es nicht autorisiert wird), wenn der Benutzer den Zugriff auf Ihre Anwendung widerruft.

    In diesem Dokument wird deutlich die function der Aktualisierungstoken angegeben.

    Anstatt einen langlebigen Token auszugeben (normalerweise für ein Jahr oder eine unbegrenzte Lebensdauer), kann der Server ein kurzlebiges Zugriffstoken und ein langlebiges Aktualisierungstoken ausgeben. Kurz gesagt, Sie können Refresh-Tokens immer wieder verwenden, bis der Benutzer, der den Zugriff autorisiert hat, den Zugriff auf Ihre Anwendung widerruft.

    Dies ist ein sehr verwirrender Thread. Die erste Antwort scheint richtig zu sein, zitiert aber nichts, was autoritativ von Google ist.

    Die definitivste Antwort, die ich gefunden habe, ist tatsächlich auf dem Spielplatz des Entwicklers, wo Sie das Token erhalten. Schritt 2 hat eine Notiz an der Unterseite, die sagt:

    “Hinweis: Der OAuth Playground speichert keine Aktualisierungstoken, aber da die Aktualisierungstoken niemals ablaufen, sollten Benutzer auf die Seite” Autorisierter Zugriff für Google-Konten “gehen, wenn sie diese manuell aufheben möchten.”

    https://developers.google.com/oauthplayground/

    Ich glaube nicht, dass das völlig stimmt:

    Beachten Sie, dass die Anzahl der zu erteilenden Aktualisierungstoken begrenzt ist. ein Limit pro Client / Benutzer-Kombination und ein anderes pro Benutzer über alle Clients hinweg. Sie sollten Aktualisierungstokens im Langzeitspeicher speichern und sie weiterhin verwenden, solange sie gültig bleiben. Wenn Ihre Anwendung zu viele Aktualisierungstoken anfordert, können diese Grenzwerte überschritten werden. In diesem Fall funktionieren ältere Aktualisierungstoken nicht mehr.

    von dieser Seite: https://developers.google.com/youtube/v3/guides/authentication#installed-apps

    Das ist von den YouTube-Dokumenten (die ich als viel besser finde als andere API-Dokumente), aber ich denke, dass es in allen Google-Apps dasselbe ist.

    Sieh dir das an:

    Aktualisierungstoken sind gültig, bis der Benutzer den Zugriff widerruft. Dieses Feld ist nur vorhanden, wenn access_type = offline in der Autorisierungscodeanforderung enthalten ist.

    in https://developers.google.com/accounts/docs/OAuth2WebServer

    Die Regeln haben sich irgendwann 2017 geändert, also ist die beste Antwort, denke ich, dass es vom Produkt abhängt. In der Google Mail-API läuft das OAuth 2.0-Aktualisierungs-Token beispielsweise nach der Kennwortänderung ab. Siehe https://support.google.com/a/answer/6328616?hl=de

    Wir haben den API-Zugang im Voraus eingerichtet und generieren Refresh-Token, wenn wir NEUE Gmail-Benutzer einrichten, und dann können wir ihre E-Mails archivieren (dies ist gesetzlich vorgeschrieben), aber jetzt, sobald sie ihr Passwort ändern, das Refresh-Token wird widerrufen.

    Vielleicht für Youtube, Karten, das Refresh-Token ist immer noch wirklich langlebig, aber für Gmail API, zählen Sie auf ein kurzes Token.

    Das Hauptkonzept des Refresh-Tokens besteht darin, dass es langlebig ist und niemals abläuft.

    Das Zugriffstoken hat eine Ablaufzeit und es läuft ab. Sobald es abläuft, können wir das Refresh-Token verwenden, das immer wieder verwendet wird, bis der Benutzer von seinem Konto widerruft.

    Ich habe weitere Nachforschungen angestellt und es scheint, dass das Google-Zugriffstoken verwendet wird, um ein Aktualisierungstoken während der ersten “Offline” -Anfrage abzurufen. Ab diesem Zeitpunkt wird das Aktualisierungstoken verwendet, um ein neues Zugriffstoken auszugeben. Die Idee ist, dass ein Zugriffstoken ein Kurzzeit-Token ist, aber es kann durch ein Langzeit-Aktualisierungstoken erneuert werden. Dadurch entfällt die Notwendigkeit, die URL-Variable “code” anzufordern, die einen Ansatz mit zwei Endpunkten erfordert und initiiert werden muss, indem eine Referrer-basierte Anfrage verwendet wird:

    http://www.jensbits.com/2012/01/09/google-api-offline-access-using-oauth-2-0-refresh-token/

    Einige, REST-API-Dienste wie Dropbox, geben Tokens für den Zugriff aus, die für immer bestehen, aber Google gibt Tokens für den kurzfristigen Zugriff aus. PayPal verwendet einen Kompromiss, bei dem Zugriffstoken ohne URI-Referrer-Erzwingung abgerufen werden können. Dies bedeutet, dass Zugriffstoken abgerufen werden können, ohne auf einen Link klicken zu müssen, um den process zu initiieren. Googles Methodik bedeutet, dass API-Routinen nur auf der Basis einer Notwendigkeit aufgerufen werden sollten. Im Wesentlichen werden Anrufe über Referrer-basierte Verfahren initiiert. Dies wird durch die Ausgabe von kurzlebigen Zugriffstoken oder Zugriffstoken gesteuert, die in einer Kette aktualisiert werden müssen. Dies erfordert, dass Entwickler sich genauer Gedanken darüber machen, wie ein System fließen soll.