Grundlegendes zum SSO-Modell von Microsoft

Microsoft Entra ID ist eine zentrale Identitätsplattform. Sie stellt einmaliges Anmelden (Single Sign-On, SSO) für Apps bereit, die unterschiedliche Authentifizierungsprotokolle verwenden. In diesem Artikel wird erläutert, wie Microsoft Entra ID SSO auf Plattformebene implementiert und was dies für die App-Integration bedeutet.

Microsoft Entra ID als zentrale Identitätsplattform

Microsoft Entra ID ist ein zentraler Identitätsanbieter. Es authentifiziert Benutzer und gibt Identitätstoken für Apps aus. Sie bietet Benutzern eine Anmeldeumgebung und unterstützt verschiedene Protokolle, um Identitätsinformationen an Apps bereitzustellen.

Benutzer melden sich einmal über Microsoft Entra ID an. Die Plattform kann dann ihre Identität für viele Apps bestätigen, ohne sie erneut aufzufordern, sich anzumelden. Authentifizierungsrichtlinien, Sicherheitskontrollen und Benutzeranmeldeinformationen befinden sich an einem zentralen Ort. Jede App empfängt Identitätsinformationen im eigenen Protokollformat.

Die Schlüsselidee: Die Authentifizierung ist über die gesamte Plattform hinweg vereinheitlicht. Protokolle wie Security Assertion Markup Language (SAML) und OpenID Connect (OIDC) unterscheiden sich nur darin, wie sie diese Identitätsinformationen nach der Authentifizierung verpacken und bereitstellen.

So behandelt Microsoft Entra die Authentifizierung für SAML und OIDC

Microsoft Entra ID verwendet dieselben Authentifizierungsphasen, unabhängig davon, ob eine App SAML oder OpenID Connect verwendet.

Gemeinsame Authentifizierungsschritte

Benutzerauthentifizierung: Microsoft Entra ID überprüft Benutzeranmeldeinformationen. Benutzer können sich mit einem Kennwort, einer mehrstufigen Authentifizierung oder einer kennwortlosen Methode anmelden. Dieser Schritt ist für jede App identisch, unabhängig davon, welches Protokoll sie verwendet.

Richtlinienerzwingung: Die Plattform überprüft Richtlinien für bedingten Zugriff, Gerätekompatibilität und andere Sicherheitskontrollen. Diese Prüfungen werden nach der Anmeldung ausgeführt, jedoch bevor Microsoft Entra ID Token oder Assertions ausgibt.

Identitätsbestimmung: Microsoft Entra ID entscheidet, welche Identitätsinformationen einbezogen werden sollen. Dies basiert auf der Konfiguration der App und auf den Profil- und Gruppenmitgliedschaften des Benutzers. Weitere Details finden Sie unter Authentifizieren von Anwendungen und Benutzern.

Protokollabweichung

Nach Authentifizierungs- und Richtlinienüberprüfungen unterscheiden sich die beiden Protokolle darin, wie sie Identitätsinformationen verpacken und bereitstellen.

SAML-Anwendungen empfangen SAML-Assertionen im XML-Format. Jede Assertion enthält Identitätsinformationen und Attribute, ist digital signiert und wird in SAML-Protokollnachrichten übertragen.

OpenID Connect-Anwendungen empfangen JSON-Webtoken (JWTs), die Identitätsansprüche enthalten. Diese Token folgen dem OAuth 2.0-Autorisierungscodefluss und den OpenID Connect-Spezifikationen für Struktur und Übermittlung.

Die Authentifizierungs- und Autorisierungsentscheidungen sind identisch. Nur das Format und die Übermittlung unterscheiden sich je nach Protokoll der App.

Gemeinsame Durchsetzungs- und Richtlinienebene

Microsoft Entra ID wendet dieselben Sicherheitsrichtlinien und Zugriffssteuerungen auf jede App an, unabhängig davon, welches Protokoll sie verwendet. Diese Durchsetzung erfolgt, bevor Microsoft Entra ID Token oder Assertionen ausgibt.

Richtlinien für bedingten Zugriff wiegen Faktoren wie Benutzerstandort, Gerätecompliance, Anmelderisiko und App-Vertraulichkeit ab. Eine Richtlinie kann eine zusätzliche Authentifizierung erfordern, den Zugriff blockieren oder den Zugriff unter festgelegten Bedingungen zulassen. Die Plattform erzwingt diese Richtlinien für SAML- und OpenID Connect-Apps gleichermaßen.

Die mehrstufige Authentifizierung (Multifactor Authentication, MFA) gilt während der Anmeldung, bevor ein protokollspezifisches Token ausgegeben wird. Unabhängig davon, ob eine App SAML oder OIDC verwendet, sehen Benutzer die gleichen MFA-Eingabeaufforderungen basierend auf ihren zugewiesenen Richtlinien.

Gerätebasierte Richtlinien überprüfen die Gerätekompatibilität, den Registrierungsstatus und gerätebasierte Regeln für bedingten Zugriff. Diese Prüfungen werden bei der Anmeldung ausgeführt und gelten für jedes App-Protokoll auf die gleiche Weise.

Diese Ebene für gemeinsame Richtlinien hält Sicherheitskontrollen und Zugriffsentscheidungen für alle Ihre Apps konsistent, unabhängig von SAML und OpenID Connect, die Sie verwenden.

Konfigurationsmodell: Anwendungen, Mandanten und Protokolleinstellungen

Microsoft Entra ID verwendet ein strukturiertes Konfigurationsmodell zum Verwalten von App-Integrationen und protokollspezifischen Einstellungen. Ein Mandant ist die dedizierte Microsoft Entra ID Instanz einer Organisation.

Anwendungsobjekte sind die globale Definition einer App. Ein Anwendungsobjekt enthält die Authentifizierungsanforderungen der App, unterstützte Protokolle und grundlegende Konfiguration. Sie definiert, was die App tun kann.

Dienstprinzipale repräsentieren die App innerhalb eines bestimmten Mandanten. Wenn jemand die App einem Mandanten hinzufügt, erstellt Microsoft Entra ID einen Dienstprinzipal. Das Dienstprinzipal enthält mandantenspezifische Konfigurationen, Zuweisungen von Benutzern und Protokolleinstellungen. Da das App-Objekt und das Dienstprinzipal getrennt sind, kann Ihre App in verschiedenen Mandanten unterschiedliche Konfigurationen verwenden.

Die Protokollkonfiguration findet auf der Ebene des Dienstprinzipals statt, so dass die Einstellungen für SAML und OpenID Connect mandantenspezifisch sind. Zu diesen Einstellungen gehören folgende:

  • SAML-Assertionsattribute und NameID-Formate
  • OpenID Connect-Bereiche und Anspruchszuordnung
  • Umleitungs-URIs und protokollspezifische Endpunkte
  • Zertifikat- und Schlüsselkonfiguration für die Tokensignierung

Mit diesem Konfigurationsmodell können ISV-Apps mehrere Mandanten unterstützen, die jeweils über eigene Protokolleinstellungen und -konfigurationen verfügen.

Unterstützte Endpunkte und Protokolle

Microsoft Entra ID stellt mandantenspezifische Endpunkte bereit. Apps verwenden diese Endpunkte für Authentifizierungs- und Tokenanforderungen.

OpenID Connect-Endpunkte folgen standardmäßigen OAuth 2.0- und OpenID Connect-Mustern. Ihre mandantenspezifischen URLs enthalten die Mandantenkennung. Diese Endpunkte behandeln Autorisierungs- und Tokenanforderungen. Außerdem veröffentlichen sie Ermittlungsmetadaten, sodass Apps sich automatisch konfigurieren können.

DIE SAML-Konfiguration verwendet die metadatenbasierte Ermittlung. Microsoft Entra ID veröffentlicht mandantenspezifische SAML-Metadaten, die die verfügbaren Endpunkte, Zertifikatinformationen und Protokollfunktionen auflisten. Apps lesen diese Metadaten, um ihre SAML-Einstellungen automatisch zu konfigurieren.

Beide Protokolle verwenden mandantenbezogene Endpunkte, sodass jeder Mandant über einen eigenen Satz von URLs für die Authentifizierung verfügt. Diese Isolation behält jede Anforderung im richtigen Organisationskontext bei und stellt sicher, dass Token die richtigen mandantenspezifischen Informationen enthalten.

Unterstützte SSO-Muster und Flow-Initiierung

Microsoft Entra ID unterstützt vom Dienstanbieter (SP) initiierte Flüsse sowohl für SAML- als auch für OpenID Connect-Apps. In einem SP-initiierten Ablauf beginnt der Benutzer in der App. Die App leitet sie dann an Microsoft Entra ID um, um sich anzumelden.

Für SAML-Apps unterstützt Microsoft Entra ID auch vom Identitätsanbieter (IdP) initiierte Anmeldeabläufe. Der Benutzer geht von Microsoft Entra ID aus, z. B. vom Meine Apps-Portal, und Microsoft Entra ID leitet ihn mit einer Assertion, die die bereits erfolgte Authentifizierung bestätigt, an die App weiter.

OpenID Connect folgt OAuth 2.0-Autorisierungsflüssen. Web-Apps verwenden in der Regel den Autorisierungscodefluss, und mobile und Einzelseiten-Apps verwenden den Fluss, der zu ihnen passt.

Nächste Schritte

Planen Sie weiter, wie Sie SSO in Microsoft Entra ID integrieren: