SAML (Security Assertion Markup Language) ist ein XML-basiertes Protokoll und Industriestandard, der eine zentralisierte Authentifizierung von Clients für den Zugang zu föderierten Sicherheitsdomänen ermöglicht. SAML erleichtert den Endnutzern den Zugang zu Anwendungen und Diensten, da die Notwendigkeit mehrerer Anmeldungen und Kennwörter entfällt. SAML vereinfacht auch den Verwaltungsaufwand, da weniger Anrufe beim Helpdesk wegen Passwortproblemen eingehen und der Lebenszyklus von Benutzereinheiten besser kontrolliert werden kann.

Eine grundlegende SAML-Implementierung besteht aus einem Client, einem Service Provider (SP) und einem Identity Provider (IdP). Das folgende Diagramm zeigt die Kommunikationsflüsse zwischen den Entitäten.

Der SAML-Authentifizierungsfluss basiert auf zwei Entitäten:

SAML-Anfrage:

SAML-Antwort:

Schlüsselgenerierung:

Der Identity Provider (IdP) generiert einen privaten Schlüssel und einen öffentlichen Schlüssel. Er signiert die Assertion mit dem privaten Schlüssel. Der öffentliche Schlüssel wird mit dem Service Provider (SP) geteilt, der ihn verwendet, um die SAML-Antwort zu überprüfen und den Benutzer anzumelden.

Von Hackern ausgenutzte SAML-Schwachstellen: