SAML-Authentifizierung mit Microsoft Entra ID

Security Assertion Markup Language (SAML) ist ein offener Standard für den Austausch von Authentifizierungs- und Autorisierungsdaten zwischen einem Identitätsanbieter (IdP) und einem Dienstanbieter. SAML ist eine XML-basierte Markupsprache für Sicherheitsassertionen – Anweisungen, mit denen Dienstanbieter Entscheidungen zur Zugriffssteuerung treffen.

Die SAML-Spezifikation definiert drei Rollen:

  • Prinzipal, in der Regel ein Benutzer
  • Identitätsanbieter (Identity Provider, IdP)
  • Dienstanbieter (Service Provider, SP)

Wenn folgende Bedingungen vorliegen

Es müssen SSO-Funktionen (Single Sign-On, einmaliges Anmelden) für eine SAML-Anwendung des Unternehmens bereitgestellt werden.

Einer der wichtigsten Anwendungsfälle für SAML ist das einmalige Anmelden, insbesondere da SAML dieses Feature über Sicherheitsdomänen hinweg nutzbar macht. Allerdings gibt es auch noch andere Anwendungsfälle (so genannte Profile).

architectural diagram for SAML

Komponenten des Systems

  • Benutzer: Der Benutzer fordert einen Dienst von der Anwendung an.

  • Webbrowser: Die Komponente, mit der der Benutzer interagiert.

  • Web-App: Unternehmensanwendung, die SAML unterstützt und Microsoft Entra ID als Identitätsanbieter verwendet.

  • Token: Eine SAML-Assertion (auch als SAML-Token bezeichnet), die eine Reihe von Aussagen des Identitätsanbieters über die Eigenschaften und Berechtigungen des Prinzipals (Benutzers) enthält. Die Assertion bzw. das Token enthält Authentifizierungsinformationen, Attribute und Anweisungen zu Autorisierungsentscheidungen.

  • Microsoft Entra ID: Cloud IdP für Unternehmen, der SSO und Multi-Faktor-Authentifizierung für SAML-Anwendungen bietet. Dieser Anbieter synchronisiert, pflegt und verwaltet Identitätsinformationen für Benutzer und stellt gleichzeitig Authentifizierungsdienste für Anwendungen bereit, die diese benötigen.

Implementieren der SAML-Authentifizierung mit Microsoft Entra ID