Ein tiefer Einblick in die SAML-Authentifizierung
SAML beim Single Sign-on mit Salesforce verstehen
Im Bereich der Authentifizierung spielt SAML (Security Assertion Markup Language) eine Schlüsselrolle für den nahtlosen Zugriff über Anwendungen hinweg. Tauchen wir tief in SAML ein, verstehen wir seine Bedeutung für Single Sign-on (SSO) und sehen wir uns die Umsetzung mit Salesforce an.
Die Ausgangslage
Stellen Sie sich ein Szenario mit zwei Salesforce-Orgs vor: einem Identitätsanbieter (IDP) und einem Dienstanbieter. Der Dienstanbieter hat die Daten, auf die Sie zugreifen wollen, aber statt mehrerer Anmeldedaten wollen Sie das mit einem einzigen Satz Zugangsdaten erreichen. Die Idee klingt einfach, die Mechanik dahinter kann aber kompliziert sein.

Schlüsselbegriffe rund um SAML
Zugriff der Person: wenn jemand vor der Authentifizierung eine geschützte Ressource beim Dienstanbieter aufrufen will.
Weiterleitung: Ist die Person nicht authentifiziert, leitet der Dienstanbieter sie mit einer SAML-Anfrage an den Identitätsanbieter weiter. Bei Bedarf kann ein Relay State (die URL, die ursprünglich aufgerufen werden sollte) mitgeschickt werden.
Authentifizierung beim IDP: Der Identitätsanbieter prüft die Identität der Person, meist über Benutzername, Passwort oder Multi-Faktor-Authentifizierung.
SAML-Assertion: Nach der Authentifizierung sendet der IDP eine SAML-Assertion an den Dienstanbieter.
Vertrauen des Dienstanbieters: Der Dienstanbieter prüft die SAML-Assertion, liest die Angaben zur Person aus und gewährt Zugriff. Wurde zuvor ein Relay State übergeben, navigiert der Dienstanbieter zu genau dieser URL.

Vorteile von Single Sign-on
Einfacher Zugriff: Nutzende brauchen nur einen einzigen Satz Zugangsdaten für mehrere Dienste.
Sicherheit: SAML nutzt digitale Signaturen, um die Integrität der Daten zu sichern und Manipulationen zu verhindern.
Interoperabilität: Als Standardprotokoll kann SAML mit verschiedenen IDPs und Dienstanbietern über unterschiedliche Technologien hinweg zusammenarbeiten.
Tiefer eintauchen: SAML-Flows untersuchen
SAML-Anfrage: vom Dienstanbieter an den IDP gesendet, mit der Bitte, eine Person zu authentifizieren.

SAML-Antwort: eine Nachricht des IDP nach der Authentifizierung, die Angaben zur Person enthält.

Assertions: Aussagen des IDP über die Person, mit Attributen wie Benutzername oder E-Mail.
Digitale Signaturen: Sie dienen dazu, die Assertions zu prüfen und sicherzustellen, dass sie nicht unrechtmässig verändert wurden.
Relay State: eine Deep-Link-URL, die dafür sorgt, dass die Person nach der Authentifizierung zum ursprünglich gewünschten Ziel zurückkehrt.
Wenn jemand Zugriff anfordert, wird eine SAML-Anfrage an den IDP gesendet, der nach der Prüfung eine SAML-Assertion zurückschickt. Hat der Dienstanbieter diese Assertion geprüft, erhält die Person den gewünschten Zugriff.

Mit Werkzeugen wie dem SAML Tracer für Browser lässt sich dieser Ablauf sichtbar machen. So sieht man den Authentifizierungsprozess transparent, von der ersten Anfrage bis zur letzten Weiterleitung nach der Authentifizierung.
Sicherheitsmassnahmen in SAML-Assertions
Um möglichen Bedrohungen zu begegnen:
Zeitstempel verhindern Replay-Angriffe, indem die SAML-Assertion nur für ein kurzes Zeitfenster gültig ist.
Digitale Signaturen garantieren, dass die Daten während des Austauschs nicht manipuliert wurden.
Zusätzlich können Assertions Attribute der Person enthalten, etwa E-Mail-Adressen oder Benutzertypen, was beim Dienstanbieter feinere Zugriffskontrollen ermöglicht.
Fazit
Im Kern ist SAML ein XML-basiertes Protokoll mit den Schlüsselelementen der Authentifizierung. Es mag wie Magie wirken, ist aber das Ergebnis durchdachter Technik, die Angriffe wie «Man in the Middle» oder Replay-Szenarien vereiteln soll.
Weil SAML mehrere Dienstanbieter mit IDPs auf unterschiedlichen Technologien verbinden kann, ist es ein Grundpfeiler der digitalen Authentifizierung.
Bleiben Sie dran
Starten Sie mit Zuversicht in Ihre Salesforce-Identity-Reise! Weitere Einblicke und Tipps gibt es hier auf www.SteveTechArc.com und auf dem YouTube-Kanal @SteveTechArc (opens in a new tab). Abonnieren Sie und vertiefen Sie Ihr Verständnis von Salesforce Identity.
Die Welt ein Stück verändern, indem ich Wissen über Integration mit anderen Architekt:innen und allen auf dem Weg dorthin teile!
Transkript mit Unterstützung von KI
STA 3.6