Zum Hauptinhalt springen

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:

  1. 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.
  2. 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.
  3. 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.

Wenn der Service Provider sein Signaturzertifikat wechselt

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.

GrundWas zu tun ist
missing_sp_entity_idTragen Sie die Service-Provider-Entitäts-ID in Schritt 2 ein, oder importieren Sie die Metadaten.
issuer_mismatchDie 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_signatureDer 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_signatureDie Signatur passt nicht zum Zertifikat, meist nach einem Zertifikatswechsel. Importieren Sie die Metadaten in Schritt 2 erneut und speichern Sie.
unsupported_sigalgXFA akzeptiert RSA-SHA256- und RSA-SHA1-Signaturen. Lassen Sie den Service Provider mit RSA-SHA256 signieren.
invalid_sp_certificateXFA 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_requestDie 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.