Es gibt viele Möglichkeiten, unerlaubt auf Daten zuzugreifen, und mindestens genauso viele, Daten zu schützen. Von Multi-Faktor-Authentifizierung über Single Sign-On bis hin zu lokalen Firewalls – die Anzahl der Optionen ist überwältigend. Für Entwickler und IT-Experten stellt sich die Frage nach der Sicherung von Daten und Identitäten schon viel früher, nämlich bei der Wahl des Standards für den Schutz der föderierten Identität.
Die Entscheidung fällt nicht immer leicht. Oft ist es schwierig, die Unterschiede zwischen OAuth 2.0, OpenID Connect und Security Assertion Markup Language (SAML) genau auszumachen, denn alle drei dienen der Strukturierung des Föderationsprozesses. Dieser Artikel erläutert, worum es bei den Standards geht, worin sie sich unterscheiden und für welche Zwecke sie im Unternehmen idealerweise eingesetzt werden.
Umfassendere Informationen zu SAML und OAuth 2.0 haben wir für Sie in einem separaten Artikel zusammengestellt.
Die Unterschiede zwischen den Standards
Der wesentliche Unterschied zwischen den drei Standards besteht darin, dass es sich bei OAuth 2.0 um ein Framework handelt, das die Autorisierung für den Zugriff auf geschützte Ressourcen (z. B. eine Anwendung oder bestimmte Dateien) steuert, während OpenID Connect und SAML Industriestandards für die föderierte Authentifizierung sind. OAuth 2.0 wird folglich in völlig anderen Situationen eingesetzt als die beiden anderen Standards (siehe Beispiele unten), kann jedoch parallel mit OpenID Connect oder SAML verwendet werden.
Wenn Unternehmen OpenID Connect oder SAML unabhängig voneinander verwenden, können sie die Authentifizierung von Benutzern durchführen und Single Sign-On (SSO) bereitstellen. Obwohl es bei beiden Standards um Anmeldungen geht, besitzen sie unterschiedliche Stärken und Schwächen.
- OpenID Connect basiert auf dem Protokoll OAuth 2.0 und verwendet ein zusätzliches JSON Web Token (JWT), das so genannte ID-Token. Mit diesem werden optionale Elemente wie Bereiche und Endgeräte-Erkennung standardisiert. Der Standard dient vornehmlich der Benutzerauthentifizierung und wird weitläufig für die Anmeldung von Benutzern auf Verbraucherwebsites und mobilen Apps verwendet.
- SAML ist von OAuth unabhängig und handhabt die Authentifizierung durch den Austausch von Meldungen im XML-SAML-Format und nicht mithilfe von JWT. SAML kommt vorwiegend in Unternehmen zum Einsatz, um Benutzern mit nur einem Anmeldevorgang die Anmeldung bei mehreren Anwendungen zu ermöglichen.
Anwendungsbereiche von OAuth 2.0, OpenID Connect und SAML
Es geht nicht darum, sich für eine bestimmte Struktur zu entscheiden, sondern darum herauszufinden, in welchen Situationen sich welche anbietet. Bei einer starken Identitätslösung werden alle drei Strukturen zur Anwendung kommen, um unterschiedliche Zwecke zu erfüllen, je nachdem, welche Abläufe das Unternehmen schützen möchte. Typische Anwendungsbereiche:
OAuth 2.0: Wenn Sie sich schon einmal bei einer neuen Anwendung angemeldet und zugestimmt haben, dass diese automatisch neue Kontakte über Facebook oder Ihre Telefonkontakte synchronisiert, dann haben Sie vermutlich OAuth 2.0 verwendet. Dieser Standard bietet sicheren delegierten Zugriff. Dies bedeutet, dass eine Anwendung im Namen des Benutzers Aktionen durchführen oder über einen Server auf Ressourcen zugreifen kann, ohne dass der Benutzer dafür seine Anmeldedaten angeben muss. Dazu erlaubt die Anwendung dem Identitätsanbieter, mit Genehmigung des Benutzers, die Ausstellung von Token für Drittanwendungen.
OpenID Connect: Wenn Sie sich schon einmal über Google bei einer Anwendung wie YouTube oder über Facebook bei einem Online-Warenkorb angemeldet haben, dann kennen Sie diese Authentifizierungsoption bereits. OpenID Connect ist ein offener Standard für die Benutzerauthentifizierung. Identitätsanbieter verwenden ihn, um Benutzern nach der Anmeldung ohne erneute Anmeldung den Zugriff andere Websites oder Apps zu ermöglichen.
SAML: Mit der SAML-Authentifizierung sind Sie vermutlich an Ihrem Arbeitsplatz bereits in Berührung gekommen. SAML ermöglicht es Ihnen, sich einmalig bei Ihrem Unternehmensintranet oder Identitätsanbieter anzumelden und anschließend ohne erneute Eingabe Ihrer Anmeldedaten auf zahlreiche weitere Dienste zuzugreifen, darunter Salesforce, Box oder Workday. SAML ist ein XML-basierter Standard für den Austausch von Authentifizierungs- und Autorisierungsdaten zwischen Identitäts- und Dienstanbietern. Dabei werden die Identität des Benutzers und seine Berechtigungen überprüft und anschließend der Zugriff auf Dienste gewährt oder verweigert.
Unternehmen setzen auf Web-Frameworks und Protokolle wie OAuth 2.0, OpenID und SAML, um föderierte Identität zu strukturieren und sicher zu machen. Das Wissen um die konkreten Zwecke der verschiedenen Standards ist ein wichtiger Meilenstein, um Ihre Unternehmensdaten von Grund auf zu schützen.