SAML(Übereinstimmung mit SAML)

Security Assertion Markup Language (SAML) ist ein Standard für den Austausch von Authentifizierungs- und Autorisierungsdaten zwischen Parteien, insbesondere zwischen einem Identitätsanbieter und einem Dienstanbieter. Dieser Anmeldestandard (Einmalige Authentifizierung (SSO) hat erhebliche Vorteile im Vergleich zur Anmeldung mit einem Benutzernamen und einem Kennwort:

  • Keine erforderliche Eingabe von Anmeldedaten
  • kein Erinnern und Erneuern von Passwörtern erforderlich
  • Keine schwachen Passwörter

Die meisten Unternehmen kennen bereits die Identität der Benutzer, da sie in ihrer Active Directory-Domäne oder im Intranet angemeldet sind. Es ist sinnvoll, diese Informationen zu nutzen, um Benutzer bei anderen Anwendungen anzumelden, z. B. bei webbasierten Anwendungen, und eine der elegantesten Möglichkeiten, dies zu tun, ist die Verwendung von SAML.

SAML ist sehr leistungsfähig und flexibel, aber die Spezifikation kann ziemlich kompliziert sein. Mit den Open-Source-SAML-Toolkits von OneLogin können Sie SAML in wenigen Stunden statt in Monaten integrieren. Wir haben ein einfaches Setup entwickelt, das für die meisten Anwendungen geeignet ist.

Wie funktioniert SAML?

SAML SSO funktioniert, indem die Identität des Benutzers von einem Ort (dem Identitätsanbieter) zu einem anderen (dem Dienstanbieter) übertragen wird. Dies wird durch einen Austausch von digital signierten XML-Dokumenten erreicht.

Nehmen wir das folgende Szenario: Ein Benutzer ist bei einem System angemeldet, das als Identitätsanbieter fungiert. Der Benutzer möchte sich bei einer entfernten Anwendung anmelden, z. B. bei einer Support- oder Buchhaltungsanwendung (dem Dienstanbieter). Es geschieht Folgendes:

  • Der Benutzer greift über einen Link im Intranet, ein Lesezeichen o. Ä. auf die Remote-Anwendung zu und die Anwendung wird geladen.
  • Die Anwendung identifiziert die Anmeldung des Benutzers (anhand der Subdomäne der Anwendung, der IP-Adresse des Benutzers o. Ä.) und leitet den Benutzer zurück zum Identitätsanbieter und bittet um Authentifizierung. Dies ist die Authentifizierungsanfrage.
  • Der Benutzer hat entweder eine bestehende aktive Browsersitzung mit dem Identitätsanbieter oder baut eine solche auf, indem er sich beim Identitätsanbieter anmeldet.
  • Der Identitätsanbieter erstellt die Authentifizierungsantwort in Form eines XML-Dokuments, das den Benutzernamen oder die E-Mail-Adresse des Benutzers enthält, signiert es mit einem X.509-Zertifikat und sendet diese Informationen an den Dienstanbieter.
  • Der Dienstanbieter, der den Identitätsanbieter bereits kennt und über einen Zertifikatsfingerabdruck verfügt, ruft die Authentifizierungsantwort ab und validiert sie anhand des Zertifikatsfingerabdrucks.
  • Die Identität des Benutzers wird festgestellt und der Benutzer erhält Zugang zur App.


Wie haben wir es gemacht?