Was ist OIDC?
Erfahren Sie mehr über OpenID Connect (OIDC), ein Authentifizierungsprotokoll, das Benutzeridentitäten überprüft, wenn sie sich für den Zugriff auf digitale Ressourcen anmelden.
Definition von OpenID Connect (OIDC)
OpenID Connect (OIDC) ist ein Identitätsauthentifizierungsprotokoll, das eine Erweiterung von Open Authorization (OAuth) 2.0 ist. Hiermit wird der Prozess für die Authentifizierung und Autorisierung von Benutzern standardisiert, wenn sie sich für den Zugriff auf digitale Dienste anmelden. OIDC stellt Authentifizierung bereit. Dies bedeutet, dass überprüft wird, ob Benutzer diejenigen sind, die sie vorgeben zu sein. OAuth 2.0 autorisiert, auf welche Systeme diese Benutzer zugreifen dürfen. OAuth 2.0 wird in der Regel verwendet, um zwei nicht verknüpften Anwendungen den Austausch von Informationen zu ermöglichen, ohne benutzerbezogene Daten zu gefährden. Beispielsweise verwenden viele Benutzer ihre E-Mail- oder Social Media-Konten, um sich bei einer Drittanbieterwebsite anzumelden, anstatt einen neuen Benutzernamen und ein neues Kennwort zu erstellen. OIDC wird auch verwendet, um einmaliges Anmelden bereitzustellen. Organisationen können ein sicheres Identity and Access Management (IAM)-System wie Microsoft Entra ID (ehemals Azure Active Directory) als primären Authentifikator von Identitäten verwenden und dann mit OIDC diese Authentifizierung an andere Apps übergeben. Auf diese Weise müssen sich Benutzer nur einmal mit einem Benutzernamen und Kennwort anmelden, um auf mehrere Apps zugreifen zu können.
Hauptkomponenten von OIDC
Es gibt sechs Hauptkomponenten in OIDC:
- Authentifizierung ist der Vorgang, bei dem überprüft wird, ob der Benutzer der ist, der er vorgibt zu sein.
- Ein Client ist die Software, z. B. Website oder Anwendung, die Token anfordert, die zum Authentifizieren eines Benutzers oder Zugreifen auf eine Ressource verwendet werden.
- Vertrauende Seiten sind die Anwendungen, die OpenID-Anbieter zum Authentifizieren von Benutzern verwenden.
- Identitätstoken enthalten Identitätsdaten, u. a. das Ergebnis des Authentifizierungsprozesses, eine Benutzer-ID und Informationen darüber, wie und wann der Benutzer authentifiziert wird.
- OpenID-Anbieter sind die Anwendungen, für die ein Benutzer bereits über ein Konto verfügt. Ihre Rolle bei OIDC besteht darin, den Benutzer zu authentifizieren und diese Informationen an die vertrauende Seite zu übergeben.
- Benutzer sind Personen oder Dienste, die auf eine Anwendung zugreifen möchten, ohne ein neues Konto zu erstellen oder einen Benutzernamen und ein Kennwort anzugeben.
Wie funktioniert die OIDC-Authentifizierung?
Die OIDC-Authentifizierung ermöglicht es Benutzern, sich bei einer Anwendung anzumelden und Zugriff auf eine andere zu erhalten. Wenn ein Benutzer beispielsweise ein Konto auf einer Nachrichtenwebsite erstellen möchte, hat er möglicherweise die Option, dies über Facebook zu tun, anstatt ein neues Konto zu erstellen. Wenn er Facebook auswählt, verwende er die OIDC-Authentifizierung. Facebook wird als OpenID-Anbieter bezeichnet. Es verarbeitet den Authentifizierungsprozess und holt die Zustimmung des Benutzers ein, bestimmte Informationen, z. B. ein Benutzerprofil, für die Nachrichtenwebsite (die vertrauende Seite) bereitzustellen.
ID-Token
Der OpenID-Anbieter verwendet ID-Token, um Authentifizierungsergebnisse und alle relevanten Informationen an die vertrauende Seite zu übertragen. Beispiele für den Typ der gesendeten Daten sind eine ID, eine E-Mail-Adresse und ein Name.
Bereiche
Bereiche definieren, was der Benutzer mit dem Zugriff tun kann. OIDC bietet Standardbereiche, die z. B. definieren, für welche vertrauende Seite das Token generiert wurde, wann das Token generiert wurde, wann das Token abläuft und welche Verschlüsselungsstärke zum Authentifizieren des Benutzers verwendet wird.
Ein typischer OIDC-Authentifizierungsprozess umfasst die folgenden Schritte:
- Ein Benutzer ruft die Anwendung auf, auf die er zugreifen möchte (die vertrauende Seite).
- Der Benutzer gibt den Benutzernamen und das Kennwort ein.
- Die vertrauende Seite sendet eine Anforderung an den OpenID-Anbieter.
- Der OpenID-Anbieter überprüft die Anmeldeinformationen des Benutzers und erhält die Autorisierung.
- Der OpenID-Anbieter sendet ein Identitätstoken und häufig ein Zugriffstoken an die vertrauende Seite.
- Die vertrauende Seite sendet das Zugriffstoken an das Gerät des Benutzers.
- Der Benutzer erhält Zugriff basierend auf den Informationen, die im Zugriffstoken und von der vertrauenden Seite bereitgestellt werden.
Was sind OIDC-Flows?
OIDC-Flows definieren, wie Token angefordert und an die vertrauende Seite übermittelt werden. Einige Beispiele:
OIDC-Autorisierungsflows: Der OpenID-Anbieter sendet einen eindeutigen Code an die vertrauende Seite. Die vertrauende Seite sendet dann den eindeutigen Code im Austausch gegen das Token zurück an den OpenID-Anbieter. Diese Methode wird verwendet, damit der OpenID-Anbieter die vertrauende Seite vor dem Senden des Tokens überprüfen kann. Der Browser kann das Token bei dieser Methode nicht sehen, was dazu beiträgt, es zu schützen.
OIDC-Autorisierungsflows mit PKCE-Erweiterung: Dieser Flow ist identisch mit dem OIDC-Autorisierungsflow, mit der Ausnahme, dass er eine PKCE-Erweiterung (Public Key for Code Exchange) verwendet, um die Kommunikation als Hash zu senden. Dies verringert die Wahrscheinlichkeit, dass das Token abgefangen wird.
Clientanmeldeinformationen: Dieser Flow ermöglicht den Zugriff auf Web-APIs mithilfe der Identität der Anwendung selbst. Dies wird in der Regel für die Server-zu-Server-Kommunikation und automatisierte Skripts verwendet, die keine Benutzerinteraktion erfordern.
Gerätecode: Dieser Flow ermöglicht Benutzern die Anmeldung bei und den Zugriff auf webbasierte APIs auf Geräten mit Internetverbindung, die nicht über Browser oder eine schlechte Tastaturfunktion verfügen, z. B. ein Smart-TV.
Zusätzliche Flows, z. B. der implizite OIDC-Flow, der für browserbasierte Anwendungen entwickelt wurde, werden nicht empfohlen, da sie ein Sicherheitsrisiko darstellen.
OIDC im Vergleich zu OAuth 2.0
OIDC wurde auf OAuth 2.0 aufgebaut, um die Authentifizierung hinzuzufügen. Das OAuth 2.0-Protokoll wurde zuerst entwickelt, und dann wurde OIDC hinzugefügt, um seine Funktionen zu erweitern. Der Unterschied zwischen den beiden besteht darin, dass OAuth 2.0 die Autorisierung bereitstellt, während OIDC die Authentifizierung bereitstellt. OAuth 2.0 ermöglicht Benutzern den Zugriff auf eine vertrauende Seite unter Verwendung ihres Kontos mit einem OpenID-Anbieter. OIDC ermöglicht es dem OpenID-Anbieter, ein Benutzerprofil an die vertrauende Seite zu übergeben. Außerdem können Organisationen ihren Benutzern mit OIDC einmaliges Anmelden anbieten.
Vorteile der OIDC-Authentifizierung
Durch die Reduzierung der Anzahl von Konten, die Benutzer für den Zugriff auf Apps benötigen, bietet OIDC mehrere Vorteile für Einzelpersonen und Organisationen:
-
Geringeres Risiko für gestohlene Kennwörter
Wenn Benutzer mehrere Kennwörter verwenden müssen, um auf die Apps zuzugreifen, die sie für ihre Arbeit und privat benötigen, wählen sie häufig einfach zu merkende Kennwörter aus, z. B. Password1234!, und verwenden dasselbe Kennwort für mehrere Konten. Dies erhöht das Risiko, dass ein Angreifer ein Kennwort erraten wird. Und sobald dieser das Kennwort für ein Konto kennt, kann er möglicherweise auch auf andere Konten zugreifen. Durch die Reduzierung der Anzahl von Kennwörtern, die sich ein Benutzer merken muss, erhöht sich die Wahrscheinlichkeit, dass er ein stärkeres, sichereres Kennwort verwendet.
-
Erweiterte Sicherheitskontrollen
Durch die Zentralisierung der Authentifizierung in einer App können Organisationen auch den Zugriff über mehrere Apps hinweg mit starken Zugriffssteuerungen schützen. OIDC unterstütz die Zwei-Faktor- und Multi-Faktor-Authentifizierung, bei der Benutzer ihre Identität mit mindestens zwei der folgenden Elemente bestätigen müssen:
Etwas, was die Person weiß, in der Regel ein Kennwort
Etwas, was die Person besitzt, wie ein vertrauenswürdiges, schwer nachzuahmendes Gerät oder Token
Etwas, was die Person auszeichnet, wie ein Fingerabdruck oder Gesichtsscan
Die Multi-Faktor-Authentifizierung ist eine bewährte Methode zur Reduzierung von Kontokompromittierungen. Organisationen können OIDC auch verwenden, um andere Sicherheitsmaßnahmen wie Privileged Access Management, Kennwortschutz, Anmeldesicherheit oder Identitätsschutz über mehrere Apps hinweg anzuwenden.
-
Vereinfachte Benutzererfahrung
Das Anmelden bei mehreren Konten im Laufe des Tages kann zeitaufwändig und frustrierend sein. Wenn ein Kennwort verloren geht oder vergessen wird, kann das Zurücksetzen die Produktivität weiter beeinträchtigen. Unternehmen, die OIDC verwenden, um ihren Mitarbeitern einmaliges Anmelden bereitzustellen, tragen dazu bei, dass diese mehr Zeit mit produktiver Arbeit verbringen, anstatt zu versuchen, Zugriff auf Apps zu erhalten. Organisationen machen es auch wahrscheinlicher, dass sich Kunden für ihre Dienste registrieren und diese nutzen, wenn sie ihnen erlauben, sich mit ihrem Microsoft-, Facebook- oder Google-Konto anzumelden.
-
Standardisierte Authentifizierung
OIDC wurde von der OpenID Foundation entwickelt, zu der bekannte Marken wie Microsoft und Google gehören. Es wurde für die Interoperabilität konzipiert und unterstützt viele Plattformen und Bibliotheken, darunter iOS, Android, Microsoft Windows und die wichtigsten Cloud- und Identitätsanbieter.
-
Optimierte Identitätsverwaltung
Organisationen, die OIDC zum Bereitstellen des einmaligen Anmeldens für ihre Mitarbeiter und Partner verwenden, können die Anzahl der Identitätsverwaltungslösungen reduzieren, die sie verwalten müssen. Dadurch ist es einfacher, Änderungen an Berechtigungen nachzuverfolgen, und Administratoren können eine Schnittstelle verwenden, um Zugriffsrichtlinien und Regeln auf mehrere Apps anzuwenden. Unternehmen, die OIDC verwenden, um Benutzern die Anmeldung bei ihren Apps mithilfe eines OpenID-Anbieters zu ermöglichen, verringern die Anzahl der Identitäten, die sie überhaupt verwalten müssen.
-
Beispiele und Anwendungsfälle für OIDC
Viele Organisationen verwenden OIDC, um eine sichere Authentifizierung über Web- und mobile Apps hinweg zu ermöglichen. Hier finden Sie einige Beispiele:
Wenn sich ein Benutzer für ein Spotify-Konto registriert, werden drei Optionen angeboten: Registrierung mit Facebook, mit Google und mit der eigenen E-Mail-Adresse. Benutzer, die sich über Facebook oder Google registrieren, verwenden OIDC, um ein Konto zu erstellen. Sie werden an den ausgewählten OpenID-Anbieter (Google oder Facebook) weitergeleitet. Nach der Anmeldung sendet der OpenID-Anbieter dann grundlegende Spotify-Profildetails. Der Benutzer muss kein neues Konto für Spotify erstellen, und seine Kennwörter bleiben geschützt.
LinkedIn bietet Benutzern ebenfalls die Möglichkeit, ein Konto mit ihrem Google-Konto zu erstellen, anstatt ein separates Konto für LinkedIn zu erstellen.
Ein Unternehmen möchte das einmalige Anmelden für Mitarbeiter bereitstellen, die für ihre Arbeit auf Microsoft Office 365, Salesforce, Box und Workday zugreifen müssen. Anstatt die Mitarbeiter für jede dieser Apps ein separates Konto erstellen zu lassen, verwendet das Unternehmen OIDC, um Zugriff auf alle vier Apps bereitzustellen. Die Mitarbeiter erstellen ein Konto, und jedes Mal, wenn sie sich anmelden, erhalten sie Zugriff auf alle Apps, die sie für ihre Arbeit benötigen.
Implementieren von OIDC für die sichere Authentifizierung
OIDC bietet ein Authentifizierungsprotokoll zur Vereinfachung der Anmeldung für Benutzer und zur Verbesserung der Sicherheit. Dies ist eine hervorragende Lösung für Unternehmen, die Kunden dazu anregen möchten, sich für ihre Dienste zu registrieren, ohne sich um die Verwaltung von Konten kümmern zu müssen. Darüber hinaus können Organisationen ihren Mitarbeitern und anderen Benutzern sicheres einmaliges Anmelden bei mehreren Apps anbieten. Organisationen können Identitäts- und Zugriffslösungen verwenden, die OIDC unterstützen, z. B. Microsoft Entra, um alle ihre Identitäten und Authentifizierungssicherheitsrichtlinien an einem zentralen Ort zu verwalten.
Weitere Informationen über Microsoft Security
-
Microsoft Entra ID
Mit einer cloudbasierten Identity & Access Management-Lösung (IAM) können Sie Mitarbeiter, Kunden und Partner mit ihren Apps, Geräten und Daten verbinden.
-
Microsoft Entra ID Governance
Stellen Sie automatisch sicher, dass die richtigen Personen den richtigen Zugriff auf die richtigen Anwendungen und Dienste erhalten.
-
Microsoft Entra Permissions Management
Erhalten Sie eine einheitliche Lösung zur Verwaltung von Identitätsberechtigungen in Ihrer Multicloud-Infrastruktur.
-
Microsoft Entra Verified ID
Bietet dezentralisierte Identitäten mit einem verwalteten Nachweisdienst, der auf offenen Standards basiert.
-
Microsoft Entra Workload ID
Verwalten und schützen Sie die Identitäten, die Anwendungen und Diensten zugewiesen sind.
Häufig gestellte Fragen
-
OIDC ist ein Identitätsauthentifizierungsprotokoll, das mit OAuth 2.0 zusammenarbeitet, um den Prozess für die Authentifizierung und Autorisierung von Benutzern zu standardisieren, wenn sie sich für den Zugriff auf digitale Dienste anmelden. OIDC stellt Authentifizierung bereit. Dies bedeutet, dass überprüft wird, ob Benutzer diejenigen sind, die sie vorgeben zu sein. OAuth 2.0 autorisiert, auf welche Systeme diese Benutzer zugreifen dürfen. OIDC und OAuth 2.0 werden in der Regel verwendet, um zwei nicht verknüpften Anwendungen den Austausch von Informationen zu ermöglichen, ohne benutzerbezogene Daten zu gefährden.
-
Sowohl OIDC als auch Security Assertion Markup Language (SAML) sind Identitätsauthentifizierungsprotokolle, mit denen sich Benutzer einmal sicher anmelden und dann auf mehrere Anwendungen zugreifen können. SAML ist ein älteres Protokoll, das für einmaliges Anmelden weit verbreitet ist. Es überträgt Daten im XML-Format. OIDC ist ein neueres Protokoll, das das JSON-Format zum Übertragen von Benutzerdaten verwendet. OIDC wird immer beliebter, da es einfacher zu implementieren ist als SAML und besser mit mobilen Anwendungen funktioniert.
-
OIDC steht für OpenID Connect-Protokoll. Dabei handelt es sich um ein Identitätsauthentifizierungsprotokoll, mit dem zwei nicht verbundene Anwendungen Benutzerprofilinformationen austauschen können, ohne die Sicherheit der Benutzeranmeldeinformationen zu gefährden.
-
OIDC wurde auf OAuth 2.0 aufgebaut, um die Authentifizierung hinzuzufügen. Das OAuth 2.0-Protokoll wurde zuerst entwickelt, und dann wurde OIDC hinzugefügt, um seine Funktionen zu erweitern. Der Unterschied zwischen den beiden besteht darin, dass OAuth 2.0 die Autorisierung bereitstellt, während OIDC die Authentifizierung bereitstellt. OAuth 2.0 ermöglicht Benutzern den Zugriff auf eine vertrauende Seite unter Verwendung ihres Kontos mit einem OpenID-Anbieter. OIDC ermöglicht es dem OpenID-Anbieter, ein Benutzerprofil an die vertrauende Seite zu übergeben. Außerdem können Organisationen ihren Benutzern mit dieser Funktion einmaliges Anmelden anbieten. Die OAuth 2.0- und OIDC-Flows sind ähnlich, verwenden jedoch etwas andere Terminologie.
Ein typischer OAuth 2.0-Flow umfasst die folgenden Schritte:
- Ein Benutzer ruft die Anwendung auf, auf die er zugreifen möchte (der Ressourcenserver).
- Der Ressourcenserver leitet den Benutzer an die Anwendung weiter, bei der er über ein Konto verfügt (den Client).
- Der Benutzer meldet sich mithilfe seiner Anmeldeinformationen für den Client an.
- Der Client überprüft den Zugriff des Benutzers.
- Der Client sendet ein Zugriffstoken an den Ressourcenserver.
- Der Ressourcenserver gewährt dem Benutzer Zugriff.
Ein typischer OIDC-Flow umfasst die folgenden Schritte:
- Ein Benutzer ruft die Anwendung auf, auf die er zugreifen möchte (die vertrauende Seite).
- Der Benutzer gibt den Benutzernamen und das Kennwort ein.
- Die vertrauende Seite sendet eine Anforderung an den OpenID-Anbieter.
- Der OpenID-Anbieter überprüft die Anmeldeinformationen des Benutzers und erhält die Autorisierung.
- Der OpenID-Anbieter sendet ein Identitätstoken und häufig ein Zugriffstoken an die vertrauende Seite.
- Die vertrauende Seite sendet das Zugriffstoken an das Gerät des Benutzers.
- Der Benutzer erhält Zugriff basierend auf den Informationen, die im Zugriffstoken und von der vertrauenden Seite bereitgestellt werden.
-
Der OpenID-Anbieter verwendet ID-Token, um Authentifizierungsergebnisse und alle relevanten Informationen an die Anwendung der vertrauenden Seite zu übertragen. Beispiele für den Typ der gesendeten Daten sind eine ID, eine E-Mail-Adresse und ein Name.
Microsoft 365 folgen