Definition

OpenID (OpenID Connect)

Was ist OpenID (OpenID Connect)?

OpenID Connect ist eine offene Spezifikation für Authentifizierung und Single Sign-On (SSO). Sie basiert auf dem OAuth 2.0-Protokoll und erweitert dieses um Authentifizierungs- und SSO-Funktionen.

OpenID Connect ist ein weit verbreitetes Authentifizierungsprotokoll. Es hilft dabei, den Prozess der Benutzerauthentifizierung zu standardisieren, wenn Benutzer versuchen, auf einen Browser oder eine mobile App zuzugreifen.

OpenID wurde erstmals 2005 eingeführt und ermöglicht es Websites und Authentifizierungsdiensten, Sicherheitsinformationen auf standardisierte Weise auszutauschen. Im Februar 2014 brachte die OpenID Foundation eine neue Version des Protokolls namens OpenID Connect auf den Markt. OpenID Connect baut auf dem OAuth- 2.0-Authentifizierungs-Framework auf, um das Identitätsmanagement, die Interoperabilität und die Unterstützung für viele Arten von Anwendungen zu verbessern.

Die Vorteile von OpenID Connect

OpenID Connect (OIDC) bietet eine zuverlässige und einfache Möglichkeit, die Identität eines Benutzers zu überprüfen, der versucht, auf einen digitalen Dienst zuzugreifen. Der Standard ermöglicht die nahtlose und sichere Integration des Identitätsmanagements in viele Arten von digitalen Diensten, einschließlich der folgenden:

  • Traditionelle Webanwendungen
  • Single-Page Apps (SPAs)
  • Native Anwendungen
  • Mobile Anwendungen

Ein weiterer Vorteil von OIDC besteht darin, dass es Dienstentwicklern und -eigentümern ermöglicht, Benutzerprofilinformationen auf interoperable und sichere Weise zu erhalten. Da das Protokoll eine Reihe von (Benutzer-)Profildatenkategorien definiert, müssen Anbieter keine Benutzerkennwörter speichern oder verwalten. Dadurch wird das Risiko von Datenschutzverletzungen durch den Diebstahl von Anmeldedaten minimiert.

OpenID Connect ermöglicht es Anwendern außerdem, sich einmal anzumelden, um auf mehrere, unterschiedliche Ressourcen im und außerhalb des Internets zuzugreifen. Es erlaubt eine bequeme und sichere einmalige Anmeldung, die das Benutzererlebnis verbessert und die Anzahl der abgebrochenen Website-/App-Besuche reduziert.

Die Spezifikation, die von zahlreichen Cloud-Anbietern wie Amazon, Google und Microsoft unterstützt wird, soll es Unternehmen erleichtern, ihre lokalen Identitäts- und Zugriffsverwaltungssysteme (IAM) durch Cloud-Angebote zu ersetzen.

Tatsächlich können Organisationen das IAM-System (Entra ID) von Microsoft verwenden, um Benutzeridentitäten zu authentifizieren, und dann OIDC verwenden, um die Authentifizierung an andere Apps weiterzugeben. Auf diese Weise können sie SSO aktivieren, sodass Benutzer auf mehrere Apps zugreifen können, indem sie sich nur einmal mit einem einzigen Satz von Anmeldedaten anmelden.

OIDC optimiert auch das Identitätsmanagement in Organisationen. Durch die Bereitstellung von OIDC-aktiviertem SSO müssen sie weniger Identitäten und weniger Identitätsmanagementlösungen verwalten. Sie können auch Änderungen an Berechtigungen nachverfolgen und Zugriffsrichtlinien auf mehrere Apps anwenden.

Wie funktioniert OpenID Connect?

OpenID Connect nutzt sechs Schlüsselkomponenten, um die Benutzerauthentifizierung zu ermöglichen:

  1. Anwender: Dies sind die Personen, die versuchen, auf eine Anwendung zuzugreifen, ohne neue Anmeldedaten zu erstellen (oder vorhandene Anmeldedaten bereitzustellen), und die authentifiziert werden müssen, bevor ihnen Zugriff gewährt werden kann.
  2. Authentifizierung: Der Prozess, bei dem bestätigt wird, dass der Benutzer wirklich derjenige ist, für den er sich ausgibt.
  3. Token: Die JavaScript Object Notation oder JSON-Web-Tokens (JWTs), die die Identitätsdaten eines Benutzers enthalten, wie beispielsweise Name, Geburtsdatum oder E-Mail-Adresse, werden zur Authentifizierung des Benutzers verwendet.
  4. Client: Die Anwendung oder Website, die die Token anfordert, die zur Authentifizierung eines Benutzers verwendet werden.
  5. Vertrauende Parteien (RP, Relying Parties): Die Anwendungen, die OIDC-Anbieter zur Authentifizierung von Benutzern verwenden.
  6. OIDC-Provider (auch Identitätsanbieter genannt): Die Anwendungen, für die ein Benutzer bereits über Anmeldedaten verfügt und die den Benutzer daher authentifizieren und die Informationen an die vertrauende Partei weitergeben können.

Darüber hinaus verwendet das Protokoll einen Autorisierungsserver zur Authentifizierung von Benutzern sowie Scopes, die festlegen, was ein Benutzer mit seinem Zugriff tun kann.

  • So funktioniert der Authentifizierungsprozess mit OIDC:
  • Der Anwender öffnet die Anwendung, auf die er zugreifen möchte.
  • Benutzer authentifizieren sich, in der Regel durch die Angabe ihres Benutzernamens und Passworts.
  • Die Anwendung leitet sie an einen Identitätsanbieter weiter.
  • Der Identitätsanbieter authentifiziert den Benutzer.
  • Nach der Authentifizierung sendet der Identitätsanbieter ein Identitäts-Token an die vertrauende Partein (RP)und leitet den Benutzer zurück zur RP.
  • Die vertrauende Partei sendet den Token an das Gerät des Benutzers.
  • Der Benutzer ist in der RP-Anwendung angemeldet.
  • Sobald der Vorgang abgeschlossen ist, erhält der Benutzer in der Anwendung eine Meldung, dass er angemeldet ist.

Anwendungsfälle für OpenID Connect

OpenID Connect ist ein für vielen Szenarien geeignetes Protokoll:

Benutzer können ihre Konten in mehreren Anwendungen nutzen, ohne für jede Anwendung neue Anmeldedaten erstellen zu müssen. Durch die einfache Integration von OIDC in einen Identitätsanbieter können sie bestehende Konten wiederverwenden und SSO nutzen.

Das Protokoll kann verwendet werden, um einen Hub von Identitätsanbietern zu erstellen. Dies bedeutet, dass ein Anbieter seine Anwendung mit einem einzigen Identitätsanbieter verbinden kann (der als Hub für andere Anbieter fungiert), sodass er nicht mehrere Anbieter separat unterstützen muss.

OpenID Connect kann als Proxy für andere Protokolle, einschließlich Security Assertion Markup-Language (SAML), fungieren. Dadurch können Geräte mit eingeschränkten Ressourcen nahtlos über OIDC in einen SAML-Identitätsanbieter integriert werden.

OpenID Connect vs. SAML vs. OAuth 2.0

SAML ist ein Standard, der es verschiedenen Sicherheitsdomänen ermöglicht, Authentifizierungs- und Autorisierungsdaten auszutauschen. Dadurch können Benutzer, die zu einer Domäne (Domäne A) gehören, die Dienste einer anderen Domäne (Domäne B) nutzen, ohne dass die Domänen A und B das Profil des Benutzers duplizieren müssen.

Wie OIDC stützt sich SAML auf digital signierte Token, die es Anwendungen von Drittanbietern ermöglichen, Benutzerinformationen zu bestätigen und sie im laufenden Betrieb zu authentifizieren. Im Gegensatz zu OIDC ist SAML jedoch stark auf das XML-Dateiformat (Extensible Markup Language) angewiesen, das für Anwendungen, die Benutzer nur über langsame Verbindungen oder weniger robuste Geräte authentifizieren müssen, zu aufwendig (und damit nicht sinnvoll) sein kann.

Der Hauptzweck von OIDC besteht darin, die Benutzerauthentifizierung zu ermöglichen und den Benutzern eine einzige Anmeldung für den Zugang zu mehreren Websites zu bieten. Es wurde entwickelt, um die Fähigkeiten von OAuth 2.0 zu verbessern, bei dem es hauptsächlich um den Zugang zu Ressourcen und deren gemeinsame Nutzung geht. Außerdem ist OAuth 2.0 ein Autorisierungsrahmen im Gegensatz zu OIDC, das ein Authentifizierungsrahmen ist.

OAuth 2.0 ermöglicht Client-Systemen (zum Beispiel Scheduler-Anwendungen) die Nutzung von Ressourcenservern, beispielsweise der Anwendungsprogrammierschnittstelle (API) einer Website, im Namen der Ressourceneigentümer (der Endanwender). OAuth 2.0 wurde für delegierte Autorisierungsszenarien entwickelt, wird aber zunehmend auch für die Benutzerauthentifizierung verwendet.

Wie OIDC verwendet auch OAuth 2.0 einen Autorisierungsserver, allerdings nicht zur Authentifizierung von Benutzern, sondern um den Eigentümern von Ressourcen die Entscheidung zu ermöglichen, ob sie dem Client erlauben wollen, etwas in ihrem Namen zu tun. OIDC verwendet auch den Begriff Access Token anstelle von Identitäts-Token. Der Zugriffs-Token ermöglicht es Clients (Anwendungen von Drittanbietern), im Namen von Benutzern (Ressourcenbesitzern) zu handeln. Es ist auch das Element, das von Ressourcenservern (APIs) verwendet wird, um dem Client zu erlauben, die Aktion im Namen des Ressourcenbesitzers durchzuführen.

Diese Definition wurde zuletzt im März 2025 aktualisiert

Erfahren Sie mehr über Identity and Access Management (IAM)