Von KI übersetzt. Noch nicht von der Community geprüft. Auf Englisch lesen

Blog · 26. September 2023 · Steve Simpson · Identität

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.

Diagramm: Single Sign-on von einer Salesforce-Org zu einer anderen. Der Browser wird mit einer SAML-Anfrage an die Identitätsanbieter-Org geschickt und kehrt mit einer SAML-Assertion zur Dienstanbieter-Org zurück; jede Org hat das Zertifikat der anderen, und Nutzende werden über die Verbund-ID zugeordnet

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.

SAML-Zusammenfassung: der grundlegende Ablauf (Zugriff, Weiterleitung, Authentifizierung, Assertion, Rückleitung, Zugriff gewährt), die Vorteile und die Schlüsselbegriffe

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.

Beispiel einer SAML-Anfrage (AuthnRequest) von der Dienstanbieter-Org an die Identitätsanbieter-Org

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

Beispiel einer SAML-Antwort des Identitätsanbieters mit Aussteller und digitaler Signatur

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.

Sequenzdiagramm: vom Dienstanbieter ausgelöste SAML-Anmeldung. Die Person ruft eine Seite auf, wird zur Anmeldung an den Identitätsanbieter weitergeleitet, kehrt mit einer SAML-Assertion zurück, und der Dienstanbieter prüft sie und erstellt eine Sitzung

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