XFA als Identity Provider für einen SAML-Service-Provider einrichten Beta
XFA ist hier der Identity Provider: Der Service Provider übergibt die Anmeldung an XFA, das Benutzer mit einem Passkey anmeldet und ihr Gerät prüft. Für Google Workspace folgen Sie stattdessen der Google Workspace-Anleitung.
_Hinweis: Diese Anleitung setzt voraus, dass Ihre Organisation ein XFA-Konto hat, dass Sie dort Administrator in XFA sind und dass Sie Single Sign-on im Service Provider einrichten können. Haben Sie noch kein XFA-Konto, können Sie unter
https://dashboard.xfa.tech/signup eines anlegen._
Eine SAML-Verbindung im XFA-Dashboard anlegen
Melden Sie sich am XFA-Dashboard an, öffnen Sie Identitätsanbieter in der Seitenleiste, klicken Sie auf Verbindung hinzufügen und wählen Sie SAML-App. XFA legt die Verbindung an und öffnet die geführte Einrichtung: Grundeinstellungen, danach vier Schritte, die Sie zwischen XFA und dem Service Provider in beliebiger Reihenfolge durcharbeiten.
Legen Sie unter Grundeinstellungen Folgendes fest:
- einen Name für die Verbindung und die Richtlinie, deren Geräteprüfungen bei der Anmeldung gelten;
- Erlaubte E-Mail-Domains: die Domain(s) der Personen, die sich anmelden werden
(zum Beispiel
example.com). XFA meldet nur Personen mit einer E-Mail-Adresse in diesen Domains oder in den E-Mail-Domains Ihrer Organisation (unter Einstellungen) an. Gibt es weder hier noch in den E-Mail-Domains Ihrer Organisation eine Domain, kann sich niemand anmelden.
Schritt 1, XFA als Identity Provider hinzufügen, zeigt die Werte, die der Service Provider braucht, um XFA zu vertrauen: die IdP-Metadaten-URL, die Entity ID, die SSO-URL und ein Zertifikat zum Herunterladen. Tragen Sie sie in den Single-Sign-on-Einstellungen des Service Providers ein; die meisten Service Provider können die IdP-Metadaten-URL in einem Schritt importieren.
Jede Person meldet sich mit einem Passkey auf einem bei XFA hinterlegten Gerät an. Bereiten Sie sie vor, bevor Sie Single Sign-on einschalten, wie unter Benutzer für ihr erstes Gerät vorbereiten beschrieben.
Die Angaben des Service Providers eintragen
In Schritt 2, Angaben des Service Providers einfügen, muss XFA wissen, welcher Service Provider die Anmeldeanfragen sendet und wohin die signierte SAML-Antwort gehen soll:
- Service-Provider-Entitäts-ID: die Entity ID des Service Providers (manchmal Issuer oder Audience genannt).
- Assertion Consumer Service (ACS) URL: wohin XFA die SAML-Antwort per POST sendet.
- Signaturzertifikat des Service Providers: nur wenn der Service Provider seine Anfragen signiert (siehe Signierte Anfragen). Lassen Sie das Feld andernfalls leer.
XFA signiert seine SAML-Assertions immer, daher braucht eine Einstellung des Service Providers wie "sign the response and assertion" kein Gegenstück in XFA. XFA sendet die E-Mail-Adresse als NameID.
Aus Metadaten-URL importieren
Veröffentlicht der Service Provider seine SAML-Metadaten unter einer URL, müssen Sie die Werte nicht einzeln übernehmen:
- Fügen Sie in Schritt 2 die Metadaten-URL des Service Providers (sie beginnt mit
https://) unter Aus Metadaten-URL importieren ein und klicken Sie auf Importieren. - XFA ruft die Metadaten ab und füllt Service-Provider-Entitäts-ID und Assertion Consumer Service (ACS) URL aus. Steht in den Metadaten, dass der Service Provider seine Anmeldeanfragen signiert, füllt XFA auch Signaturzertifikat des Service Providers aus.
- Prüfen Sie die Werte und klicken Sie dann auf Einrichtung abschließen (oder Speichern und später fortfahren).
Schlägt der Import fehl, öffnen Sie die Metadaten-URL in einem Browser: Sie muss das SAML-Metadaten-XML des Service Providers liefern. Sie können die Werte jederzeit auch von Hand einfügen.
Schalten Sie in Schritt 3 Single Sign-on im Service Provider für die Benutzer oder Gruppen ein, die XFA prüfen soll; beginnen Sie mit einer kleinen Gruppe. Schritt 4 ist eine optionale Testanmeldung.
Signierte Anfragen
Manche Service Provider signieren jede Anmeldeanfrage, die sie an XFA senden; die meisten nicht. Ist ein Signaturzertifikat des Service Providers gespeichert, akzeptiert XFA nur Anfragen, die mit diesem Zertifikat signiert sind, und Signierte Anfragen erforderlich ist unter Einstellungen auf der Seite der Verbindung eingeschaltet. Ohne Zertifikat akzeptiert XFA unsignierte Anfragen, und der Benutzer weist seine Identität trotzdem mit seinem Passkey nach.
Service Provider, die ihre Anfragen signieren, wechseln ihr Signaturzertifikat von Zeit
zu Zeit und veröffentlichen das neue in ihren Metadaten. XFA ruft die Metadaten noch
nicht von selbst erneut ab. Nach einem Wechsel schlägt die Anmeldung mit dem Grund
invalid_signature fehl, bis Sie Verbindung ändern öffnen, in Schritt 2 erneut auf
Importieren klicken (oder das neue Zertifikat einfügen) und die Verbindung speichern.
Fehlerbehebung
Lehnt XFA eine Anmeldeanfrage des Service Providers ab, zeigt die Fehlerseite eine
Zeile Reason: gefolgt von einem Code. Dieselbe Liste, mit einer Schaltfläche, die Sie
zum zu korrigierenden Feld bringt, finden Sie unter Wenn die Fehlerseite einen dieser
Gründe zeigt in Schritt 4 der Einrichtung.
| Grund | Was zu tun ist |
|---|---|
missing_sp_entity_id | Tragen Sie die Service-Provider-Entitäts-ID in Schritt 2 ein, oder importieren Sie die Metadaten. |
issuer_mismatch | Die Anfrage kommt von einer anderen Entity ID. Übernehmen Sie die Entity ID des Service Providers in Schritt 2 exakt in Service-Provider-Entitäts-ID. |
missing_signature | Der Service Provider hat eine unsignierte Anfrage gesendet. Schalten Sie das Signieren von Anfragen im Service Provider ein, oder Signierte Anfragen erforderlich unter Einstellungen aus. |
invalid_signature | Die Signatur passt nicht zum Zertifikat, meist nach einem Zertifikatswechsel. Importieren Sie die Metadaten in Schritt 2 erneut und speichern Sie. |
unsupported_sigalg | XFA akzeptiert RSA-SHA256- und RSA-SHA1-Signaturen. Lassen Sie den Service Provider mit RSA-SHA256 signieren. |
invalid_sp_certificate | XFA kann das gespeicherte Zertifikat nicht lesen. Fügen Sie das ganze Zertifikat ein, einschließlich der Zeilen BEGIN und END, oder importieren Sie die Metadaten. |
malformed_request | Die Anfrage nennt keinen Issuer. Prüfen Sie, ob der Service Provider seine Entity-ID als Issuer in seinen SAML-Anfragen mitsendet, und wenden Sie sich an den XFA-Support, falls es bleibt. |