Access Token: Definition, Architektur, Verwendung und mehr
Access Token: Definition, Architektur, Verwendung und mehr
Access Token: Definition, Architektur, Verwendung und mehr
Ein Access Token ist ein winziges Stück Code, das eine große Menge an Daten enthält. In diesem Token, das von einem Server an das Gerät eines Users übertragen wird, sind Informationen über den User, Berechtigungen, Gruppen und Verfallszeiträume eingebettet.
Viele Websites verwenden Access Token. Wenn Sie zum Beispiel schon einmal Credentials von einer Website (wie Facebook) verwendet haben, um Zugang zu einer anderen Website (wie Salesforce) zu erhalten, haben Sie ein Access Token verwendet.
Was enthält ein Access Token?
Ein typisches Access Token besteht aus drei dedizierten Teilen, die nahtlos ineinandergreifen, um die Zugriffsberechtigungen eines Users auf eine Ressource zu verifizieren.
Die meisten Access Tokens bestehen aus drei Kernelementen.
- Header: Hier sind Daten über die Art des Tokens und den zu seiner Erstellung verwendeten Algorithmus enthalten.
- Payload: Diese enthält Informationen über den User, einschließlich seiner Berechtigungen und deren Ablauffristen
- Signatur: Hier sind Verifizierungsdaten enthalten, damit der Empfänger die Authentizität des Tokens sicherstellen kann. Diese Signatur ist in der Regel mit einem Hash versehen, sodass sie schwer zu hacken und zu kopieren ist.
Die Payload, auch Claims Section genannt, ist für den erfolgreichen Einsatz des Tokens entscheidend. Möchten Sie auf eine bestimmte Ressource auf dem Server zugreifen, haben laut der Payload aber nicht die richtigen Berechtigungen, wird Ihnen der Zugriff verweigert.
Entwickler können zudem verschiedenste benutzerdefinierte Daten in der Payload platzieren. Ein Access Token von Google kann beispielsweise Zugriff auf mehrere Anwendungen (APIs) gewähren, und alle diese Credentials werden mit nur einem Access Token spezifiziert.
Access Token können von Website zu Website variieren. Facebook zum Beispiel verwendet vier Arten von Access Token. Andere Websites haben Dutzende mehr.
Ganz gleich, wie viele Daten sie enthalten, sind Access Token tendenziell eher kurz. Ein JSON Web Token (JWT) besteht zum Beispiel aus drei Base64-URL-Strings. Er ist kürzer als dieser Absatz.
Wie funktionieren Access Token?
User schreiben ihren Zugriffcode nicht selbst.Server kommunizieren mit Geräten, und all das passiert in Sekundenschnelle.
Dabei durchlaufen sie eine Reihe wiederkehrender Schritte.
- Login: Sie verwenden Username und Passwort, um Ihre Identität zu bestätigen.
- Verifizierung: Der Server authentifiziert die Daten und stellt einen Token bereit.
- Speicherung: Der Token wird zur Speicherung an Ihren Browser gesendet.
- Kommunikation: Jedes Mal, wenn Sie auf eine neue Ressource auf dem Server zugreifen, wird Ihr Token noch einmal verifiziert.
- Löschung: Ist Ihre Sitzung beendet, wird das Token gelöscht.
Sie können Access Token auch für Single Sign-on (SSO) verwenden. Ihre Credentials von einer Website ermöglichen Ihnen den Zugriff auf eine andere. Sie durchlaufen die folgenden Schritte:
- Autorisierung: Sie erklären sich damit einverstanden, Ihre Credentials von einer Website für eine andere zu verwenden.
- Konnektivität: Die erste Website stellt eine Verbindung zur zweiten her. Die zweite Website generiert ein Access Token.
- Speicherung: Das Access Token wird in Ihrem Browser gespeichert.
- Zugriff: Mit dem Access Token der zweiten Website erhalten Sie Zugriff auf die erste.
SSO Requests verfallen schnell. Wie wir an anderer Stelle erläutert haben, verfallen die meisten Requests nach etwa 10 Minuten, einige beenden den Prozess bereits schon nach 60 Sekunden.
Schützen Sie Ihre Access Token
Access Token sollten auf ihrem Weg durch das Internet geschützt werden. Unternehmen, die keine Verschlüsselung oder geschützte Kommunikationskanäle verwenden, könnten es Dritten ermöglichen, Token abzufangen, und so versehentlich hochsensible Daten offenlegen. Vorsichtig zu sein zahlt sich aus.
Die meisten Access Token verfallen ebenfalls. Mit diesem simplen Schritt können Websites sicherstellen, dass User noch online und aktiv sind – und so unter Umständen groß angelegte Cloning-Angriffe oder Löschungen verhindern. Die Verfallszeiträume können sich von Unternehmen zu Unternehmen unterscheiden.
Bei Okta verwenden wir robuste Systeme, um Data-at-Rest und Data-in-Transit zu schützen. Wir zeigen Ihnen gerne, welche Maßnahmen Sie zuverlässig vor Hackern schützen. Und mit unseren Tools können Sie Daten einfach und schnell verschlüsseln. Kontaktieren Sie uns, um mehr zu erfahren.
Referenzen
Using OAuth 2.0 to Access Google APIs. (Dezember 2020). Google Identity.
Access Tokens. Facebook for Developers.
What Is OAuth? How the Open Authorization Framework Works. (September 2019). CSO.