Forbind Microsoft Entra ID med SAML 2.0

Forbind FoxIDs som en ekstern identity provider for Microsoft Entra ID med SAML 2.0.

Ved at konfigurere en OpenID Connect autentifikationsmetode og Microsoft Entra ID som en SAML 2.0 applikation bliver FoxIDs en bridge mellem OpenID Connect og SAML 2.0 og konverterer automatisk JWT (OAuth 2.0) claims til SAML 2.0 claims.

Konfigurer Microsoft Entra ID

Denne guide beskriver hvordan du opsætter FoxIDs som en ekstern identity provider for Microsoft Entra ID. Brugere forbindes til Microsoft Entra ID brugere med deres Immutable ID.

1 - Start med at konfigurere et certifikat i FoxIDs Control Client

Du skal uploade SAML 2.0 signing certifikatet brugt i FoxIDs til Microsoft Entra ID. Derfor er det nødvendigt at bruge et langsigtet certifikat i FoxIDs, fx gyldigt i 3 år.

  1. Vælg fanen Certificates
  2. Klik Change Container type Skift certifikat container type i FoxIDs
  3. Find Self-signed or your certificate og klik Change to this container type
  4. Det self-signed certifikat er gyldigt i 3 år, og du kan valgfrit uploade dit eget certifikat Skift certifikat i FoxIDs

2 - Opret derefter en SAML 2.0 applikation i FoxIDs Control Client

  1. Vælg fanen Applications
  2. Klik New application
  3. Klik Web application (SAML 2.0)
  4. Tilføj Name fx Microsoft Entra ID
  5. Sæt Application issuer til urn:federation:MicrosoftOnline
  6. Sæt Assertion consumer service (ACS) URL til https://login.microsoftonline.com/login.srf Tilføj issuer og ACS i FoxIDs
  7. Klik Create
  8. Klik Change application for at åbne applikationen i redigeringstilstand
  9. Klik Show advanced
  10. Sæt Authn request binding til Post
  11. Sæt NameID format til urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
  12. Sæt Optional logged out URL og Optional single logout URL til https://login.microsoftonline.com/login.srf Sæt binding, NameID format og logout URLs i FoxIDs
  13. Sæt Authn response sign type til Sign assertion Signér assertion
  14. Gå til toppen af applikationen, find sektionen Application information og klik Show more
    • Kopiér IdP Issuer
    • Kopiér Single Sign-On URL
    • Kopiér Single Logout URL
    • Kopiér IdP Signing Certificate i Base64 format
  15. Vælg fanen Claims Transform
  16. Klik Add claim transform og klik Map for at tilføje en NameID claim med brugerens Immutable ID der matcher Microsoft Entra ID brugerens Immutable ID.
  17. Sæt New claim til http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier - som er NameID claim URI
  18. Sæt Select claim til http://schemas.foxids.com/ws/identity/claims/immutableid
  19. Klik Update

Du skal sætte brugerens Immutable ID som en claim i FoxIDs.
For at sætte Immutable ID på en intern bruger, vælg fanen Users og derefter Internal Users, find brugeren og tilføj en claim med claim typen immutable_id og værdien af Immutable ID i Microsoft Entra ID - den skal være base64 kodet.
Claim typen immutable_id er mapppet til SAML 2.0 claim URI http://schemas.foxids.com/ws/identity/claims/immutableid i FoxIDs.

3 - Konfigurer derefter domæneføderation i Microsoft Entra ID med PowerShell

Det er ikke muligt at konfigurere en ekstern SAML 2.0 identity provider i Microsoft Entra ID Portalen. Du skal bruge PowerShell.

  1. Åbn PowerShell som administrator
  2. Installér Microsoft Graph PowerShell modulet hvis det ikke allerede er installeret: Install-Module -Name Microsoft.Graph og vælg A
    • Valgfrit, installer for nuværende bruger: Install-Module Microsoft.Graph -Scope CurrentUser -Force
    • Eller opdatér modulet: Update-Module -Name Microsoft.Graph og vælg A
  3. Forbind til Microsoft Graph:
    Connect-MgGraph -Scopes "Domain.ReadWrite.All,Directory.AccessAsUser.All"
    
  4. Sæt konfigurationsvariablerne:
    $domainName = "your-domain.com" # Domænenavnet der skal konfigureres føderation for
    $idpIssuer = "copied IdP Issuer from FoxIDs"
    $ssoUrl = "copied Single Sign-On URL from FoxIDs"
    $sloUrl = "copied Single Logout URL from FoxIDs"
    $signingCertBase64 = @"
    -----BEGIN CERTIFICATE-----
    copied IdP Signing Certificate from FoxIDs
    -----END CERTIFICATE-----
    "@
    
  5. Konfigurer domæneføderationen:
    New-MgDomainFederationConfiguration -DomainId $domainName `
      -IssuerUri $idpIssuer `
      -PassiveSignInUri $ssoUrl `
      -SignOutUri $sloUrl `
      -SigningCertificate $signingCertBase64 `
      -PreferredAuthenticationProtocol "saml" `
      -FederatedIdpMfaBehavior "acceptIfMfaDoneByFederatedIdp"
    
    FederatedIdpMfaBehavior kan sættes til:
    • acceptIfMfaDoneByFederatedIdp - Entra accepterer MFA fra FoxIDs; hvis FoxIDs ikke udførte MFA, vil Entra gøre det.
    • enforceMfaByFederatedIdp - Hvis en policy kræver MFA, sender Entra brugeren tilbage til FoxIDs for at gennemføre MFA.
    • rejectMfaByFederatedIdp - Entra udfører altid selv MFA; MFA hos FoxIDs ignoreres.
  6. Validér konfigurationen:
    Get-MgDomainFederationConfiguration -DomainId $domainName
    # or
    Get-MgDomain -DomainId $domainName | fl Id, AuthenticationType
    

4a - Konfigurer derefter brugerens Immutable ID i Microsoft Entra ID med PowerShell

  1. Åbn PowerShell som administrator
  2. Installér Microsoft Graph PowerShell modulet hvis det ikke allerede er installeret: Install-Module -Name Microsoft.Graph og vælg A
    • Valgfrit, installer for nuværende bruger: Install-Module Microsoft.Graph -Scope CurrentUser -Force
    • Eller opdatér modulet: Update-Module -Name Microsoft.Graph og vælg A
  3. Forbind til Microsoft Graph: Connect-MgGraph -Scopes "Domain.ReadWrite.All"
  4. Sæt konfigurationsvariablerne:
    $userId = "user-id@my-domain.com" # Brugerens User Principal Name (UPN) eller Object ID
    $immutableId = "immutable-id" # Brugerens Immutable ID - base64 kodet.
    
  5. Konfigurer brugerens Immutable ID:
    Set-MgUser -UserId $userId -OnPremisesImmutableId $immutableId
    
  6. Validér konfigurationen:
    Get-MgUser -UserId $userId | fl Id, OnPremisesImmutableId
    

Hvis brugeren allerede har en Immutable ID, skal du flytte brugeren væk fra det fødererede domæne, sætte Immutable ID og derefter flytte brugeren tilbage til det fødererede domæne.

  1. Flyt brugeren til et ikke-fødereret domæne:
    $userId = "user-id@my-domain.com"
    $userIdTemp = "user-id@yourtenant.onmicrosoft.com"
    Update-MgUser -UserId $userId -UserPrincipalName $userIdTemp
    
  2. Sæt brugerens nye Immutable ID:
    $immutableId = "immutable-id" # Brugerens Immutable ID - base64 kodet.
    Set-MgUser -UserId $userIdTemp -OnPremisesImmutableId $immutableId
    
  3. Flyt brugeren tilbage til det fødererede domæne:
    Update-MgUser -UserId $userIdTemp -UserPrincipalName $userId
    

4b - Eller konfigurer brugerens Immutable ID i Microsoft Entra ID med Graph API

  1. Hent et access token til Microsoft Graph API med de krævede scopes.
  2. Lav et PATCH request til /users/{id | userPrincipalName} endpointet med følgende JSON body:
    {
      "onPremisesImmutableId": "immutable-id"
    }
    
    Erstat immutable-id med den ønskede Immutable ID værdi der matcher NameID claim som sendes fra FoxIDs.
  3. Validér konfigurationen ved at lave et GET request til /users/{id | userPrincipalName} endpointet og kontrollere onPremisesImmutableId property i svaret.

Hvis brugeren allerede har en Immutable ID, skal du flytte brugeren væk fra det fødererede domæne, sætte Immutable ID og derefter flytte brugeren tilbage til det fødererede domæne.

  1. Lav et PATCH request til /users/{id | userPrincipalName} endpointet for at ændre userPrincipalName til et ikke-fødereret domæne.
  2. Lav et PATCH request for at sætte den nye Immutable ID.
  3. Lav et PATCH request for at ændre userPrincipalName tilbage til det fødererede domæne.
  4. Validér konfigurationen ved at lave et GET request til /users/{id | userPrincipalName} endpointet og kontrollere onPremisesImmutableId property i svaret.

Dit privatliv

Vi bruger cookies til at gøre din oplevelse på vores websites bedre. Klik på 'Acceptér alle cookies' for at acceptere brugen af cookies. For at fravælge ikke-nødvendige cookies, klik på 'Kun nødvendige cookies'.

Besøg vores privatlivspolitik for mere