Mit Context Handler / FKA über SAML 2.0 verbinden

FoxIDs kann mit Context Handler über eine SAML 2.0 Authentifizierungsmethode verbunden werden.

Context Handler ist ein dänischer Identity Broker, der die dänischen Gemeinden in einer gemeinsamen Föderation verbindet, auf Dänisch Fælleskommunal Adgangsstyring (FKA) genannt.

Context Handler ist verbunden als SAML 2.0 Identity Provider (IdP) basierend auf OIOSAML 3 und OCES3 (RSASSA-PSS).

Connect to Context Handler

Durch die Konfiguration einer SAML 2.0 Authentifizierungsmethode und einer OpenID Connect Anwendungsregistrierung wird FoxIDs zu einer Brücke zwischen SAML 2.0 und OpenID Connect. FoxIDs übernimmt dann die SAML 2.0 Verbindung als Relying Party (RP) / Service Provider (SP), und Sie müssen sich in Ihrer Anwendung nur um OpenID Connect kümmern. Falls erforderlich, können Sie mehrere Login Optionen (Authentifizierungsmethoden) aus derselben OpenID Connect Anwendungsregistrierung auswählen.

Im Test können Sie sich mit dem FoxIDs Test IdP anmelden.

Select FoxIDs test IdP

Oder konfigurieren Sie eine FoxIDs Umgebung als Test Identity Provider für Context Handler mit einer SAML 2.0 Anwendungsregistrierung und authentifizieren Sie Testbenutzer.

Connect to Context Handler RP

Context Handler kann basierend auf OIOSAML 2 oder OIOSAML 3 mit OCES3 (RSASSA-PSS) konfiguriert werden und FoxIDs unterstützt zusätzlich die erforderlichen Zertifikate, zudem ist es möglich, NSIS zu unterstützen.

Sie können Context Handler Login mit der online web app sample (sample docs) testen, indem Sie Log in klicken und dann Danish Context Handler TEST für die Testumgebung (wählen Sie FoxIDs - test-corp auf der Context Handler Login Seite) oder Danish Context Handler für die Produktion.
Werfen Sie einen Blick auf die Context Handler Beispielkonfiguration in FoxIDs Control: https://control.foxids.com/test-corp
Erhalten Sie lesenden Zugriff mit dem Benutzer reader@foxids.com und dem Passwort gEh#V6kSw und wählen Sie die Umgebung context-handler, context-handler-test oder context-handler-idp-test.
Das Beispiel ist mit separaten Umgebungen für die Context Handler SAML 2.0 Integration konfiguriert.

Context Handler / FKA Dokumentation:

Transformieren Sie den DK privilege XML Claim in einen JSON Claim.

Separate Umgebung

Context Handler verlangt, dass jede Verbindung in einer Umgebung (Test oder Produktion) ein eindeutiges OCES3 Zertifikat verwendet.
Daher sollten Sie erwägen, Context Handler in separaten Umgebungen zu verbinden, in denen die OCES3 Zertifikate konfiguriert werden können.

Connect to Context Handler

Erstellen Sie eine neue Umgebung in FoxIDs Control Client:

  1. Finden Sie den Abschnitt Environments oben in der Mitte
  2. Klicken Sie das Drop-down
  3. Klicken Sie New environment Create new environment
  4. Fügen Sie den Name hinzu
  5. Klicken Sie Create

Wenn Sie sowohl eine Test als auch eine Produktionsumgebung konfigurieren, sollten diese in separaten Umgebungen platziert werden. Wenn Sie einen Test Identity Provider für Context Handler konfigurieren, sollte dieser ebenfalls in einer separaten Umgebung platziert werden und ein eindeutiges OCES3 Zertifikat haben.

Sie können zwei Umgebungen im selben Tenant einfach mit einem Environment Link verbinden.

Zertifikat

Context Handler verlangt, dass alle Requests (authn und logout) in allen Umgebungen mit Produktions OCES3 Zertifikaten signiert werden. Es ist NICHT möglich, ein von einer anderen Zertifizierungsstelle ausgestelltes Zertifikat, ein selbstsigniertes Zertifikat oder Test OCES3 Zertifikate zu verwenden.

Ein OCES3 Zertifikat ist drei Jahre gültig. Danach muss es manuell aktualisiert werden.

Fügen Sie das .P12 OCES3 Zertifikat in FoxIDs Control Client hinzu:

  1. Wählen Sie (oder erstellen Sie) eine separate Umgebung, die für Context Handler als Identity Provider oder einen Test Identity Provider für Context Handler verwendet wird
  2. Wählen Sie die Registerkarte Certificates
  3. Wenn nicht für enthaltene Zertifikate konfiguriert. Klicken Sie den Pfeil nach unten am Swap certificate Button und klicken Sie dann im Abschnitt Contained certificates auf Change container type
  4. Klicken Sie auf das primäre Zertifikat 5, Geben Sie das Passwort in Optional certificate password ein
  5. Laden Sie das .P12 OCES3 Zertifikat hoch

Add OCES3 certificate

Anschließend ist es möglich, ein sekundäres Zertifikat hinzuzufügen und zwischen dem primären und sekundären Zertifikat zu wechseln.

Context Handler als Identity Provider konfigurieren

Diese Anleitung beschreibt, wie Context Handler als SAML 2.0 Identity Provider eingerichtet wird und OIOSAML3 eingehalten wird.

Sie müssen das OCES3 Zertifikat konfigurieren, bevor Sie dieser Anleitung folgen.

1 - Beginnen Sie mit dem Erstellen einer SAML 2.0 Authentifizierungsmethode in FoxIDs Control Client

  1. Wählen Sie die Registerkarte Authentication
  2. Klicken Sie New authentication und dann Identity Provider (SAML 2.0)
  3. Fügen Sie den Name hinzu, z. B. Context Handler
  4. Fügen Sie die Context Handler IdP Metadaten im Feld Metadata URL hinzu
    Test Metadaten: https://n2adgangsstyring.eksterntest-stoettesystemerne.dk/runtime/saml2/metadata.idp
    Produktion Metadaten: https://n2adgangsstyring.stoettesystemerne.dk/runtime/saml2/metadata.idp
  5. Klicken Sie Create

Context Handler SAML 2.0 authentication method

  1. Wählen Sie Show advanced
  2. Setzen Sie Logout response binding auf Redirect
  3. Konfigurieren Sie einen Custom SP issuer, der issuer kann optional mit https://saml. beginnen. Der issuer in diesem Beispiel ist https://saml.foxids.com/test-corp/context-handler-test/
  4. Optional setzen Sie den Certificate validation mode auf Chain trust, wenn das OCES3 Root Zertifikat auf Ihrer Plattform vertraut wird Setzen Sie den Certificate revocation mode auf Online
  5. Wählen Sie Yes in Add logout response location URL in metadata
  6. Wählen Sie Yes in Include the encryption certificate in metadata
  7. Setzen Sie NameID format in metadata auf urn:oasis:names:tc:SAML:2.0:nameid-format:persistent

Context Handler SAML 2.0 authentication method

  1. In Attribute consuming service in metadata klicken Sie Add attribute consuming service und fügen Sie den Service name hinzu
  2. Fügen Sie alle Claims hinzu, die Sie als requested attributes erhalten möchten, im Format urn:oasis:names:tc:SAML:2.0:attrname-format:uri. Optional setzen Sie jedes Attribut als required.

Folgende Claims werden am häufigsten verwendet:

  • https://data.gov.dk/model/core/specVersion
  • https://data.gov.dk/concept/core/nsis/loa
  • https://data.gov.dk/model/core/eid/professional/cvr
  • https://data.gov.dk/model/core/eid/professional/orgName
  • https://data.gov.dk/model/core/eid/cprNumber
  • https://data.gov.dk/model/core/eid/email
  • https://data.gov.dk/model/core/eid/firstName
  • https://data.gov.dk/model/core/eid/lastName
  • https://data.gov.dk/model/core/eid/privilegesIntermediate

Context Handler SAML 2.0 authentication method

  1. In Contact persons in metadata klicken Sie Add contact person und klicken Sie Administrative, um einen administrativen Kontakt hinzuzufügen
  2. Klicken Sie Update
  3. Gehen Sie zum Anfang der SAML 2.0 Authentifizierungsmethode
  4. Finden Sie die SP Metadaten in SAML 2.0 method URL, in diesem Fall https://foxids.com/test-corp/context-handler-test/(g9ey6lfw)/saml/spmetadata.
  5. Die SP Metadaten URL wird verwendet, um ein Context Handler Benutzersystem (DK: brugervendt system) zu konfigurieren.

2 - Gehen Sie anschließend zum Context Handler Verwaltungsportal in Test oder Produktion

  1. Wählen Sie IT systems (DK: IT-systemer)
  2. Klicken Sie Add IT-system (DK: Tilslut it-system)
  3. Füllen Sie die Felder aus und wählen Sie User system (DK: Brugervendt system)
  4. Gehen Sie zur User system Registerkarte (DK: Brugervendt system)
  5. Wählen Sie Context Handler mit NSIS und entfernen Sie die Auswahl von Context Handler (ohne NSIS)
  6. Wählen Sie OIOSAML3 als OIOSAML Profil und NSIS Level
  7. Fügen Sie die SP Metadaten URL der SAML 2.0 Authentifizierungsmethode hinzu, in diesem Fall https://foxids.com/test-corp/context-handler-test/(g9ey6lfw)/saml/spmetadata.
  8. Füllen Sie den Rest aus, akzeptieren Sie die Bedingungen und klicken Sie Save (DK: Gem)

3 - Fügen Sie eine privilege Claim Transformation in FoxIDs Control Client hinzu

FoxIDs kann den DK privilege XML Claim in einen JSON Claim transformieren. Es wird empfohlen, die Transformation hinzuzufügen, um kleinere Claims und Tokens zu erhalten. Außerdem werden die Tokens lesbar.

  1. Wählen Sie die Registerkarte Claim transform
  2. Klicken Sie Add claim transform und dann DK XML privilege to JSON
  3. Klicken Sie Update

Context Handler SAML 2.0 authentication method privilege claim transformation

FoxIDs konvertiert intern SAML 2.0 Claims zu JWT Claims. Die Zuordnung zwischen SAML 2.0 und JWT Claims wird standardmäßig automatisch erstellt. Sie können die Zuordnung im Tab Settings finden und ändern.

Sie sind fertig. Die SAML 2.0 Authentifizierungsmethode kann nun als Authentifizierungsmethode für Anwendungsregistrierungen in der Umgebung verwendet werden.

Eine Anwendungsregistrierung stellt nur hinzugefügte Claims aus.
Denken Sie daher daran, JWT Claims zu OpenID Connect Anwendungsregistrierungen hinzuzufügen oder die * Notation zu verwenden.

Test Identity Provider für Context Handler konfigurieren

Diese Anleitung beschreibt, wie FoxIDs als Test Identity Provider für Context Handler konfiguriert wird. Context Handler wird als SAML 2.0 Relying Party hinzugefügt.

Sie müssen eine separate Umgebung verwenden, um einen Ort für die Testbenutzer zu haben und das OCES3 Zertifikat zu konfigurieren, bevor Sie dieser Anleitung folgen.

1 - Beginnen Sie mit dem Erstellen einer SAML 2.0 Anwendungsregistrierung in FoxIDs Control Client

  1. Wählen Sie die Registerkarte Applications

  2. Klicken Sie New application

  3. Wählen Sie Show advanced

  4. Wählen Sie Web Application (SAML 2.0)

  5. Fügen Sie den Name hinzu, z. B. Context Handler IdP

  6. Laden Sie die Context Handler RP Metadaten herunter, in denen Sie Endpunkte und das zu vertrauende Zertifikat finden.
    Test Metadaten: https://n2adgangsstyring.eksterntest-stoettesystemerne.dk/runtime/saml2auth/metadata.idp
    Das Zertifikat ist base64 codiert und kann mit dem FoxIDs certificate tool in eine .cer Datei konvertiert werden.

  7. Fügen Sie den Application issuer https://saml.n2adgangsstyring.eksterntest-stoettesystemerne.dk/runtime und die Metadaten hinzu

  8. Fügen Sie die Assertion consumer service (ACS) URL https://n2adgangsstyring.eksterntest-stoettesystemerne.dk/runtime/saml2auth/consume.idp aus den Metadaten hinzu Context Handler SAML 2.0 application

  9. Klicken Sie Register

  10. Lesen Sie die Metadata URL und speichern Sie sie für später

  11. Klicken Sie Close

  12. Die Detailkonfiguration öffnet sich, wählen Sie Show advanced oben rechts in diesem Konfigurationsabschnitt

  13. Aktivieren Sie Absolute ACS URL

  14. Setzen Sie Encrypt authn response auf Yes

  15. Fügen Sie das Verschlüsselungszertifikat aus den Metadaten in Encryption certificate hinzu

  16. Setzen Sie NameID format auf urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName

  17. Fügen Sie die Logged out URL https://n2adgangsstyring.eksterntest-stoettesystemerne.dk/runtime/saml2auth/signoffresponse.idp aus den Metadaten hinzu

  18. Fügen Sie die Single logout out URL https://n2adgangsstyring.eksterntest-stoettesystemerne.dk/runtime/saml2auth/signoffrequest.idp aus den Metadaten hinzu

  19. Setzen Sie Logout request binding und Logout response binding auf redirect

  20. Setzen Sie die OIOSAML3 Claims, die an Context Handler ausgestellt werden sollen, in Issue claims

Folgende Claims werden am häufigsten verwendet:

  • https://data.gov.dk/model/core/specVersion
  • https://data.gov.dk/model/core/kombitSpecVer
  • https://data.gov.dk/concept/core/nsis/loa
  • https://data.gov.dk/model/core/eid/professional/cvr
  • https://data.gov.dk/model/core/eid/privilegesIntermediate
  1. Fügen Sie das Signaturzertifikat aus den Metadaten in Signature validation certificate hinzu
  2. Optional Certificate validation mode auf Chain trust setzen, wenn das OCES3 Root Zertifikat auf Ihrer Plattform vertraut wird Setzen Sie Certificate revocation mode auf Online
  3. Setzen Sie Authn response sign type auf Sign assertion
  4. Konfigurieren Sie einen Custom IdP issuer, der issuer kann optional mit https://saml. beginnen. Der issuer in diesem Beispiel https://saml.foxids.com/test-corp/context-handler-test-idp/
  5. Wählen Sie Yes in Add logout response location URL in metadata
  6. Wählen Sie Yes in Include the encryption certificate in metadata
  7. In Contact persons in metadata klicken Sie Add contact person und klicken Sie Administrative, um einen administrativen Kontakt hinzuzufügen Context Handler SAML 2.0 application
  8. Klicken Sie Update
  9. Gehen Sie zum Anfang des SAML 2.0 Anwendungsabschnitts
  10. Finden Sie die Test IdP Metadaten in SAML 2.0 Metadata, in diesem Fall https://foxids.com/test-corp/context-handler-idp-test/ch-idp(*)/saml/idpmetadata
    Die Test IdP Metadaten werden zur Konfiguration des Context Handler Identity Providers verwendet.

2 - Gehen Sie anschließend zum Context Handler Verwaltungsportal in Test

  1. Wählen Sie IT systems (DK: IT-systemer)
  2. Klicken Sie Add IT-system (DK: Tilslut it-system)
  3. Füllen Sie die Felder aus und wählen Sie Identity Provider
  4. Gehen Sie zur Identity Provider Registerkarte
  5. Wählen Sie Context Handler mit NSIS und entfernen Sie die Auswahl von Context Handler (ohne NSIS)
  6. Wählen Sie OIOSAML3 als OIOSAML Profil und NSIS Level
  7. Fügen Sie die Test IdP Metadaten URL hinzu, in diesem Fall https://foxids.com/test-corp/context-handler-idp-test/ch-idp(*)/saml/idpmetadata.
  8. Füllen Sie den Rest aus, akzeptieren Sie die Bedingungen und klicken Sie Save (DK: Gem)

Sie müssen als eigene Testbehörde registriert sein (DK: egen test myndighed) in der Testumgebung, um eine Föderationsvereinbarung hinzuzufügen. Eine Föderationsvereinbarung (DK: føderationsaftaler) ist erforderlich, um den Identity Provider in Context Handler zu aktivieren.

3 - Fügen Sie eine Claim Transformation in FoxIDs Control Client hinzu

Erstellen Sie die Claims, die an Context Handler ausgestellt werden müssen, in Claim Transforms.

  1. Gehen Sie zurück zur SAML 2.0 Anwendung Context Handler IdP
  2. Wählen Sie die Registerkarte Claim transforms
  3. Fügen Sie einen Constant Claim https://data.gov.dk/model/core/specVersion mit dem Wert OIO-SAML-3.0 hinzu
  4. Fügen Sie einen Constant Claim https://data.gov.dk/model/core/kombitSpecVer mit dem Wert 2.0 hinzu
  5. Fügen Sie einen Constant Level of assurance (loa) Claim https://data.gov.dk/concept/core/nsis/loa mit z. B. dem Wert Substantial hinzu oder lesen Sie den Claim über die Claims Pipeline

Context Handler SAML 2.0 application registration

  1. Fügen Sie einen Concatenated Claim hinzu, um den NameID http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier Claim zu ersetzen, der eine verkettete Version der CVR Nummer, des Anzeigenamens und der eindeutigen Benutzer ID ist
  2. Wählen Sie Action Replace claim
  3. Verketten Sie Claims:
    • https://data.gov.dk/model/core/eid/professional/cvr
    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier
  4. Setzen Sie Concatenate format string auf C=DK,O={0},CN={1} {2},Serial={3} Context Handler SAML 2.0 application registration
  5. Klicken Sie Update

4 - Fügen Sie SAML 2.0 Claim zu JWT Claim Zuordnungen in FoxIDs Control Client hinzu

FoxIDs konvertiert intern SAML 2.0 Claims zu JWT Claims. Context Handler verwendet einen OIOSAML3 definierten Satz von SAML 2.0 Claims, für die entsprechende JWT Zuordnungen in der Umgebung hinzugefügt werden müssen.

  1. Gehen Sie zur Registerkarte Settings und Claim mappings
  2. Klicken Sie Add claim mapping für alle Claims, die in Schritt 1.20 konfiguriert wurden. Sie können eigene kurze JWT Claim Namen erstellen, wenn kein Standardname existiert (oder die Claim mappings bearbeiten, falls sie bereits existieren)
  3. Klicken Sie Update

5 - Testbenutzer in FoxIDs Control Client hinzufügen

Sie können Testbenutzer mit Testclaims in der Registerkarte Users und der Unterregisterkarte Internal Users hinzufügen.

Testclaims bei Testbenutzern sind JWT basiert und auf SAML 2.0 Claims gemappt.

Jeder Testbenutzer benötigt einen CVR cvr Claim, einen Vorname given_name Claim, einen Nachname family_name Claim und optional einen privilege Claim mit einer base64 codierten DK privilege XML Zeichenkette.

Test user 1

Wenn der Benutzer die Jobfunktionsrolle (DK: Jobfunktionsrolle) http://foxids.com/roles/jobrole/test-corp-admin_access/1 haben soll, wäre das DK privilege XML (mit Test CVR Nummer: 11111111):

<?xml version="1.0" encoding="UTF-8"?>
<bpp:PrivilegeList xmlns:bpp="http://digst.dk/oiosaml/basic_privilege_profile" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
    <PrivilegeGroup Scope="urn:dk:gov:saml:cvrNumberIdentifier:11111111">
        <Privilege>http://foxids.com/roles/jobrole/test-corp-admin_access/1</Privilege>
    </PrivilegeGroup>
</bpp:PrivilegeList>

Ihre Privatsphäre

Wir verwenden Cookies, um Ihre Erfahrung auf unseren Websites zu verbessern. Klicken Sie auf 'Alle Cookies akzeptieren', um der Verwendung von Cookies zuzustimmen. Um nicht notwendige Cookies abzulehnen, klicken Sie auf 'Nur notwendige Cookies'.

Weitere Informationen finden Sie in unserer Datenschutzerklärung