- ARTICLE -
Was ist SAML?
Security Assertion Markup Language (SAML) ist ein offener Standard, der Single Sign-On. ermöglicht. Indem Sie eine Reihe von Ressourcen mit nur einem Satz von Anmeldedaten zugänglich machen, können Sie einen nahtlosen Zugang zu den Ressourcen bieten und die Verbreitung von unsicheren Passwörtern verhindern.
(SAML) ermöglicht insbesondere die Identitätsföderation und erlaubt es Identitätsanbietern, authentifizierte Identitäten und deren Attribute nahtlos und sicher an Dienstanbieter (Serviceprovider, SP) weiterzugeben. SAML ist das führende und branchenweit bevorzugte Protokoll für die Bereitstellung föderierter Identitäten. Abgesehen davon, dass es in Hunderttausenden von Cloud-SSO-Verbindungen eingesetzt wird, haben sich auch Tausende von Großunternehmen, Behörden und Dienstanbieter für SAML als Standardprotokoll für die Kommunikation von Identitäten im Internet entschieden.
Vorteile der Authentifizierung mit SAML
SAML ist XML-basiert und daher sehr flexibel. Es steht zwei Partnern in einem Verbund frei, Identitätsattribute Ihrer Wahl in einer SAML-Assertion (bzw. Nachricht) als Nutzdaten/Payload auszutauschen, solange diese in XML dargestellt werden können. Diese Flexibilität hatte zur Folge, dass Teile des SAML-Standards, wie beispielsweise das SAML-Assertion-Format, in andere Standards übernommen wurden, wie beispielsweise in den Web Service Standard „WS-Federation“.
Die Interoperabilität von SAML stellt einen riesigen Vorteil gegenüber proprietären SSO-Verfahren dar. In einem Unternehmen kann proprietäres SSO bedeuten, dass für jede zusätzliche Verbindung eine neue zusätzliche Software oder proprietäre Integrationskonnektoren implementiert werden müssen. Mit SAML können durch eine einzige Implementierung SSO-Verbindungen mit vielen verschiedenen Verbundpartnern unterstützt werden. Manche großen Konzerne, insbesondere jene, die sich bereits mit mehreren proprietären SSO-Implementierungen abgemüht haben, fordern jetzt die Verwendung von SAML für eine Web-SSO-Lösung mit Identity-as-a-Service (IDaaS)-Anwendungen und zusätzlichen externen Dienstanbietern.
Kantara Initiative Inc. hat ein sehr erfolgreiches Testprogramm für interoperable Funktionen auf die Beine gestellt, mit dem SAML-Anbieter ihre Interoperabilität mit anderen SAML-Implementierungen beweisen können. Der Enterprise Federation Server von Ping, PingFederate, wurde eingehend auf Interoperabilität mit einer Reihe weiterer SAML-Implementierungen getestet, sowohl mit formellen Interop-Testverfahren als auch im jahrelangen praktischen Einsatz bei einigen der größten Unternehmen der Welt. Ein zertifiziertes Produkt kann möglicherweise darüber entscheiden, ob eine einfache Konfiguration von zwei Stunden und ein Testlauf genügt oder man es mit einem mehrere Monate dauernden Debugging-Albtraum zu tun bekommt.
So funktioniert die SAML-Authentifizierung
Bei den Anwendungsfällen für SAML-Identity-Federation in Unternehmen geht es für gewöhnlich um die gemeinsame Nutzung von Identitäten mithilfe eines bereits vorhandenen Identitäts- und Zugriffsmanagements (IAM) und Webanwendungen. Das SAML-Szenario stützt sich auf zwei Hauptakteure: den Identitätsprovider (IdP), der die Identität des Benutzers „bestätigt“ und den Serviceprovider (SP), der diese „Assertion“ (Bestätigung) nutzt, um die Identitätsdaten an die Anwendung weiterzuleiten. Diese Interaktion zwischen dem IAM-System und dem Föderationsserver wird als „First Mile“-Integration bezeichnet, die Interaktion zwischen dem Federation-Server und der Anwendung als „Last Mile“-Integration.
SAML-Tutorial
Einen hilfreichen Überblick über die Funktionsweise von SAML bietet dieses kurze SAML-Tutorial:
Beispiele für die Anwendung von SAML
Es gibt zwei häufige Anwendungsszenarien für SAML. Das erste ist das IdP-initiierte SSO, das zweite ist das SP-initiierte SSO.
Das IdP-initiierte SSO findet häufige Anwendung bei SSO-Lösungen für Mitarbeiter, wie beispielsweise in PingOne for Enterprise. In diesem Szenario melden sich die Benutzer zunächst beim System an, das dann einen Anwendungskatalog präsentiert. Dieser Katalog verweist mit Symbolen auf alle internen und externen Anwendungen, für die das Unternehmen eine SSO-Anmeldung konfiguriert hat und auf die der Benutzer berechtigten Zugriff hat.
In der Regel werden die am häufigsten genutzten Anwendungen dann für einen schnellen Zugriff in der Rangfolge nach oben gesetzt. So sieht das dann in PingOne for Enterprise aus:
Wenn der Benutzer auf eines des Symbole klickt, ist der SAML-Ablauf wie folgt:
Sobald der SP die SAML-Assertion erhalten hat, validiert er die Signatur mithilfe des öffentlichen Schlüssels, um sicherzustellen, dass die SAML-Assertion wirklich von seinem vertrauenswürdigen IdP stammt und dass keiner der Werte in der Assertion geändert wurde. Der SP kann dann die Identität des Benutzers aus der SAML-Assertion gemeinsam mit allen benötigten Attributen auslesen. An diesem Punkt befindet sich der Benutzer auf der Landing Page des Dienstanbieters, so als ob er sich manuell auf der Website angemeldet hätte.
Dieses Diagramm veranschaulicht die Schritte eines IdP-initiierten SSO-Ablaufs mit SAML:
SP-initiiertes SSO setzt dann ein, wenn ein Benutzer versucht, auf eine Ressource beim Dienstanbieter zuzugreifen, sich aber noch nicht beim SP authentifiziert hat. So kann es sein, dass ein Nutzer die Website direkt besucht oder einen Link zu einer bestimmten Ressource beim SP abgespeichert hat. Sobald der SP erkennt, dass sich der Benutzer nicht in einer aktiven Sitzung befindet, leitet er ihn zur Authentifizierung an den IdP weiter. Der IdP authentifiziert den Benutzer, erstellt die Assertion und leitet den Benutzer zurück zum SP, genau wie im IdP-initiierten Anwendungsfall. Hier allerdings sendet er auch die URL der Ressource zurück, auf die der Benutzer ursprünglich zugreifen wollte, sofern diese vom SP bereitgestellt wird.
Jetzt fragen Sie sich vielleicht, woher der SP weiß, an welchen IdP er den Benutzer weiterleiten soll, wenn er SSO-Anmeldungen von mehr als nur einem IdP unterstützt. Die Antwort lautet: Es kommt darauf an. Einige der gängige Methoden, mit denen der SP ermitteln kann, an welchen IdP der Benutzer weitergeleitet werden muss, sind folgende:
OSobald der SP die SAML-Assertion erhalten hat, validiert er die Signatur mithilfe des öffentlichen Schlüssels, um sicherzustellen, dass die SAML-Assertion wirklich von seinem vertrauenswürdigen IdP stammt und dass keiner der Werte in der Assertion geändert wurde. Der SP kann dann die Identität des Benutzers aus der SAML-Assertion gemeinsam mit allen benötigten Attributen auslesen. An diesem Punkt befindet sich der Benutzer auf der Landing Page des Dienstanbieters, so als ob er sich manuell auf der Website angemeldet hätte.
Dieses Diagramm veranschaulicht die Schritte eines SP-initiierten SSO-Ablaufs mit SAML:
Standards wie SAML werden für das skalierbare, sichere Implementieren von föderierten Identitäten über mehrere Unternehmen hinweg benötigt. Lesen Sie das Whitepaper, wenn Sie mehr über Identitätsföderation, typische SAML-Anwendungsfälle und die Kombination von SAML mit anderen Federation-Protokollen erfahren möchten.
Erfahren Sie, wie die Ping Intelligent Identity Plattform den Verbund von Identitäten durch den Einsatz offener Standards unterstützt.
Tutorial-Video mit allen wichtigen Informationen über Security Assertion Markup Language (SAML)
Ist SAML veraltet?SAML 2.0 (2005) wird in vielen Unternehmen weltweit nach wie vor verwendet. SAML wird in der Regel mit zwei neueren Alternativen verglichen: OAuth 2.0 (2012) und OpenID Connect (2014). Neuere Lösungen beginnen normalerweise mit OIDC und OAuth 2.0 und weichen bei Bedarf auf SAML aus. | ||
Wie funktioniert SSO mit SAML?SSO mit SAML funktioniert durch das Übermitteln von „Assertions“ oder XML-Meldungen zwischen zwei vertrauenswürdigen Parteien, dem IdP (Identitätsanbieter) und dem SP (Dienstanbieter). | ||
Ist SAML ein Protokoll?SAML (Security Assertion Markup Language) ist ein offener Sicherheitsstandard für Identitäten. SAML 2.0 wurde 2005 eingeführt. Es wird häufig verwendet, um SSO (Single Sign-On) zu ermöglichen. | ||
Wie kann ich SAML integrieren?SAML ist ein XML-basierter offener Standard, der mithilfe von Assertions funktioniert. Wenn Sie Ihre Anwendung an einen IdP binden, der SAML unterstützt, müssen Sie lediglich die Akzeptanz der Annahme der Assertion und die Überprüfung ihrer Signatur unterstützen. | ||
Ist OAuth ein Ersatz für SAML?OAuth 2.0 ist selbst ein Autorisierungsstandard. Er wird häufig mit OIDC (OpenID Connect) kombiniert, um als Alternative zu SAML 2.0 dem SSO zu dienen, allerdings unterscheiden sich die Implementierungen und manche der Funktionen. | ||
Ist ADFS dasselbe wie SAML?Es ist nicht identisch mit SAML. ADFS (Active Directory Federation Services) ist eine Softwarelösung, die aus dem Active Directory-Produkt von Microsoft hervorgegangen ist und SSO ermöglicht. ADFS ist als allumfassende Lösung für SSO gedacht. Es unterstützt SAML und einige andere Standards, ist aber mitunter schwer einzurichten und erfordert einiges an manueller Vorarbeit. | ||
Was ist der Unterschied zwischen LDAP und SAML?LDAP (Lightweight Directory Access Protocol) ist ein Protokoll oder ein Standard für die Kommunikation mit einer bestimmten Art von Datenbank. SAML ist ein Standard, der für Identitäts-Federation-Dienste wie SSO verwendet wird. | ||
Wie finde ich SAML-Attribute?SAML-Attribute findet man in der SAML-Assertion oder dem Token, das zwischen dem IdP und dem SP ausgetauscht wird. Wenn Sie die SAML-Assertion dekodieren, werden die Attribute im XML-Text angezeigt. | ||
Ist OIDC besser als SAML?OIDC (OpenID Connect) kann die Flows, die Ihre Benutzer durchlaufen, ausführlicher und besser verdeutlichen, und sein Token (ein JWT) ist etwas einfacher zu handhaben. Außerdem ist es kompakt und URL-sicher. Da eine SAML-Assertion in XML vorliegt, nimmt sie möglicherweise mehr Raum ein und ist ein wenig komplexer (das Verständnis von XML wird vorausgesetzt). Die meisten Unternehmen tendieren zu OIDC, wenn sie keine SAML-Anwendungen einbinden müssen. PingOne kann jedoch mit beidem umgehen. |
Starten Sie jetzt
Erfahren Sie, wie Ping Sie dabei unterstützen kann, sichere Mitarbeiter- und Kundenerlebnisse in einer sich schnell entwickelnden digitalen Welt zu schaffen.
Kostenlose Demo anfordern
Vielen Dank! Behalten Sie Ihren Posteingang im Auge. Wir melden uns bald bei Ihnen.S