Informationen zur Sprache im Bereich Identität
Lernziele
- Erkennen der Branchenstandards für die Identitäts- und Zugriffsverwaltung
- Erläutern des Zusammenhangs zwischen SAML und XML
- Erklären des Unterschieds zwischen Identitätsanbieter und Serviceanbieter
Identitätsstandards und -protokolle
Dies sind die drei Protokolle, die die sich Salesforce und andere Anbieter bei der Implementierung von Identitätslösungen halten.
- SAML
- OAuth 2.0
- OpenID Connect
SAML-Protokoll
Die folgenden Beispiele zeigen, wann SAML am Werk ist:
- Wenn Sie sich bei Salesforce angemeldet haben und dann auf den App Launcher klicken, um direkt zu Ihrem Gmail-Posteingang zu gelangen, dann ist SAML am Werk.
- Wenn Benutzer, die sich bereits bei einer anderen Anwendung angemeldet haben, ohne erneute Anmeldung auf ihre Salesforce-Organisation zugreifen können, ist auch hier SAML am Werk.
SAML-Bestätigung
So funktioniert SAML: Ein Benutzer versucht, auf einen Service zuzugreifen. Der Serviceanbieter sendet eine Anfrage an den Identitätsanbieter, in der er im Prinzip fragt: "Ist es in Ordnung, wenn dieser Benutzer auf meinen Service zugreift?" Der Identitätsanbieter stellt sicher, dass Benutzer wirklich die sind, die sie zu sein behaupten, indem er seine Datenbank prüft und eine Antwort (also eine Bestätigung) zurückgibt, die etwa wie folgt lautet: "Ja, dieser Benutzer ist autorisiert, und hier sind einige Informationen über ihn."
Moment mal. Was ist der Unterschied zwischen einem Identitätsanbieter und einem Serviceanbieter? Einfach gesagt ist der Identitätsanbieter derjenige, der den Benutzer authentifiziert. Der Serviceanbieter fragt nach der authentifizierten Identität. Wir befassen uns später in dieser Lektion noch eingehender mit Identitäts- und Serviceanbietern.
Als Bestätigung bezeichnet man die übertragenen Informationen. Eine Bestätigung kann detaillierte Informationen über einen Benutzer enthalten. Sie kann auch Attribute über den Benutzer beinhalten, wie Vor- und Nachname, Kontaktinformationen und eventuell sogar seine Position.
Die SAML-Vorgänge passieren im Hintergrund. Ihre Benutzer bekommen davon nichts zu sehen. Sie klicken nur auf ein Symbol oder einen Link und öffnen eine andere Anwendung, ohne weitere Informationen angeben oder sich erneut anmelden zu müssen. Manchmal liegen am Zielort bereits Informationen über den Benutzer vor (eben jene Attribute), wenn dieser dort ankommt.
SAML und XML
SAML ist ein XML-basiertes Protokoll. Das bedeutet, die Informationspakete, die ausgetauscht werden, sind in XML geschrieben. XML ist für Menschen (mehr oder weniger) lesbar, sodass Sie sich eine ungefähre Vorstellung von den Abläufen machen können. Das ist sehr praktisch, wenn Sie sicherstellen möchten, ob alles richtig funktioniert.
Die folgende Abbildung zeigt einen Teil einer SAML-Bestätigung. Verstehen Sie auf den ersten Blick nur "Bahnhof"? Riskieren Sie einen zweiten Blick, dann sieht das alles gar nicht mehr so schlimm aus. Dieser Auszug enthält Informationen über den Benutzernamen, die Telefonnummer und den Vornamen eines Benutzers.
In diesem Beispiel übergibt die Salesforce-Organisation die Informationen über den Benutzer an eine andere Anwendung. Die Anwendung kann diese Informationen zum Autorisieren des Benutzers und zur persönlichen Anpassung der Oberfläche nutzen. Das Wichtigste ist jedoch, dass sich der Benutzer für den Zugriff auf die Anwendung nicht erneut anmelden muss.
OAuth 2.0-Protokoll
Hier sind einige Beispiele dazu:
- Eine mobile Anwendung, die Kontakte aus einer Salesforce-Organisation abruft, verwendet OAuth.
- Eine Salesforce-Organisation, die Kontakte aus einem anderen Service abruft, verwendet ebenfalls OAuth.
Das folgende Beispiel zeigt die Anfrage einer Anwendung an den Benutzer, ob er den Informationszugriff mit OAuth 2.0 genehmigt.
OpenID Connect-Protokoll
Der Anwendungsentwickler verwendete das OpenID Connect-Protokoll, um Social Sign-On zu ermöglichen.
Wenn Google beispielsweise die Identität eines Benutzers im Namen eines anderen Service überprüft, dann authentifiziert es den Benutzer. In dieser Hinsicht ist Google also ein Identitätsanbieter.
Salesforce bietet integrierte Unterstützung für mehrere große soziale Identitätsanbieter wie etwa Google, Facebook und LinkedIn. Wenn ein Anbieter nicht standardmäßig unterstützt wird, können Sie ihn dennoch verwenden, sofern er das OpenID Connect-Protokoll implementiert, wie beispielsweise Amazon und PayPal.
Das Protokoll OpenID Connect hat für Benutzer den Vorteil, dass sie weniger separate Accounts, Benutzernamen und Kennwörter verwalten müssen. Außerdem können Entwickler ihre Benutzer damit über Websites und Anwendungen hinweg authentifizieren, ohne Kennwortdateien anlegen und verwalten zu müssen. Diese Vorgehensweise macht es Hackern viel schwerer, Benutzer-Accounts zu "knacken".
Serviceanbieter und Identitätsanbieter
Benutzer melden sich über einen Identitätsanbieter an und werden dann zu Salesforce (dem Serviceanbieter) weitergeleitet. In einem anderen Modul werden wir Single Sign-On mit Salesforce als Serviceanbieter einrichten und eine Drittanbieteranwendung als externen Identitätsanbieter konfigurieren.
Salesforce als IdentitätsanbieterSAML-Flow für SSO
- Der Benutzer versucht, auf Salesforce zuzugreifen.
- Salesforce erkennt die SSO-Anforderung und erstellt eine SAML-Anforderung.
- Salesforce leitet die SAML-Anforderung wieder zum Browser weiter.
- Der Browser leitet die SAML-Anforderung zum externen Identitätsanbieter weiter.
- Der Identitätsanbieter überprüft die Identität des Benutzers und erstellt ein Datenpaket mit der SAML-Bestätigung, die die Benutzerauthentifizierung beinhaltet.
- Der Identitätsanbieter sendet die SAML-Bestätigung an den Browser.
- Der Browser leitet die Bestätigung an Salesforce weiter.
- Salesforce prüft die Bestätigung.
- Der Benutzer wird angemeldet und darf auf Salesforce zugreifen.
Übersicht über die Identitätsterminologie
Der eine Begriff | wird leicht mit diesem Begriff verwechselt |
---|---|
Authentifizierung bedeutet, wer eine Person ist. Heutzutage wird "Authentifizierung" oft als Kurzform für "Autorisierung und Authentifizierung" verwendet. | Autorisierung bedeutet, was eine Person tun darf. |
Als Protokoll bezeichnet man die Gruppe von Regeln, die Systemen den Austausch von Informationen ermöglichen. Im Allgemeinen werden die Begriffe "Protokoll" und "Standard" gleichbedeutend gebraucht. | Ein Standard ist eine Spezifikation, also eine Reihe branchenspezifischer Vorgehensweisen, auf die sich Hersteller einigen. Oftmals wird innerhalb eines Standards durch ein Protokoll festgelegt, wie die Unternehmen den Standard zu implementieren haben. |
Benutzername und Kennwort sind die Angaben, mit denen sich der Benutzer bei einem System anmeldet. | Unter Anmeldedaten versteht man im Grunde dasselbe. |
Single Sign-On (SSO) ermöglicht einer Person, sich ein Mal anzumelden und dann ohne erneute Anmeldung auf andere Anwendungen und Services zuzugreifen. | Social Sign-On ermöglicht einer Person, sich mit den für ein Account bei sozialen Medien wie Google festgelegten Anmeldedaten bei einer Anwendung anzumelden. Die Anwendung akzeptiert die Google-Anmeldedaten, und der Benutzer muss kein neues Account mit Kennwort erstellen. |
Ein Identitätsanbieter ist ein vertrauenswürdiger Service, der Benutzern ohne erneute Anmeldung den Zugriff auf andere Websites und Services ermöglicht. | Ein Serviceanbieter ist eine Website oder ein Service, die bzw. der Anwendungen hostet und Identitäten von einem Identitätsanbieter akzeptiert. |