Verbind Microsoft Entra ID met OpenID Connect

FoxIDs kan met Microsoft Entra ID worden verbonden via OpenID Connect en daardoor eindgebruikers authenticeren in een Microsoft Entra ID tenant.

Het is mogelijk om zowel een single tenant als multitenant Microsoft Entra ID app te verbinden als authenticatiemethode in FoxIDs met OpenID Connect. Een complexere case is om claims uit het access token te lezen. Als je App roles configureert, worden die geretourneerd in de roles claim.

Je kunt Microsoft Entra ID login testen met de online web app sample (sample docs) door op Log in en daarna Microsoft Entra ID te klikken. Bekijk de Microsoft Entra ID sample configuratie in FoxIDs Control: https://control.foxids.com/test-corp Vraag read toegang aan met gebruiker reader@foxids.com en wachtwoord gEh#V6kSw en selecteer daarna de Production omgeving en het tabblad Authentication.

Single tenant configureren

Dit hoofdstuk beschrijft hoe je een Microsoft Entra ID single tenant verbinding configureert met OpenID Connect Authorization Code flow en PKCE, wat de aanbevolen OpenID Connect flow is.

1 - Begin met het maken van een OpenID Connect authenticatiemethode in FoxIDs Control Client

  1. Voeg de naam toe
  2. Selecteer show advanced
  3. Selecteer tildes URL binding pattern

Lees redirect URLs

Het is nu mogelijk om Redirect URL en Front channel logout URL te lezen.

2 - Ga daarna naar Azure Portal en maak de Microsoft Entra ID app

  1. Voeg de naam toe
  2. Selecteer single tenant
  3. (Het is een Web applicatie) Voeg de FoxIDs authenticatiemethode Redirect URL toe
  4. Klik Register
  5. Kopieer de Application (client) ID
  6. Kopieer de Directory (tenant) ID
  7. Ga naar het tabblad Authentication en voeg de FoxIDs authenticatiemethode Front channel logout URL toe, klik save
  8. Ga naar het tabblad Certificates & secrets en klik New client secret en voeg het secret toe
    • Optioneel, gebruik een client certificate in plaats van een secret
  9. Kopieer de client secret waarde (niet de secret ID)
  10. Ga naar het tabblad Token configuration en klik Add optional claims. Selecteer ID (voor claims in het ID token) en selecteer email, family_name, given_name, ipaddr, preferred_username en klik twee keer op Add.

3 - Ga terug naar de FoxIDs authenticatiemethode in FoxIDs Control Client

  1. Voeg de authority toe, dat is https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0 (bijv. https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0)
  2. Voeg de Microsoft Entra ID client ID toe als custom SP client ID
  3. Voeg de profile en email scopes toe (mogelijk andere of meer scopes)
  4. Voeg de Microsoft Entra ID client secret waarde toe als client secret
    • Optioneel, kies show advanced, wijzig client authentication method naar private key JWT en upload het client certificate
  5. Selecteer use claims from ID token
  6. Voeg de claims toe die worden overgedragen van de authenticatiemethode naar de applicatieregistraties. Bijv. preferred_username, email, name, given_name, family_name, oid, ipaddr en eventueel de access_token claim om het Microsoft Entra ID access token door te geven.
  7. Selecteer No bij Front channel logout session required
  8. Klik create

Dat is alles.

Je kunt de claims die door de Microsoft Entra ID app worden geretourneerd zien in de FoxIDs log door de log settings aan te passen om claims te loggen en optioneel de hele message te loggen en daarna de ontvangen JWTs te decoderen

De nieuwe authenticatiemethode kan nu worden geselecteerd als toegestane authenticatiemethode in een applicatieregistratie. De applicatieregistratie kan de claims lezen uit de authenticatiemethode. Het is mogelijk om de access_token claim toe te voegen om het Microsoft Entra ID access token op te nemen als claim in het uitgegeven access token.

Multitenant configureren

Dit hoofdstuk beschrijft hoe je een Microsoft Entra ID multitenant verbinding configureert met OpenID Connect Authorization Code flow en PKCE.

De multitenant configuratie wijkt iets af van de single tenant configuratie.

1 - Het Microsoft Entra ID portal

  1. Selecteer multitenant tijdens het aanmaken van de app

2 - De FoxIDs authenticatiemethode in FoxIDs Control Client

  1. Voeg de authority https://login.microsoftonline.com/common/v2.0 toe
  2. Selecteer edit issuer
  3. Wijzig de issuer naar https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0 (bijv. https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0), waarbij je de Microsoft Entra ID tenant ID toevoegt. Je kunt meerdere issuers toevoegen en zo meerdere Azure tenants vertrouwen. Of je kunt het wildcard * gebruiken om alle issuers te accepteren, de geaccepteerde issuer wordt toegevoegd in de auth_method_issuer claim.

Claims uit access token lezen

Als je claims uit het access token wilt lezen, moet je nog een Microsoft Entra ID app toevoegen voor een resource (API). Waar de eerste Microsoft Entra ID app voor een client is.

1 - In Azure Portal

  1. Maak de resource Microsoft Entra ID app
  2. Exposeer een scope vanuit de resource app en geef de client app de resource app scope

2 - Ga daarna naar FoxIDs Control Client

  1. Selecteer show advanced
  2. Selecteer edit issuer
  3. Voeg de access token issuer toe https://sts.windows.net/{Microsoft Entra ID tenant ID}/ (bijv. https://sts.windows.net/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/), waarbij je de Microsoft Entra ID tenant ID toevoegt
  4. Voeg de resource app scope toe als scope in de FoxIDs authenticatiemethode client
  5. Lees claims uit het access token door use claims from ID token niet te selecteren

Hierdoor wordt het access token uitgegeven door dezelfde OP (IdP) en wordt het geaccepteerd.

App roles

Als je App roles configureert op de Microsoft Entra ID app onder het tabblad App roles. De roles worden teruggegeven in de roles claim in het ID token voor gebruikers die aan de role zijn toegewezen.

Als je claims uit het access token leest moeten de roles worden gedefinieerd in de Microsoft Entra ID app voor een resource (API).

In FoxIDs Control Client

  1. De roles worden teruggegeven in een roles claim die kan worden gewijzigd naar een role claim (zonder s) door een map claims transformatie toe te voegen. Schrijf role in new claim, zet action op replace claim en schrijf roles in select claim
  2. Voeg de role claim toe aan de claims die worden overgedragen van de authenticatiemethode naar de applicatieregistraties

Vergeet niet de role claim ook toe te voegen in de applicatieregistratie zodat deze aan de applicatie wordt uitgegeven.

Uw privacy

We gebruiken cookies om uw ervaring op onze websites te verbeteren. Klik op de knop 'Alle cookies accepteren' om akkoord te gaan met het gebruik van cookies. Om niet-noodzakelijke cookies te weigeren, klikt u op 'Alleen noodzakelijke cookies'.

Bezoek onze privacyverklaring voor meer informatie