Tilslut Microsoft Entra ID med OpenID Connect

FoxIDs kan tilsluttes Microsoft Entra ID med OpenID Connect og dermed autentificere slutbrugere i en Microsoft Entra ID tenant.

Det er muligt at tilslutte både en single tenant og multitenant Microsoft Entra ID app som en autentificeringsmetode i FoxIDs med OpenID Connect. En mere kompleks case er at læse claims fra access token. Hvis du konfigurerer App roles returneres de i roles claim.

Du kan teste Microsoft Entra ID login med online web app sample (sample docs) ved at klikke Log in og derefter Microsoft Entra ID. Se Microsoft Entra ID sample konfigurationen i FoxIDs Control: https://control.foxids.com/test-corp Få read adgang med brugeren reader@foxids.com og password gEh#V6kSw og vælg derefter Production miljøet og fanen Authentication.

Konfigurer single tenant

Dette afsnit beskriver, hvordan du konfigurerer en Microsoft Entra ID single tenant forbindelse med OpenID Connect Authorization Code flow og PKCE, som er det anbefalede OpenID Connect flow.

1 - Start med at oprette en OpenID Connect autentificeringsmetode i FoxIDs Control Client

  1. Tilføj navnet
  2. Vælg show advanced
  3. Vælg tildes URL binding pattern

Læs redirect URL'er

Det er nu muligt at læse Redirect URL og Front channel logout URL.

2 - Gå derefter til Azure Portal og opret Microsoft Entra ID appen

  1. Tilføj navnet
  2. Vælg single tenant
  3. (Det er en Web applikation) Tilføj FoxIDs autentificeringsmetode Redirect URL
  4. Klik Register
  5. Kopiér Application (client) ID
  6. Kopiér Directory (tenant) ID
  7. Gå til Authentication fanen og tilføj FoxIDs autentificeringsmetode Front channel logout URL, klik save
  8. Gå til Certificates & secrets fanen og klik New client secret og tilføj hemmeligheden
    • Alternativt kan du bruge et client certificate i stedet for en secret
  9. Kopiér client secret værdien (ikke secret ID)
  10. Gå til Token configuration fanen og klik Add optional claims. Vælg ID (for at tilføje claims til ID token) og vælg email, family_name, given_name, ipaddr, preferred_username og klik Add to gange.

3 - Gå tilbage til FoxIDs autentificeringsmetoden i FoxIDs Control Client

  1. Tilføj authority, som er https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0 (f.eks. https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0)
  2. Tilføj Microsoft Entra ID client ID som en custom SP client ID
  3. Tilføj profile og email scopes (muligvis andre eller flere scopes)
  4. Tilføj Microsoft Entra ID client secret værdien som client secret
    • Alternativt, vælg show advanced, ændr client authentication method til private key JWT og upload client certificatet
  5. Vælg use claims from ID token
  6. Tilføj de claims der overføres fra autentificeringsmetoden til applikationsregistreringerne. F.eks. preferred_username, email, name, given_name, family_name, oid, ipaddr og evt. access_token claim for at overføre Microsoft Entra ID access token til applikationsregistreringer.
  7. Vælg No i Front channel logout session required
  8. Klik create

Det var det.

Det er muligt at se claims returneret fra Microsoft Entra ID appen i FoxIDs log ved at ændre log indstillingerne til at logge claims og evt. logge hele beskeden og derefter dekode de modtagne JWTs

Den nye autentificeringsmetode kan nu vælges som en tilladt autentificeringsmetode i en applikationsregistrering. Applikationsregistreringen kan læse claims fra autentificeringsmetoden. Det er muligt at tilføje access_token claim for at inkludere Microsoft Entra ID access token som en claim i det udstedte access token.

Konfigurer multitenant

Dette afsnit beskriver, hvordan du konfigurerer en Microsoft Entra ID multitenant forbindelse med OpenID Connect Authorization Code flow og PKCE.

Multitenant konfigurationen afviger lidt fra single tenant konfigurationen.

1 - Microsoft Entra ID Portalen

  1. Under oprettelse af app vælg multitenant

2 - FoxIDs autentificeringsmetoden i FoxIDs Control Client

  1. Tilføj authority https://login.microsoftonline.com/common/v2.0
  2. Vælg edit issuer
  3. Ændr issuer til https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0 (f.eks. https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0), hvor du tilføjer Microsoft Entra ID tenant ID. Du kan eventuelt tilføje flere issuers og dermed stole på flere Azure tenants. Eller du kan bruge wildcard * uden andet for at acceptere alle issuers, den accepterede issuer tilføjes i auth_method_issuer claim.

Læs claims fra access token

Hvis du vil læse claims fra access token skal du tilføje én Microsoft Entra ID app mere for en resource (API). Hvor den første Microsoft Entra ID app er for en client.

1 - I Azure Portal

  1. Opret resource Microsoft Entra ID appen
  2. Eksponer et scope fra resource appen og giv client appen resource app scope

2 - Gå derefter til FoxIDs Control Client

  1. Vælg show advanced
  2. Vælg edit issuer
  3. Tilføj access token issuer https://sts.windows.net/{Microsoft Entra ID tenant ID}/ (f.eks. https://sts.windows.net/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/), hvor du tilføjer Microsoft Entra ID tenant ID
  4. Tilføj resource app scope som et scope i FoxIDs autentificeringsmetode klienten
  5. Læs claims fra access token ved ikke at vælge use claims from ID token

Ved dette udstedes access token af samme OP (IdP) og accepteres derfor.

App roles

Hvis du konfigurerer App roles på Microsoft Entra ID appen under App roles fanen. Rollerne returneres i roles claim i ID token for brugere der er tildelt rollen.

Hvis du læser claims fra access token skal rollerne defineres i Microsoft Entra ID appen for en resource (API).

I FoxIDs Control Client

  1. Rollerne returneres i en roles claim som kan ændres til en role claim (uden s) ved at tilføje en map claims transformation. Skriv role i new claim, sæt action til replace claim og skriv roles i select claim
  2. Tilføj role claim til claims der overføres fra autentificeringsmetoden til applikationsregistreringerne

Husk også at tilføje role claim i applikationsregistreringen for at den udstedes til applikationen.

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