© Ekaphon maneechot/Shutterstock.com
SSO mit SAML in der Praxis

Implementierung von SAML


Viele Unternehmen nutzen bereits SAML, um eine bessere Benutzererfahrung für ihre Kunden und Mitarbeiter zu schaffen. Allerdings gibt es ebenso viele Unternehmen, die vor der vermeintlichen Komplexität von SAML zurückschrecken. Dieser Artikel zeigt, wie SAML SSO funktioniert, und beschreibt zwei verschiedene Methoden der Umsetzung. Für jede dieser Methoden werden Vor- und Nachteile diskutiert.

Artikelserie

Teil 1: Anwendungssicherheit SAML – Eine Einführung

Teil 2: Implementierung von SAML SSO in der Praxis

Was ist SAML? Die Security Assertion Markup Language (SAML) [1], [2], [3] bietet zahlreiche Vorteile für Unternehmen. Eine der größten Fähigkeiten ist Single Sign-On (SSO), die Möglichkeit, Benutzer sicheren Zugriff auf mehrere Anwendungen mit einem einzigen Satz von Anmeldeinformationen zu ermöglichen.

SAML ist ein XML-basiertes Framework für die Autorisierung und Authentifizierung sowie für die Kommunikation von Attributen und Berechtigungen eines Benutzers. Um SAML SSO zu verstehen, muss man zunächst die drei Teilnehmer betrachten: den Benutzer, den Identity-Provider (IdP) und den Service-Provider (SP). Der Benutzer ist diejenige Partei, die versucht, eine Anwendung aufzurufen. Der Service-Provider stellt die Anwendung zur Verfügung. Der Identity-Provider ist der Inhaber der Anmeldeinformationen der Benutzer, wie Benutzername, Passwort, x509, Rollen usw.

Es gibt zwei unterschiedliche Methoden, um SAML SSO zu implementieren: Service-Provider-initiiert und Identity-Provider-initiiert.

Beim SP-initiierten SSO versucht ein Benutzer, den Service-Provider direkt aufzurufen. Abbildung 1 zeigt den Ablauf der Anmeldung:

  • Der Benutzer versucht, auf eine Anwendung vom Service-Provider per URL zuzugreifen.

  • Der Service-Provider leitet den Benutzer im Browser auf den Identity-Provider für die Authentifizierung.

  • Der Benutzer liefert dem Identity-Provider Anmeldeinformationen. Wenn die Anmeldeinformationen gültig sind, erstellt der IdP ein SAML-Token, signiert es und bettet es in einen HTTP-Redirect-Befehl ein, der den Benutzer wieder an die Anwendung zurückleitet.

Der Service-Provider überprüft das eingehende SAML-Token aus der Weiterleitung. Dazu validiert er die Signatur des Tokens und prüft die SAML-Inhalte. Wenn das Token gültig ist, wird ein Session-Cookie erstellt, um die Nutzung der SSO-Sitzung für eine definierte Zeitdauer ohne erneute Authentifizierung zu erlauben.

krafzig_smal2_1.tif_fmt1.jpgAbb. 1: Service-Provider-initiiertes SSO

Bei IdP-initiiertem SSO ruft der Benutzer zu...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang