SAML Sicherheitsanbieter im Jitterbit App Builder
Die SAML Single Sign-On (SSO)-Authentifizierung ist in den folgenden Dokumenten definiert:
- Assertions und Protokolle für die OASIS Security Assertion Markup Language (SAML) V2.0
- SAML Version 2.0 Errata 05
In einem SSO-Szenario gibt es drei Rollen:
- Principal - Der Benutzer, der auf einen eingeschränkten Dienst zugreift.
- Service Provider (SP) - Bietet Zugriff auf eingeschränkte Dienste.
- Identity Provider (IdP) - Authentifiziert Benutzer.
App Builder kann mit dem entsprechenden Sicherheitsanbieter entweder als SP oder IdP konfiguriert werden. Dieses Dokument behandelt den SAML-Sicherheitsanbieter, der für die SP Rolle verwendet wird. In dieser Rolle App Builder delegiert die Authentifizierung an einen Drittpartei IdP. Zu den unterstützten IdPs gehören:
Informationen zur IdP Rolle finden Sie unter SAML Identitätsanbieter.
Flüsse
Die SAML Single Sign-On (SSO)-Spezifikation definiert mehrere Flows. Der SAML Sicherheitsanbieter unterstützt die folgenden SAML SSO-Flows:
- Service Provider (SP) initiiert
- Identity Provider (IdP) initiiert
Vom Serviceprovider (SP) initiiert
Im vom Service Provider (SP) initiierten Ablauf navigiert ein Benutzer zu App Builder und versucht, auf eine eingeschränkte Seite zuzugreifen. App Builder leitet den Benutzer über die SAML -Redirect-Bindung (HTTP) zum Identity Provider (IdP) weiter GET
). Nach der Authentifizierung leitet der IdP den Benutzer zurück zu App Builder mithilfe der SAML Post-Bindung (HTTP POST
). App Builder validiert die SAML Antwort, ordnet den Namensbezeichner einem lokalen App Builder Benutzerkonto und erteilt die mit dem Benutzerkonto verbundenen Rechte.
Beachten Sie, dass vor der Weiterleitung des Benutzers zum IdP App Builder zeichnet die URL der Seite auf, auf die der Benutzer zugreifen wollte. Sobald der Benutzer sich authentifiziert hat, App Builder leitet den Benutzer zurück auf die ursprünglich angeforderte Seite. Dies ermöglicht Deep Linking.
Identitätsanbieter (IdP) initiiert
Im Identity Provider (IdP)-Flow navigiert ein Benutzer direkt zum IdP. Nach der Authentifizierung wird der Benutzer weitergeleitet zu App Builder über die SAML -Post-Bindung (HTTP POST
). Wie beim SP-initiierten Flow App Builder validiert die SAML Antwort, ordnet den Namensbezeichner einem lokalen App Builder Benutzerkonto und erteilt die mit dem Benutzerkonto verbundenen Rechte.
Normalerweise App Builder leitet den Benutzer nach erfolgreicher Anmeldung auf seine Homepage um. Der IdP kann jedoch einen Deep Link erstellen, indem er die URI im SAML Antwortparameter RelayState übergibt. Siehe den Parameter AllowRelayStateRedirects weiter unten.
Konfiguration
Token
- Aussteller: Der Herausgeber der SAML -Assertion. Standardmäßig die Zielgruppe.
- Zielgruppe: SAML -Assertion-Zielgruppenbeschränkung. Der Wert muss eine syntaktisch gültige URI sein.
- Empfänger: Der SAML -Assertion-Empfänger. Dieser Wert muss eine syntaktisch gültige URI sein. Standardmäßig ist die Assertion Consumer Service URI (z. B. https://example.com/App Builder/signin-SAML).
Vorsicht
Aus Legacy-Gründen verwendet Audience standardmäßig die Stamm-URL der Anwendung (z. B. https://example.com/App Builder/). Es wird dringend empfohlen, dass Sie die Zielgruppe explizit festlegen, anstatt sich auf die Standardeinstellung zu verlassen.
Endpoints
Typ | Beschreibung |
---|---|
Endpoint | Endpoint des SAML Single Sign-On (SSO)-Dienstes. Dieser Parameter ist erforderlich, wenn die Parameter „Request Redirect Endpoint“ oder „SigningCertificate“ nicht definiert sind. |
RelayState-URI | Zulässiger RelayState-Umleitungs-URI für eine vom SAML Identitätsanbieter (IdP) initiierte Anforderung. Weitere Informationen finden Sie unter dem Parameter AllowRelayStateRedirects. |
Endpoint anfordern | SAML Single Sign-On (SSO) Endpoint für die Umleitungsbindung. Dieser Parameter ist erforderlich, wenn der Endpoint nicht definiert ist. |
Zertifikate
Zweck | Typ | Format | Beschreibung |
---|---|---|---|
Signaturvalidierung | X.509-Zertifikat |
| X.509-Zertifikat zum Validieren von SAML Single Sign-On (SSO)-Antwortsignaturen. Das Signaturvalidierungszertifikat ist erforderlich, wenn der Metadatenendpunkt nicht definiert ist. |
Eigenschaften
Der SAML Sicherheitsanbieter definiert die folgenden zusätzlichen Parameter:
Parameter | Standard | Beschreibung |
---|---|---|
AllowRelayStateRedirects | False | Gibt an, ob eine vom SAML Identity Provider (IdP) initiierte Anmeldung eine Umleitungs-URI im Parameter RelayState enthalten darf. Die Umleitungs-URI ist der Ort, zu dem der Benutzer nach der Anmeldung umgeleitet wird. Standardmäßig darf der Parameter RelayState keine Umleitungs-URI enthalten. Auf True um Umleitungs-URIs im RelayState-Parameter zuzulassen. Zum Schutz vor Open-Relay-Angriffen muss die URI mit dem RelayState-URI- Endpoint übereinstimmen. |
IgnoreTlsErrors | False | Gibt an, ob App Builder sollte HTTPS-Zertifikatsfehler ignorieren, wenn Backchannel-Anfragen zum Abrufen der Service-Metadaten gestellt werden. Diese Einstellung dient nur zu Einrichtungs- und Testzwecken. Aktivieren Sie diese Einstellung nicht auf einem laufenden System. |
Signaturanforderung | AssertionOrResponse | Gibt an, ob die SAML Antwort, die Behauptung oder beide signiert werden müssen. Zu den Optionen gehören: - AssertionOrResponse - Entweder die Behauptung oder die Antwort muss unterzeichnet sein. - Assertion - Die Erklärung muss unterschrieben sein. - Response - Nur die Antwort muss signiert sein. Die Assertion erbt die Antwortsignatur. - AssertionAndResponse - Sowohl die Behauptung als auch die Antwort müssen signiert sein. |
LogPII | False | Gibt an, dass personenbezogene Daten (PII) protokolliert werden sollen. Diese Einstellung wird beim Start wirksam. |
Ansprüche
SAML Assertionen enthalten Attribute. Attribute sind mehrwertige Schlüssel/Wert-Paare. App Builder behandelt SAML -Assertion-Attribute als Ansprüche. Der Attributname wird einer Anspruchskennung zugeordnet.
Nehmen wir beispielsweise eine SAML -Assertion mit dem folgenden Attribut:
<Attribute AttributeName="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name">
<AttributeValue>Arthur.Dent</AttributeValue>
</Attribute>
Zuordnung der Kennung http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
zur Name
-Eigenschaft setzt den Benutzernamen auf „Arthur.Dent“, wenn das Benutzerkonto bereitgestellt wird.
Die folgende Tabelle beschreibt die standardmäßigen Anspruchszuordnungen:.
Kennung | Zweck | Beschreibung |
---|---|---|
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier | Namenskennung | Eindeutige, unveränderliche Kennung zur Zuordnung der Identität des Drittpartei zu an App Builder Benutzer. |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name | Name | Benutzername. |
http://schemas.xmlsoap.org/claims/Group | Gruppe | Mitgliedschaft in Sicherheitsgruppe. |
http://schemas.zudy.com/identity/claims/fullname | Vollständiger Name | Vollständiger Name. |
http://schemas.zudy.com/identity/claims/displayname | Anzeigename | Freundlicher Name. |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress | Email Adresse | Email Adresse. |
http://schemas.zudy.com/identity/claims/phonenumber | Telefonnummer | Telefonnummer. |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/thumbprint | Fingerabdruck des X.509-Zertifikats. | |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/x500distinguishedname | Distinguished Name des X.509-Zertifikats. | |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/dns | DNS-Name des X.509-Zertifikats. |
Integration
Assertions-Verbraucherservice
Der SAML Sicherheitsanbieter stellt einen einzelnen Endpoint bereit. Der Endpoint empfängt SAML Antworten. Dies wird als Assertion Consumer Service bezeichnet. An App Builder Die URL des Assertion Consumer Service könnte etwa so aussehen:
https://example.com/App Builder/signin-SAML
Die URL besteht aus folgenden Teilen:
Komponente | Beschreibung |
---|---|
https://example.com/App Builder/ | Absolute URL der App Builder Stammverzeichnis der Anwendung. |
SAML | URL-codierter Name des SAML Sicherheitsanbieters. Bei dem Wert muss die Groß-/Kleinschreibung beachtet werden. |
Fehlerbehebung
Fehler „Die AudienceRestrictionCondition war ungültig, da die angegebene Zielgruppe nicht in AudienceUris vorhanden ist.“
Dieser Fehler weist darauf hin, dass die Zielgruppen-URI nicht übereinstimmt. Stellen Sie sicher, dass die Zielgruppen-Eigenschaft explizit festgelegt wurde. Wenn sie nicht festgelegt ist, wird standardmäßig die aktuelle URL verwendet, die je nach Benutzer unterschiedlich sein kann. Bei dem Wert wird die Groß-/Kleinschreibung beachtet.
Bekannte Probleme und Einschränkungen
Der App Builder Für den SAML Single Sign-On (SSO)-Sicherheitsanbieter gelten die folgenden Einschränkungen:
- Es kann nur eine einzige Zielgruppenbeschränkung validiert werden.
- Das Artefaktauflösungsprotokoll wird nicht unterstützt.
- Das Logout-Protokoll wird nicht unterstützt.