Was ist tokenbasierte Authentifizierung?
Was Sie erwartet
- 1. Wie die tokenbasierte Authentifizierung funktioniert
- 2. Was sind JSON Web Tokens (JWT) und wie funktionieren sie?
- 3. Die verschiedenen Arten der tokenbasierten Authentifizierung
- 4. Die Vorteile der tokenbasierten Authentifizierung
- 5. FAQ
- 6. Verwalten Sie die tokenbasierte Authentifizierung mit Catos SASE-Lösung
Während Passwörter die häufigste Form der Authentifizierung sind, sind sie nicht die einzige Option und nicht immer die beste Wahl. Zum Beispiel erfordern Passwörter, dass jemand ein einzigartiges, starkes Passwort für jedes Konto hat.
Die tokenbasierte Authentifizierung kodiert Authentifizierungsdaten innerhalb eines Tokens. Dieses Token kann an andere Anwendungen gesendet werden, die die darin gespeicherten Authentifizierungsdaten lesen und verwenden, um zu bestimmen, ob ein Benutzer berechtigt ist, auf ein System zuzugreifen.
Wie die tokenbasierte Authentifizierung funktioniert
Tokenbasierte Authentifizierungssysteme unterteilen den Identitäts- und Zugriffsmanagement (IAM) Prozess in zwei Schritte, die von verschiedenen Systemen durchgeführt werden. Die Authentifizierung erfolgt durch einen Authentifizierungsserver, während die Autorisierung von jeder einzelnen Anwendung oder jedem System verwaltet wird. Diese Systeme können sich innerhalb derselben Organisation befinden oder auf verschiedene Organisationen verteilt sein, wenn das Autorisierungssystem so konfiguriert ist, dass es die Authentifizierung der Benutzeridentität durch das andere System vertraut. Das Einloggen in Websites über ein Social-Media-Konto ist ein Beispiel für eine organisationsübergreifende Authentifizierung, die mit Tokens durchgeführt wird.
Im ersten Schritt beweist der Benutzer seine Identität gegenüber dem Authentifizierungsserver über ein Passwort oder andere Mittel. Dies ist das einzige System, das das Passwort des Benutzers erhält, was verschiedene Sicherheits- und Benutzerfreundlichkeitsvorteile bietet. Nach der Authentifizierung des Benutzers generiert der Authentifizierungsserver ein Token, das Informationen über seine Identität enthält. Dieses Token wird dann in einer Anfrage an eine Anwendung, auf die der Benutzer zugreifen möchte, einbezogen.
Nach Erhalt dieses Tokens und Validierung seines Inhalts kann die Anwendung sicher sein, dass der Benutzer der ist, der er vorgibt zu sein. Basierend auf diesen Informationen kann sie bestimmen, ob der Benutzer berechtigt ist, diese Anfrage zu stellen, und den Zugriff auf die Ressource gewähren oder verweigern.
Einige gängige Anwendungsfälle für Tokens sind:
- App-zu-App-Authentifizierung: Passwörter sind hauptsächlich dafür ausgelegt, dass Menschen sich bei einer Anwendung authentifizieren. Apps, die miteinander interagieren, verwenden häufig Tokens oder andere Mittel der Authentifizierung.
- Einmalige Anmeldung Token-basierte Authentifizierung ist das Rückgrat von SSO, das es Benutzern ermöglicht, sich einmal anzumelden, um auf viele Apps zuzugreifen. In diesem Fall wird das Token vom Authentifizierungsserver von jeder App, die SSO verwendet, vertraut.
- Token-Ablauf: Passwörter haben lange Lebensdauern, was sie anfälliger für Passwort-Erratungsangriffe macht und die Auswirkungen kompromittierter Anmeldeinformationen verlängert. Tokens haben eingebaute Ablaufdaten, die das Risiko im Falle eines Diebstahls begrenzen.
Was sind JSON Web Tokens (JWT) und wie funktionieren sie?
Die meisten tokenbasierten Authentifizierungsschemata werden mit JSON Web Tokens (JWTs) implementiert. Diese Tokens enthalten drei Hauptfelder:
- Header: Enthält Metadaten wie den Token-Typ und den verwendeten Verschlüsselungsalgorithmus.
- Payload: Enthält Authentifizierungsinformationen, die für die Autorisierung verwendet werden.
- Unterschrift Beweist kryptografisch die Authentizität der Payload-Daten.
Nachdem die Identität eines Benutzers überprüft wurde, generiert ein Authentifizierungsserver ein JWT, das die Benutzerdaten und ein Ablaufdatum des Tokens in der Payload enthält. Die Anwendung, die diese Daten erhält, wird die Signatur überprüfen, sicherstellen, dass das Token nicht abgelaufen ist, und dann die enthaltenen Informationen zur Autorisierung der Anfrage verwenden.
Beachten Sie, dass JWTs zwar einige der häufigsten verwendeten Tokens sind, sie jedoch nicht die einzigen sind. Zum Beispiel ist die Security Assertion Markup Language (SAML) ein weiterer gängiger Standard, der zur Implementierung von SSO für Unternehmensanwendungen verwendet wird.
Die verschiedenen Arten der tokenbasierten Authentifizierung
Ein JWT bietet ein festgelegtes Format für Authentifizierungsdaten, ist jedoch nur ein Datenformat. Anwendungen benötigen ein gemeinsames Protokoll, um zu verstehen, wie man diese Tokens erstellt, sendet und verwendet. Die beiden häufigsten tokenbasierten Algorithmen sind OAuth2.0 und OpenID Connect (OIDC).
OAuth 2.0
OAuth2.0 ist ein Autorisierungsprotokoll, das auf tokenbasierter Authentifizierung basiert, um die Autorisierung zu ermöglichen, ohne die Anmeldeinformationen des Benutzers zu teilen. Das Ziel ist es, dass ein Benutzer eine Anwendung („Verbraucher“) autorisiert, um eine Aktion auf einer anderen („Dienstanbieter“) auszuführen, ohne die Anmeldeinformationen des Benutzers für den „Dienstanbieter“ an den „Verbraucher“ weiterzugeben.
Um dies zu tun, wird der Verbraucher den Benutzer zum Dienstanbieter umleiten, wo er sich mit seinem normalen Passwort für diesen Dienst authentifiziert. Der Dienstanbieter überprüft dann, ob der Benutzer die Anfrage des Verbrauchers genehmigt. Falls ja, wird ein Zugriffstoken generiert, das der Verbraucher verwenden kann, um auf das Konto des Benutzers beim Dienstanbieter zuzugreifen. Dies autorisiert die Anfrage, ohne das Passwort des Benutzers für den Dienstanbieter offenzulegen.
OpenID Connect (OIDC)
OpenID Connect (OIDC) ist ein Authentifizierungs- und Autorisierungsprotokoll, das auf OAuth 2.0 aufbaut. Es fügt eine Identitätsschicht hinzu, um Benutzer zu authentifizieren, die Identitätsinformationen in JWTs speichert und die Authentifizierungsfunktionen bereitstellt, die OAuth 2.0 fehlen.
Der Hauptanwendungsfall für OIDC besteht darin, SSO zu implementieren, das den Zugriff auf mehrere Anwendungen mit einer einzigen Authentifizierungsanfrage ermöglicht. Das Protokoll umfasst eine Reihe von Standardansprüchen, um konsistente Austauschmöglichkeiten von Benutzeridentität und Profildaten zwischen Anwendungen zu ermöglichen.
Die Vorteile der tokenbasierten Authentifizierung
Die tokenbasierte Authentifizierung ermöglicht es, Authentifizierungsinformationen sicher zwischen Anwendungen zu kommunizieren, wodurch die Notwendigkeit entfällt, dass eine App ihre eigene Benutzerauthentifizierung durchführt. Dies bietet zahlreiche Vorteile für Benutzer und die Organisation.
Verbessertes Nutzererlebnis
Tokenbasierte Authentifizierungsschemata sind die Grundlage für SSO, das es einem Benutzer ermöglicht, sich einmal zu authentifizieren und auf viele Apps zuzugreifen. Die Beseitigung der Notwendigkeit, sich mehrere Passwörter zu merken und einzugeben, verbessert die betriebliche Effizienz und das Benutzererlebnis.
Erhöhte Sicherheit
Die tokenbasierte Authentifizierung erhöht die Sicherheit, indem sie die Notwendigkeit beseitigt, dass jede Anwendung Benutzerpasswörter akzeptiert und verwaltet. Häufig haben Benutzer schwache oder wiederverwendete Passwörter, und diese Passwörter laufen nie ab. Durch die Verwendung von Tokens muss eine Anwendung keine sensiblen Authentifizierungsinformationen speichern. Zusätzlich laufen Tokens automatisch ab, wodurch die Zeit reduziert wird, in der ein Angreifer kompromittierte Anmeldeinformationen missbrauchen kann.
Größere Skalierbarkeit und Effizienz
Tokens beseitigen die Notwendigkeit, dass Server Informationen über die bestehende Sitzung eines Benutzers speichern. Dies ermöglicht es einem Server, mehr Benutzer zu unterstützen, da sie weniger serverseitige Ressourcen verbrauchen.
Granulares Zugriffsmanagement
JWTs und andere Tokens können eine Vielzahl von Identitätsdaten über einen einfachen Benutzernamen hinaus tragen. Zusätzlich können Anwendungen die Autorisierung auf ein spezifisches Szenario zuschneiden, wodurch sie das Prinzip der geringsten Privilegien (POLP) und andere Prinzipien des Zero Trust besser durchsetzen können. Diese Kombination ermöglicht es tokenbasierten Authentifizierungsschemata, sehr granulare Zugriffsmanagementrichtlinien umzusetzen.
FAQ
Was ist der Unterschied zwischen OAuth 2.0 und tokenbasierter Authentifizierung?
OAuth 2.0 ist ein Beispiel für ein spezifisches Protokoll, das Zugriffstokens verwendet, um die Benutzerautorisierung umzusetzen. Tokenbasierte Authentifizierung ist allgemeiner und umfasst jedes Schema, das Tokens zur Benutzerautorisierung verwendet.
Wie unterscheidet sich die passwortbasierte Authentifizierung von der tokenbasierten Authentifizierung?
Eine Anwendung, die passwortbasierte Authentifizierung verwendet, speichert Benutzerdaten und fordert einen Benutzer auf, sich zu authentifizieren, indem er sein Passwort für diese Anwendung angibt. Bei der tokenbasierten Authentifizierung akzeptiert ein Authentifizierungsserver ein Passwort oder eine andere Anmeldeinformation und generiert ein Token, das die Identität des Benutzers bestätigt und an die Anwendung gesendet wird, auf die er zugreifen möchte.
Was sind die Nachteile der tokenbasierten Authentifizierung?
Tokenbasierte Authentifizierung bietet im Allgemeinen eine stärkere Sicherheit als passwortbasierte Authentifizierung, birgt jedoch Risiken. Ein gestohlenes Token kann beispielsweise verwendet werden, um sich als legitimer Benutzer zu authentifizieren, oder der private Schlüssel, der zum digitalen Signieren von Tokens verwendet wird, könnte gestohlen werden und zur Fälschung gefälschter Zugriffstokens verwendet werden.
Verwalten Sie die tokenbasierte Authentifizierung mit Catos SASE-Lösung
Tokenbasierte Authentifizierung entkoppelt Authentifizierung und Autorisierung, indem ein Authentifizierungsserver die Identität eines Benutzers überprüft und dann ein Token, das seine Identität bestätigt, an eine Anwendung sendet. Dieser Ansatz hat verschiedene Vorteile und bildet die Grundlage für SSO-Protokolle.
Tokenbasierte Authentifizierung ist auch zentral für viele moderne Identitäts- und Zugriffsmanagementsysteme (IAM), wie die Zero Trust Network Access (ZTNA) Funktionen der Cato SASE Cloud und der Cato Management Application (CMA).
Um mehr über die Implementierung von Zero Trust-Sicherheit für Ihre Organisation mit Cato zu erfahren, melden Sie sich für eine kostenlose Demo an.
This page was machine-translated. If you notice any inaccuracies or have feedback, please feel free to send it to us here.