Frage

Abschnitt 4.2 des Entwurfs des OAuth-2.0-Protokoll gibt an, dass ein Autorisierungsserver sowohl eine access_token zurückkehren kann (was sich mit einer Ressource zu authentifizieren, verwendet wird) sowie eine refresh_token, die rein verwendet, um eine neue access_token zu erstellen:

https://tools.ietf.org/html/rfc6749#section-4.2

Warum haben beide? Warum nicht einfach die access_token machen so lange wie die refresh_token und kein refresh_token haben?

War es hilfreich?

Lösung

Die Idee der Refresh-Token ist, dass, wenn ein Zugriffstoken gefährdet ist, weil es kurzlebig ist, dass der Angreifer ein begrenztes Fenster hat, in dem sie zu missbrauchen.

Refresh-Token, wenn beeinträchtigt, nutzlos ist, weil der Angreifer erfordert die Client-ID und geheime zusätzlich zum Auffrischen des Tokens eines Zugriffstoken zu gewinnen.

Having said that , da jeder Anruf sowohl an den Autorisierungsserver und die Ressource-Server über SSL erfolgt - einschließlich der ursprünglichen Client-ID und Geheimnis, wenn sie die Zugangs- / Refresh-Token anfordern - Ich bin nicht sicher, wie die Zugriffstoken ist mehr „kompromittierbar“ als die langlebigen Aktualisierungs-Token und clientid / geheime Verbindung.

Das ist natürlich anders Implementierungen, bei denen Sie beide nicht dem Server Autorisierung und Ressourcen steuern.

Hier ist ein guter Thread sprechen über Verwendungen von Refresh-Token: OAuth Archiv .

Ein Zitat aus der oben, im Gespräch über die Sicherheit Zwecke der Aktualisierungs-Token:

  

Refresh-Token ... mildert das Risiko eines langlebigen access_token undichten (Abfrage param in einer Protokolldatei auf einem unsicheren Ressource-Server, Beta- oder schlecht codierte Ressource-Server-Anwendung, JS SDK-Client auf einer Website nicht https, dass die Puts access_token in einem Cookie, etc.)

Andere Tipps

Der Link zur Diskussion von Catchdave vorgesehen ist, hat eine weitere wichtigen Punkt (original, toter Link) gemacht von Dick Hardt, die ich glaube, ist erwähnenswert hier zusätzlich zu dem, was oben geschrieben wurde:

  

Meine Erinnerung an refresh Token war für die Sicherheit und den Widerruf.   <...>

     

Widerruf: , wenn die Zugriffstoken sind selbst enthalten ist, kann Genehmigung nicht die Ausgabe neue Zugriffstoken widerrufen werden. Eine Ressource muss nicht den Autorisierungs-Server abzufragen, wenn die Zugriffstoken zu sehen sind valid.This vereinfacht Zugriffstoken Validierung und machen es maßstab einfacher und mehrere Berechtigungsserver zu unterstützen. Es gibt ein Zeitfenster, wenn ein Zugriffstoken gültig ist, aber Ermächtigung aufgehoben wird.

Ja, in der Situation, in der Ressourcen-Server und Autorisierungsserver die gleiche Person ist, und wo die Verbindung zwischen Benutzer und einer von ihnen ist (in der Regel) gleichermaßen sichern, ist es nicht viel Sinn refresh zu halten vom Access-Token Token trennen .

Obwohl, wie in dem Zitat erwähnt, eine andere Rolle der Refresh-Token ist die Zugriffstoken, um sicherzustellen, kann vom Nutzer jederzeit widerrufen werden (über das Web-Interface in ihren Profilen, zum Beispiel), während das System skalierbar halten an zur gleichen Zeit.

Im Allgemeinen Token können entweder statistische Identifikatoren auf den bestimmten Datensatz zeigt in der Datenbank des Servers, oder sie können alle Informationen in sich enthalten (natürlich, diese Informationen haben unterzeichnet werden, mit MAC , zum Beispiel).

Wie das System mit langlebigen Zugriffstoken sollte funktionieren

Der Server ermöglicht es dem Kunden innerhalb einer vordefinierten Zugriff auf Benutzerdaten zu erhalten Satz von Bereichen durch ein Token ausgegeben wird. Wie wir das Token widerruflich halten wollen, müssen wir das Token zusammen mit der Flagge in der Datenbank speichern „widerrufen“ Sein Satz oder nicht gesetzt (sonst, wie würden Sie tun, dass mit umluftunabhängigem Token?) Datenbank so viel wie len(users) x len(registered clients) x len(scopes combination) enthalten Aufzeichnungen. Jede API-Anforderung dann müssen die Datenbank getroffen. Obwohl es ziemlich trivial Abfragen solche Datenbank machen Durchführung O (1), die Single Point of Failure kann sich auf die Skalierbarkeit und Leistung des Systems negativ beeinflussen.

Wie das System mit langlebigen Aktualisierungs-Token und kurzlebig Zugriffstoken sollte funktionieren

Hier stellen wir zwei Schlüssel: random Aktualisierungs-Token mit dem entsprechenden Datensatz in der Datenbank, und unterzeichnete in sich geschlossene Zugriffstoken unter anderem das Ablaufzeitstempel-Feld mit

.

Da die Zugriffstoken in sich geschlossen ist, müssen wir die Datenbank nicht schlagen auf ihre volle Gültigkeit zu überprüfen. Alles, was wir tun müssen, ist das Token zu entschlüsseln und die Signatur und den Zeitstempel zu überprüfen.

Dennoch haben wir noch die Datenbank von Refresh-Token zu halten, aber die Anzahl der Anfragen zu dieser Datenbank wird im Allgemeinen durch die Lebensdauer des Zugriffstoken (je länger die Lebensdauer, die die Zugriffsrate senken) definiert.

Um den Zugriff von Client von einem bestimmten Benutzer zu entziehen, sollen wir die entsprechenden Aktualisierungs-Token markieren als „widerrufen“ (oder es vollständig entfernen) und Stop neue Zugriffstoken Ausgabe. Es ist offensichtlich, aber, dass es ein Fenster, in dem die Aktualisierungs-Token widerrufen wurden, aber seine Zugriffstoken noch gültig sein können.

Tradeoffs

Aktualisieren Token teilweise beseitigen die SPOF (Single Point of Failure) von Access Token-Datenbank, aber sie haben einige offensichtliche Nachteile.

  1. Das "Fenster". Ein Zeitraum zwischen Ereignissen „Benutzer widerrufen den Zugriff“ und „Zugang zu widerruf ist garantiert“.

  2. Die compliKation der Client-Logik.

    ohne Aktualisierungs-Token

    • Senden API-Anfrage mit Zugriffstoken
    • , wenn Zugriffstoken ungültig ist, fehlschlagen und fragen Benutzer erneut authentifizieren

    mit Aktualisierungs-Token

    • Senden API-Anfrage mit Zugriffstoken
    • Wenn Zugriffstoken ungültig ist, versuchen, es zu aktualisieren, indem Aktualisierungs-Token
    • wenn Auffrischanforderung gibt, aktualisieren Sie die Zugriffstoken und erneut senden, um die anfängliche API-Anfrage
    • Wenn Auffrischanforderung fehlschlägt, bitten Benutzer erneut authentifizieren

Ich hoffe, diese Antwort macht Sinn und hilft jemand nachdenkliche Entscheidung zu treffen. Ich möchte auch beachten, dass einige bekannte OAuth2 Anbieter, darunter Github und viereckig Protokoll annehmen, ohne Refresh-Token und damit glücklich zu sein scheinen.

Trotz aller großen Antworten oben, ich als Sicherheitsmeisterschüler und Programmierer, die zuvor bei eBay gearbeitet, als ich einen Blick in Käuferschutz und Betrug nahm können, sagen zu separaten Zugriffstoken und Aktualisierungs-Token hat seine beste Balance zwischen belästigend Benutzern von häufigen Benutzername / Passwort-Eingabe und hielt die Autorität in der Hand Zugang zu potentiellen widerrufen Missbrauch Ihren Service.

Denken Sie an ein Szenario wie dieses. Sie geben Benutzer einen Zugriffstoken von 3600 Sekunden und Aktualisierungs-Token viel länger als einen Tag.

  1. Der Benutzer ist ein gut Benutzer, ist er zu Hause und bekommt ein / aus Ihrem Website-Shopping und Suche auf seinem iPhone. Seine IP-Adresse ändert sich nicht und hat eine sehr geringe Last auf dem Server. Wie 3-5 Seitenanfragen pro Minute. Als seine 3.600 Sekunden auf dem Zugriffstoken vorbei sind, erfordert er einen neuen mit den Aktualisierungs-Token. Wir, die auf der Serverseite, überprüfen seine Aktivität Geschichte und IP-Adresse, denken, dass er ein Mensch ist und verhält sich. Wir gewähren ihm einen neuen Zugriffstoken über unseren Service fortzusetzen. Der Benutzer wird nicht eingeben müssen erneut Benutzername / Passwort, bis er eines Tages Lebensdauer Aktualisierungs-Token selbst erreicht hat.

  2. Der Benutzer ist ein unvorsichtig Benutzer. Er lebt in New York, USA und bekam sein Viren-Programm Shutdown und wurde in Polen von einem Hacker gehackt. Wenn der Hacker das Zugriffstoken bekam und Aktualisierungs-Token, versucht er, den Benutzer zu verkörpern und unseren Service nutzen. Aber nach dem Kurz Live-Zugriffstoken abläuft, wenn die Hacker versucht, die Zugriffstoken zu aktualisieren, wir, auf dem Server, hat eine dramatische IP Änderung des Nutzerverhaltens Geschichte bemerkt (hey, der Typ Anmeldungen in den USA und jetzt Auffrischzugriff in Polen nach nur 3600s ???). Wir beenden den Auffrischungsprozess, ungültig die Aktualisierungs-Token selbst und prompt wieder Benutzername / Passwort einzugeben.

  3. Der Benutzer ist ein böswillige Benutzer. Er soll unseren Service missbrauchen durch den Aufruf 1000 mal unsere API jede Minute mit einem Roboter. Er kann auch so bis 3600 Sekunden später tun, wenn er versucht, die Zugriffstoken zu aktualisieren, bemerkten wir sein Verhalten und denken, dass er nicht ein Mensch sein könnte. Wir lehnen und beenden Sie den Refresh-Prozess und ihn bitten, erneut Benutzername / Passwort einzugeben. Dies könnte möglicherweise seine Roboter automatische Strömung brechen. Wenigstens macht ihn unbequem.

Sie können das Aktualisierungs sehen Token perfekt gehandelt hat, wenn wir versuchen, unsere Arbeit, User Experience und das potenzielle Risiko eines gestohlenen Token zu balancieren. Ihre Uhr Hund auf der Serverseite kann mehr als IP-Wechsel prüfen, die Häufigkeit der api Anrufe, um zu bestimmen, ob der Benutzer ein guter Benutzer sein soll oder nicht.

Noch ein Wort ist, können Sie auch versuchen, den Schaden Kontrolle über gestohlene Token / Missbrauch des Dienstes zu begrenzen, indem auf jedem API-Aufruf des grundlegende IP-Wachhund oder anderen Maßnahmen. Das ist aber teuer, wie man über den Benutzer zu lesen und zu schreiben Datensatz hat und die Antwort des Servers verlangsamen.

Keine dieser Antworten erhalten auf den Kern Grund Refresh-Token vorhanden sind. Natürlich können Sie immer ein neue Zugangs-Token erhalten / Refresh-Token Paar von Ihren Client-Anmeldeinformationen an den Authentifizierungsserver gesendet werden -. Das ist, wie man sich in erster Linie bekommen

So ist der einzige Zweck der Aktualisierungs-Token die Verwendung der Client-Anmeldeinformationen zu begrenzen, ist über den Draht Dienst an die Auth gesendet werden. Je kürzer die ttl der Access-Token, desto häufiger die Client-Anmeldeinformationen müssen verwendet werden, um einen neuen Zugriffstoken zu erhalten, und deshalb haben die mehr Möglichkeiten Angreifer die Client-Anmeldeinformationen zu kompromittieren (obwohl dies Super sein kann ohnehin schwierig, wenn asymmetrische Verschlüsselung wird sie senden verwendet). Wenn Sie also eine Einweg- Refresh-Token haben, können Sie die ttl von machen Zugriffstoken beliebig klein, ohne die Client-Anmeldeinformationen zu beeinträchtigen.

einige Verwirrung klären Sie müssen die Rollen des verstehen Client Geheimnis und Benutzerkennwort , die sehr unterschiedlich sind.

Die Client ist eine App / Website / Programm / ..., die von einem Server gesichert, das will authenticate a Benutzer von Verwendung eines Drittanbieters Authentifizierungsdienst. Der Client ist ein Geheimnis (random) Zeichenfolge, die beide bekannt ist diesem Client und dem Authentifizierungs-Server. dieses Geheimnis mit Hilfe der Client kann sich identifizieren mit dem Authentifizierungsserver, Empfangen von Genehmigung auf Anfrage Zugriffstoken.

Um die anfänglichen Zugriffstoken und Aktualisierungs-Token, was erforderlich ist, ist:

  • Die Benutzer-ID
  • Das Benutzerkennwort
  • Die Client-ID
  • Das Client Geheimnis

Um einen aufgefrischt Zugang zu erhalten Token jedoch die Client verwendet die folgenden Informationen:

  • Die Client-ID
  • Das Client Geheimnis
  • Die Aktualisierungs-Token

Dies zeigt deutlich den Unterschied: beim Aktualisieren der Client-Autorisierung Auffrischzugriff Token erhält von seinem Kunden Geheimnis verwenden, und somit den Benutzer erneut authentifizieren kann mit der Aktualisierungs-Token statt der Benutzer-ID + Passwort. Dies verhindert effektiv den Benutzer aus, das auf sein / ihr Passwort erneut eingeben zu müssen.

Dies zeigt auch, dass eine Aktualisierungs-Token verlieren, ist kein Problem, da die Client-ID und geheim sind nicht bekannt. Es zeigt auch, dass die Client-ID und Client-Schlüssel geheim zu halten ist vital .

Diese Antwort ist von Justin Richer über den OAuth 2 Standardkörper E-Mail-Liste. Dies ist mit seiner Erlaubnis veröffentlicht.


Die Lebensdauer eines Refresh-Token an den (AS) Autorisierungsserver ist - sie verfallen können, widerrufen werden, usw. Der Unterschied zwischen einem Aktualisierungs-Token und ein Zugriffstoken das Publikum: die Token Refresh geht nur zurück in die Autorisierungs-Server, die Zugriffstoken zum (RS) Ressource-Server geht.

Auch nur einen Zugang bekommt Token nicht der Benutzer angemeldet bedeutet. In der Tat könnte der Benutzer nicht einmal mehr da sein, was tatsächlich der beabsichtigte Verwendung Fall der Aktualisierungs-Token ist. das Zugriffstoken Refreshing wird Ihnen auf dem Benutzer-Namen an eine API zugreifen, es wird Ihnen nicht sagen, ob die dort des Benutzers.

OpenID Connect nicht nur geben Sie Benutzerinformationen von einem Zugriffstoken, es gibt Ihnen auch eine ID-Token. Dies ist ein separates Stück von Daten, die auf dem Client gerichtet sind selbst, nicht die AS oder die RS. In OIDC, sollten Sie nur jemand betrachten tatsächlich „eingeloggt“ durch das Protokoll, wenn Sie eine neue ID-Token erhalten können. Erfrischende es nicht wahrscheinlich ist, genug zu sein.

Weitere Informationen finden Sie unter http://oauth.net/articles/authentication/

Die Kunden können in vielerlei Hinsicht gefährdet. Zum Beispiel kann ein Handy geklont werden. eine Zugriffs Mit Token verfallen bedeutet, dass der Client zur erneuten Authentifizierung auf den Autorisierungsserver gezwungen wird. Während der erneuten Authentifizierung kann der Autorisierungsserver andere Eigenschaften überprüfen (IOW führen adaptive Zugriffsverwaltung).

Refresh-Token ermöglichen eine Client nur erneute Authentifizierung, wo als Re-authorize Kräfte einen Dialog mit dem Benutzer, die viele angegeben haben, würden sie lieber nicht tun.

Token Refresh fit im Wesentlichen an der gleichen Stelle, wo die normalen Web-Seiten in regelmäßigen Abständen nach einer Stunde erneuter Authentifizierung der Benutzer wählen könnten oder so (z Banking-Seite). Es ist nicht sehr gegenwärtig verwendet, da die meisten Social-Web-Sites nicht erneut authentifizieren Web-Nutzer, also warum sollten sie erneut authentifizieren einen Client?

Zum weiteren Vereinfachung BT Antwort: Verwenden Sie Refresh-Token, wenn Sie in der Regel nicht über die Benutzer wollen wieder in Anmeldeinformationen eingeben müssen, will aber trotzdem die Macht der Lage sein, die Rechte zu widerrufen (durch die Aktualisierungs-Token widerrufen)

Sie können keine Zugriffstoken widerrufen, nur eine Aktualisierungs-Token.

  

Warum nicht nur die access_token machen so lange wie der refresh_token   und kein refresh_token haben?

Neben große Antworten andere Menschen dort zur Verfügung gestellt haben, ist ein weiterer Grund, warum Refresh-Token verwenden würde und die mit den Ansprüchen zu tun.

Jeder Token enthält Ansprüche, die etwas von dem Benutzer Namen enthalten können, ihre Rollen oder die Provider, die den Anspruch geschaffen. Als Zeichen diese Forderungen aktualisiert werden aufgefrischt wird.

Wenn wir die Zeichen öfter aktualisieren wir natürlich mehr Belastung für unsere Identität Dienste setzen aber wir genauer und up-to-date Ansprüche bekommen.

Angenommen, Sie die access_token letzten sehr lange machen, und nicht refresh_token hat, so an einem Tag, Hacker diese access_token bekommen und er kann alle geschützten Ressourcen zugreifen!

Aber wenn Sie refresh_token haben, die Live-Zeit der access_token kurz ist, so dass der Hacker hart ist Ihre access_token zu hacken, weil es ungültig nach kurzer Zeit sein wird. Access_token kann nur abgerufen werden, indem nicht nur refresh_token mit, sondern auch durch client_id und client_secret, der Hacker nicht hat.

Während Aktualisierungs-Token wird durch den Autorisierungsserver beibehalten. Zugriffstoken sind in sich abgeschlossen, so Ressourcenserver es überprüfen kann, ohne es zu speichern, die spart den Aufwand für die Wiedergewinnung bei der Validierung. Ein weiterer Punkt in der Diskussion fehlt, ist von rfc6749 # page-55

  

"Zum Beispiel könnte der Autorisierungsserver verwendet Aktualisierungs-Token   Rotation in dem eine neue Aktualisierungs-Token bei jedem Zugriff erteilt wird   Token refresh Antwort.Verfahren vorherige Aktualisierungs-Token ungültig gemacht, aber   durch den Autorisierungsserver beibehalten. Wenn ein Aktualisierungs-Token sind   kompromittiert und anschließend sowohl von den Angreifern verwendet, und der   legitime Client, einer von ihnen wird ein für ungültig erklärt Refresh präsentieren   Token, die den Autorisierungsserver der Verletzung informiert. "

ich glaube, der ganze Sinn der Verwendung von Aktualisierungs-Token ist, dass selbst wenn Angreifer irgendwie schaffen, Aktualisierungs-Token, Client-ID und geheime Verbindung zu erhalten. Mit nachfolgenden Aufrufen von Angreifern Token neuer Zugang zu können, falls verfolgt werden, wenn jede Anforderung zum Auffrischen Ergebnis in neuen Zugriffstoken und Aktualisierungs-Token.

Diese Antwort wurde mit Hilfe von zwei Senior Entwickler (John Brayton und David Jennes) zusammengestellt.

Der Hauptgrund, eine Aktualisierungs-Token zu verwenden, ist die Angriffsfläche zu reduzieren.

Nehmen wir an, es gibt keine Refresh-Taste und gehen wir durch dieses Beispiel:

Ein Gebäude hat 80 Türen. Alle Türen sind mit dem gleichen Schlüssel geöffnet. Der Schlüssel ändert sich alle 30 Minuten.

Wenn ich den Hacker bin und Ihre Schlüssel bekommt, dann am Ende der 30 Minuten, ich werde das auf den keymaker Kurier und einen neuen Schlüssel bekommen. Ich werde in der Lage sein, kontinuierlich alle Türen zu öffnen, unabhängig von der Schlüsseländerung.

Frage: Während der 30 Minuten, wie viele Hacking Möglichkeiten habe ich gegen die Schlüssel? Ich hatte 80 Hacking Möglichkeiten, jedes Mal, wenn Sie den Schlüssel verwendet (man dächte an das als eine Netzwerk-Anforderung und das Leiten den Zugriffstoken, dich zu identifizieren). Also das ist 80X Angriffsfläche.

Nun lasst uns gehen durch das gleiche Beispiel, aber dieses Mal nehmen wir an, es gibt eine Refresh-Taste.

Ein Gebäude hat 80 Türen. Alle Türen sind mit dem gleichen Schlüssel geöffnet. Der Schlüssel ändert sich alle 30 Minuten. Wenn ich den Hacker und erhalten Sie Ihre Schlüssel bin, kann ich es für 30 Minuten benutzen, aber am Ende der 30 Minuten, um es an den keymaker Senden hat keinen Wert. Wenn ich das tut, dann würde der keymaker nur sagen, dieser Schlüssel abgelaufen ist. Um der Lage sein, meine Hack verlängern würde ich muss den Kurier an die keymaker hacken. Der Kurier hat einen eindeutigen Schlüssel (denken Sie an dieses als Aktualisierungs-Token).

Frage: Während der 30 Minuten, wie viele Hacking Möglichkeiten habe ich gegen den Kurier? 80? Nein, ich hatte nur 1 Hacking Gelegenheit. Während der Zeit kommuniziert der Kurier mit dem keymaker. Also das ist 1X Angriffsfläche. Ich habe 80 Hacking-Möglichkeiten gegen die Schlüssel haben, aber sie sind nicht gut nach 30 Minuten.


Ein Server würde einen Zugriff verifizieren Token basierend auf Anmeldeinformationen und die Unterzeichnung von (in der Regel) ein JWT.

Ein Zugriffstoken undicht ist schlecht, aber wenn es abläuft ist es nicht mehr sinnvoll für einen Angreifer. Ein Aktualisierungs-Token undicht ist viel schlimmer, aber vermutlich ist es weniger wahrscheinlich. (Ich glaube, es gibt Raum zur Frage, ob die Wahrscheinlichkeit eines Aktualisierungs-Token undichten viel niedriger ist als die eines Zugriffstoken undicht, aber das ist die Idee.)

Punkt ist, dass die Zugriffstoken zu jeder Anfrage hinzugefügt werden, die Sie machen, während eine Aktualisierungs-Token nur während des Refresh-Flow verwendet werden So weniger Chancen eines MITM sehen das Token

Frequenz hilft einem Angreifer. Heartbleed -ähnlichen potenzielle Sicherheitslücken in SSL, potenzielle Sicherheitslücken in dem Client und mögliche Sicherheitslücken in dem Server alle machen undichte möglich.

Darüber hinaus, wenn der Autorisierungsserver von dem Anwendungsserver der Verarbeitung andere Client-Anfragen getrennt ist dann, dass Anwendungsserver nie Refresh-Token sehen. Es wird nur Zugriffstoken sehen, die nicht leben viel länger.

Die Kompartimentierung ist gut für die Sicherheit.


Was Aktualisierungs-Token ist nicht etwa?

Die Fähigkeit zur Aktualisierung / revoke Zugriffsebene durch Refresh-Token ist ein Nebenprodukt bei der Wahl Refresh-Token zu verwenden, andernfalls wird eine Standalone-Access-Token widerrufen werden könnten oder seine Zugriffsebene geändert hat, wenn es abläuft und Benutzer bekommt eine neues Token“

Lassen Sie sich betrachten ein System, in dem jeder Benutzer einer oder mehr Rollen verknüpft ist und jede Rolle an einem oder mehreren Zugriffsrechte verbunden ist. Diese Informationen können für eine bessere API Leistung zwischengespeichert werden. Aber dann kann es Änderungen in den Benutzer- und Rollenkonfigurationen (zum Beispiel für neuen Zugang gewährt werden kann oder Strom Zugang kann widerrufen werden) und diese sollten im Cache berücksichtigt werden.

Wir können den Zugriff verwenden und aktualisieren Token für einen solchen Zweck. die Ressource-Server überprüft die Cache für die Zugriffsrechte Wenn ein API mit Zugriffstoken aufgerufen wird. Wenn es irgendwelche neuen Zugang gewährt ist, wird es nicht sofort übernommen. Sobald die Zugriffstoken gültig bis (in 30 Minuten sagen) und der Client die Aktualisierungs verwenden ein Token einen neuen Zugriffstoken zu erzeugen, kann der Cache mit den aktualisierten Benutzerzugriffsrecht Informationen aus dem DB aktualisiert werden.

Mit anderen Worten, wir können die teueren Operationen von jedem API-Aufruf Zugriffstoken zur Veranstaltung von Zugriffstoken Generation mit Aktualisierungs-Token bewegen.

  

Als erstes werden die Client authentisiert mit dem Autorisierungs-Server durch die Genehmigung erteilen zu geben.

     

Dann fordert der Client den Ressource-Server für die geschützte Ressource durch das Zugriffstoken zu geben.

     

Der Ressource-Server überprüft die Zugriffstoken und stellt die geschützte Ressource.

     

Der Client stellt die geschützte Ressource-Anforderung an den Ressourcen-Server durch das Zugriffstoken gewähren, in dem die Ressourcen-Server es bestätigt und dient der Anforderung, wenn gültig. Dieser Schritt hält, bis der Zugriff auf Wiederholung Token abgelaufen ist.

     

Wenn das Zugriffstoken abgelaufen ist, der Client authentisiert mit dem Autorisierungsserver und Anforderungen für einen neuen Zugriffstoken durch Aktualisierungs-Token bereitstellt. Wenn die Zugriffstoken ungültig ist, sendet der Ressource-Server die ungültige Token Fehlerantwort an den Client zurück.

     

Der Client authentifiziert mit dem Autorisierungsserver durch die Aktualisierungs-Token zu gewähren.

     

Der Autorisierungs-Server überprüft dann die Aktualisierungs-Token durch den Client und gibt einen neuen Zugriffstoken authentifizieren, wenn es gültig ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top