Delen via


Web-aanmelding met OpenID Connect in Azure Active Directory B2C

Belangrijk

Vanaf 1 mei 2025 is Azure AD B2C niet meer beschikbaar voor nieuwe klanten. Meer informatie vindt u in onze veelgestelde vragen.

OpenID Connect is een verificatieprotocol dat is gebouwd op OAuth 2.0, dat kan worden gebruikt om gebruikers veilig aan te melden bij webtoepassingen. Met behulp van de Azure Active Directory B2C-implementatie (Azure AD B2C) van OpenID Connect kunt u registratie uitbesteden, aanmelden en andere identiteitsbeheerervaringen in uw webtoepassingen naar Microsoft Entra ID. In deze handleiding ziet u hoe u dit op een taalonafhankelijke manier kunt doen. Hierin wordt beschreven hoe u HTTP-berichten verzendt en ontvangt zonder gebruik te maken van onze opensource-bibliotheken.

Notitie

De meeste opensource-verificatiebibliotheken verkrijgen en valideren de JWT's voor uw toepassing. We raden u aan deze opties te verkennen in plaats van uw eigen code te implementeren. Zie Overzicht van de MSAL-(Microsoft Authentication Library) en Microsoft Identity Web Authentication Libraryvoor meer informatie.

OpenID Connect- breidt het OAuth 2.0-- autorisatieprotocol uit voor gebruik als verificatieprotocol. Met dit verificatieprotocol kunt u eenmalige aanmelding uitvoeren. Het introduceert het concept van een ID-token, waarmee de client de identiteit van de gebruiker kan verifiëren en basisprofielgegevens over de gebruiker kan verkrijgen.

Met OpenID Connect kunnen toepassingen ook veilig toegangstokens verkrijgen. U kunt toegangstokens gebruiken voor toegang tot resources die de autorisatieserver beveiligd. We raden OpenID Connect aan als u een webtoepassing bouwt die u op een server host en toegankelijk is via een browser. Zie het Overzicht van tokens in Azure Active Directory B2C voor meer informatie over tokens

Azure AD B2C breidt het standaard OpenID Connect-protocol uit om meer te doen dan eenvoudige verificatie en autorisatie. Het introduceert de gebruikersstroomparameter, waarmee u OpenID Connect kunt gebruiken om gebruikerservaringen toe te voegen aan uw toepassing, zoals registreren, aanmelden en profielbeheer.

Verificatieaanvragen verzenden

Wanneer uw webtoepassing de gebruiker moet verifiëren en een gebruikersstroom moet uitvoeren, kan deze de gebruiker doorsturen naar het /authorize-eindpunt. De gebruiker neemt actie, afhankelijk van de gebruikersstroom.

In deze aanvraag geeft de client de machtigingen aan die deze moet verkrijgen van de gebruiker in de parameter scope en geeft de gebruikersstroom op die moet worden uitgevoerd. Als u wilt zien hoe de aanvraag werkt, plakt u de aanvraag in uw browser en voert u deze uit. Vervangen:

  • {tenant} met de naam van uw tenant.
  • 00001111-aaaa-2222-bbbb-3333cccc4444 met de app-ID van een -toepassing die u hebt geregistreerd in uw tenant.
  • {application-id-uri}/{scope-name} met de URI van de toepassings-id en het bereik van een toepassing die u hebt geregistreerd in uw tenant.
  • {policy} met de beleidsnaam die u in uw tenant hebt, zoals bijvoorbeeld b2c_1_sign_in.
GET /{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/authorize?
Host: {tenant}.b2clogin.com

client_id=00001111-aaaa-2222-bbbb-3333cccc4444
&response_type=code+id_token
&redirect_uri=https%3A%2F%2Fjwt.ms%2F
&response_mode=fragment
&scope=openid%20offline_access%20{application-id-uri}/{scope-name}
&state=arbitrary_data_you_can_receive_in_the_response
&nonce=12345
Maatstaf Verplicht Beschrijving
{huurder} Ja Naam van uw Azure AD B2C-tenant. Als u een aangepast domein gebruikt, vervangt u tenant.b2clogin.com door uw domein, zoals fabrikam.com.
Beleid Ja De gebruikersstroom of het beleid dat door de app wordt uitgevoerd. Geef de naam op van een gebruikersstroom die u maakt in uw Azure AD B2C-tenant. Bijvoorbeeld: b2c_1_sign_in, b2c_1_sign_upof b2c_1_edit_profile.
client-id Ja De applicatie-ID die de Azure portal toegewezen aan uw toepassing.
Nonce Aanbevolen Een waarde die is opgenomen in de aanvraag (gegenereerd door de toepassing) die als claim is opgenomen in het resulterende id-token. De toepassing kan deze waarde vervolgens controleren om het opnieuw afspelen van tokens te beperken. De waarde is doorgaans een gerandomiseerde unieke tekenreeks die kan worden gebruikt om de oorsprong van de aanvraag te identificeren.
reactietype Ja Moet een id-token bevatten voor OpenID Connect. Als uw webtoepassing ook tokens nodig heeft voor het aanroepen van een web-API, kunt u code+id_tokengebruiken.
omvang Ja Een door spaties gescheiden lijst van scopes. Het openid bereik geeft een machtiging aan om de gebruiker aan te melden en gegevens over de gebruiker op te halen in de vorm van id-tokens. Het offline_access bereik is optioneel voor webtoepassingen. Het geeft aan dat uw toepassing een vernieuwingstoken nodig heeft voor uitgebreide toegang tot resources. Hiermee https://{tenant-name}/{app-id-uri}/{scope} wordt een machtiging voor beveiligde resources aangegeven, zoals een web-API. Zie Een toegangstoken aanvragenvoor meer informatie.
aanmoediging Nee. Het type gebruikersinteractie dat u nodig hebt. De enige geldige waarde op dit moment is login, waardoor de gebruiker zijn referenties voor die aanvraag invoert.
terugstuur-URL Ja De redirect_uri parameter van uw toepassing, waarbij de server verificatiereacties naar uw toepassing verzendt. Deze moet exact overeenkomen met een van de redirect_uri parameters die u hebt geregistreerd in Azure Portal, behalve dat deze URL-codering moet hebben.
reactiemodus Nee. De methode die wordt gebruikt om de resulterende autorisatiecode terug te sturen naar uw toepassing. Dit kan query, form_postof fragmentzijn. We raden u aan de form_post antwoordmodus te gebruiken voor de beste beveiliging.
staat Nee. Een waarde die u kunt opnemen in de aanvraag die de autorisatieserver retourneert in het tokenantwoord. Het kan een tekenreeks zijn van elke gewenste inhoud. Een willekeurig gegenereerde unieke waarde wordt doorgaans gebruikt om vervalsingsaanvallen op meerdere sites te voorkomen. De status wordt ook gebruikt om informatie over de status van de gebruiker in de toepassing te coderen voordat de verificatieaanvraag is opgetreden, zoals de pagina waarop ze zich bevonden. Als u niet meerdere omleidings-URL's wilt registreren in Azure Portal, kunt u de parameter state gebruiken om reacties in uw toepassing te onderscheiden van de Azure AD B2C-service vanwege verschillende aanvragen.
inlog-hint Nee. Kan worden gebruikt om het aanmeldingsnaamveld van de aanmeldingspagina vooraf in te vullen. Voor meer informatie, zie "De aanmeldingsnaam vooraf ingevuld" .
domein_hint Nee. Biedt een hint voor Azure AD B2C over de id-provider voor sociale netwerken die moet worden gebruikt voor aanmelding. Als er een geldige waarde is opgenomen, gaat de gebruiker rechtstreeks naar de aanmeldingspagina van de id-provider. Zie Aanmelding omleiden naar een sociale providervoor meer informatie.
Aangepaste parameters Nee. Aangepaste parameters die kunnen worden gebruikt met aangepaste beleidsregels . Bijvoorbeeld dynamische URI voor aangepaste pagina-inhoudof sleutel-waarde claims-verwerkers.

Op dit moment wordt de gebruiker gevraagd de werkstroom te voltooien. De gebruiker moet mogelijk zijn of haar gebruikersnaam en wachtwoord invoeren, zich aanmelden met een sociale identiteit of zich aanmelden voor de directory. Er kan een ander aantal stappen zijn, afhankelijk van de manier waarop de gebruikersstroom is gedefinieerd.

Nadat de gebruiker de gebruikersstroom heeft voltooid, wordt er een antwoord geretourneerd naar uw toepassing op de aangegeven redirect_uri parameter, met behulp van de methode die u opgeeft in de parameter response_mode. Het antwoord is hetzelfde voor elk van de voorgaande gevallen, onafhankelijk van de gebruikersstroom.

Een geslaagd antwoord met behulp van response_mode=fragment ziet er als volgt uit:

GET https://jwt.ms/#
id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...
&code=AwABAAAAvPM1KaPlrEqdFSBzjqfTGBCmLdgfSTLEMPGYuNHSUYBrq...
&state=arbitrary_data_you_can_receive_in_the_response
Maatstaf Beschrijving
id_token (identificatietoken) Het id-token dat de toepassing heeft aangevraagd. U kunt het id-token gebruiken om de identiteit van de gebruiker te verifiëren en een sessie met de gebruiker te starten.
code De autorisatiecode die de toepassing heeft aangevraagd, als u response_type=code+id_tokenhebt gebruikt. De toepassing kan de autorisatiecode gebruiken om een toegangstoken aan te vragen voor een doelresource. Autorisatiecodes verlopen doorgaans na ongeveer 10 minuten.
staat Als een state-parameter is opgenomen in de aanvraag, zou dezelfde waarde moeten verschijnen in de reactie. De toepassing moet controleren of de state waarden in de aanvraag en het antwoord identiek zijn.

Foutreacties kunnen ook worden verzonden naar de parameter redirect_uri, zodat de toepassing deze op de juiste manier kan verwerken:

GET https://jwt.ms/#
error=access_denied
&error_description=AADB2C90091%3a+The+user+has+cancelled+entering+self-asserted+information.%0d%0aCorrelation+ID%3a+xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx%0d%0aTimestamp%3a+xxxx-xx-xx+xx%3a23%3a27Z%0d%0a
&state=arbitrary_data_you_can_receive_in_the_response
Maatstaf Beschrijving
fout Een code die kan worden gebruikt om de typen fouten te classificeren die optreden.
foutbeschrijving Een specifiek foutbericht waarmee de hoofdoorzaak van een verificatiefout kan worden geïdentificeerd.
staat Als een state-parameter is opgenomen in de aanvraag, zou dezelfde waarde moeten verschijnen in de reactie. De toepassing moet controleren of de state waarden in de aanvraag en het antwoord identiek zijn.

Het id-token valideren

Het ontvangen van een id-token is niet voldoende om de gebruiker te verifiëren. Valideer de handtekening van het id-token en controleer de claims in het token volgens de vereisten van uw toepassing. Azure AD B2C maakt gebruik van JSON-webtokens (JWT's) en openbare-sleutelcryptografie om tokens te ondertekenen en te controleren of ze geldig zijn.

Notitie

De meeste opensource-verificatiebibliotheken valideren de JWT's voor uw toepassing. We raden u aan deze opties te verkennen in plaats van uw eigen validatielogica te implementeren. Zie Overzicht van de MSAL-(Microsoft Authentication Library) en Microsoft Identity Web Authentication Libraryvoor meer informatie.

Azure AD B2C heeft een OpenID Connect-metagegevenseindpunt, waarmee een toepassing tijdens runtime informatie over Azure AD B2C kan ophalen. Deze informatie omvat eindpunten, inhoud van tokens en tokenondertekeningssleutels. Er is een JSON-metagegevensdocument voor elke gebruikersstroom in uw B2C-tenant. Het metagegevensdocument voor de b2c_1_sign_in gebruikersstroom in fabrikamb2c.onmicrosoft.com bevindt zich bijvoorbeeld op:

https://fabrikamb2c.b2clogin.com/fabrikamb2c.onmicrosoft.com/b2c_1_sign_in/v2.0/.well-known/openid-configuration

Een van de eigenschappen van dit configuratiedocument is jwks_uri, waarvan de waarde voor dezelfde gebruikersstroom zou zijn:

https://fabrikamb2c.b2clogin.com/fabrikamb2c.onmicrosoft.com/b2c_1_sign_in/discovery/v2.0/keys

U hebt twee opties om te bepalen welke gebruikersstroom is gebruikt om een id-token te ondertekenen. Eerst wordt de naam van de gebruikersstroom opgenomen in de acr-claim in het ID-token. Zie -claim die de gebruikersstroomvertegenwoordigt. U kunt de gebruikersstroom ook coderen in de waarde van de parameter state wanneer u de aanvraag uitgeeft en deze vervolgens decoderen om te bepalen welke gebruikersstroom is gebruikt. Beide methoden zijn geldig.

Nadat u het metagegevensdocument hebt verkregen van het OpenID Connect-metagegevenseindpunt, kunt u de openbare RSA 256-sleutels gebruiken om de handtekening van het id-token te valideren. Er kunnen meerdere sleutels worden vermeld op dit eindpunt, elk geïdentificeerd door een kid claim. De header van het id-token bevat ook een kid claim, die aangeeft welke van deze sleutels is gebruikt om het id-token te ondertekenen.

Als u de tokens van Azure AD B2C wilt controleren, moet u de openbare sleutel genereren met behulp van de exponent(e) en modulus(n). Hiervoor moet u leren hoe u de openbare sleutel genereert in een programmeertaal van uw keuze. De officiële documentatie over het genereren van openbare sleutels met het RSA-protocol vindt u hier: https://tools.ietf.org/html/rfc3447#section-3.1

Nadat u de handtekening van het id-token hebt gevalideerd, zijn er verschillende claims die u moet verifiëren. Bijvoorbeeld:

  • Valideer de nonce claim om herhalingsaanvallen van tokens te voorkomen. De waarde moet zijn wat u hebt opgegeven in de aanmeldingsaanvraag.
  • Valideer de aud claim om ervoor te zorgen dat het id-token is uitgegeven voor uw toepassing. De waarde moet de toepassings-id van uw toepassing zijn.
  • Valideer de iat en exp claims om ervoor te zorgen dat het id-token niet is verlopen.

Er zijn ook nog enkele validaties die u moet uitvoeren. De validaties worden gedetailleerd beschreven in de OpenID Connect Core Spec. Mogelijk wilt u ook meer claims valideren, afhankelijk van uw scenario. Enkele veelvoorkomende validaties zijn:

  • Zorg ervoor dat de gebruiker/organisatie zich heeft geregistreerd voor de toepassing.
  • Zorg ervoor dat de gebruiker over de juiste autorisatie/bevoegdheden beschikt.
  • Zorg ervoor dat er een bepaalde verificatiesterkte is opgetreden, zoals Meervoudige Verificatie van Microsoft Entra.

Nadat het id-token is gevalideerd, kunt u een sessie met de gebruiker starten. U kunt de claims in het id-token gebruiken om informatie over de gebruiker in uw toepassing te verkrijgen. Gebruiken voor deze informatie omvatten weergave, registratie en autorisatie.

Een token ophalen

Als u uw webtoepassing nodig hebt om alleen gebruikersstromen uit te voeren, kunt u de volgende secties overslaan. Deze secties zijn alleen van toepassing op webtoepassingen die geverifieerde aanroepen moeten doen naar een web-API, die wordt beveiligd door Azure AD B2C zelf.

U kunt de autorisatiecode die u hebt verkregen (met behulp van response_type=code+id_token) inwisselen voor een token naar de gewenste resource door een POST aanvraag naar het /token eindpunt te verzenden. In Azure AD B2C kunt u toegangstokens aanvragen voor andere API's zoals gebruikelijk door hun bereik(en) in de aanvraag op te geven.

U kunt ook een toegangstoken aanvragen voor de eigen back-endweb-API van uw app. In dit geval gebruikt u de client-id van de app als het aangevraagde bereik, wat resulteert in een toegangstoken met die client-id als de 'doelgroep':

POST https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/token HTTP/1.1
Host: {tenant}.b2clogin.com
Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code
&client_id=00001111-aaaa-2222-bbbb-3333cccc4444
&scope=00001111-aaaa-2222-bbbb-3333cccc4444 offline_access
&code=AwABAAAAvPM1KaPlrEqdFSBzjqfTGBCmLdgfSTLEMPGYuNHSUYBrq...
&redirect_uri=urn:ietf:wg:oauth:2.0:oob
Maatstaf Verplicht Beschrijving
{huurder} Ja Naam van uw Azure AD B2C-tenant
Beleid Ja De gebruikersstroom die is gebruikt om de autorisatiecode te verkrijgen. U kunt in deze aanvraag geen andere gebruikersstroom gebruiken. Voeg deze parameter toe aan de querytekenreeks, niet aan de POST-hoofdtekst.
client-id Ja De applicatie-ID die de Azure portal toegewezen aan uw toepassing.
klantgeheim Ja, in Web Apps Het applicatiegeheim dat is gegenereerd in de Azure portal. Clientgeheimen worden gebruikt in deze stroom voor web-app-scenario's, waarbij de client veilig een clientgeheim kan opslaan. Voor systeemeigen app-scenario's (openbare client) kunnen clientgeheimen niet veilig worden opgeslagen en daarom niet gebruikt in dit proces. Als u een clientgeheim gebruikt, wijzigt u het periodiek.
code Ja De autorisatiecode die u hebt verkregen aan het begin van de gebruikersstroom.
toekennings_type Ja Het type machtiging, dat bij de autorisatiecode-stroom authorization_code moet zijn.
terugstuur-URL Nee. De redirect_uri parameter van de toepassing waar u de autorisatiecode hebt ontvangen.
omvang Nee. Een door spaties gescheiden lijst van scopes. Het openid bereik geeft een machtiging aan om de gebruiker aan te melden en gegevens over de gebruiker op te halen in de vorm van id_token parameters. Het kan worden gebruikt om tokens op te halen naar de eigen back-endweb-API van uw toepassing, die wordt vertegenwoordigd door dezelfde toepassings-id als de client. Het offline_access-bereik geeft aan dat uw toepassing een vernieuwings-token nodig heeft voor uitgebreide toegang tot middelen.

Een succesvol tokenantwoord ziet er als volgt uit:

{
    "not_before": "1442340812",
    "token_type": "Bearer",
    "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...",
    "scope": "00001111-aaaa-2222-bbbb-3333cccc4444 offline_access",
    "expires_in": "3600",
    "expires_on": "1644254945",
    "refresh_token": "AAQfQmvuDy8WtUv-sd0TBwWVQs1rC-Lfxa_NDkLqpg50Cxp5Dxj0VPF1mx2Z...",
}
Maatstaf Beschrijving
niet_vóór Het epoch-tijdstip waarop het token geldig wordt.
token-type De waarde van het tokentype. Bearer is het enige type dat wordt ondersteund.
toegangstoken De ondertekende JWT die u hebt aangevraagd.
omvang De geldige toepassingsgebieden voor het token.
verloopt_in De tijdsduur waarop het toegangstoken geldig is (in seconden).
vervalt_op Het tijdstip waarop het toegangstoken ongeldig wordt.
vernieuw_token Een OAuth 2.0-vernieuwingstoken. De toepassing kan dit token gebruiken om meer tokens te verkrijgen nadat het huidige token is verlopen. Vernieuwingstokens kunnen worden gebruikt om de toegang tot resources gedurende langere tijd te behouden. Het bereik offline_access moet zijn gebruikt in zowel de autorisatie- als tokenaanvragen om een vernieuwingstoken te kunnen ontvangen.

Foutberichten zien er als volgt uit:

{
    "error": "invalid_grant",
    "error_description": "AADB2C90080: The provided grant has expired. Please re-authenticate and try again. Current time: xxxxxxxxxx, Grant issued time: xxxxxxxxxx, Grant expiration time: xxxxxxxxxx\r\nCorrelation ID: xxxxxxxx-xxxx-xxxX-xxxx-xxxxxxxxxxxx\r\nTimestamp: xxxx-xx-16 xx:10:52Z\r\n"
}
Maatstaf Beschrijving
fout Een code die kan worden gebruikt om typen fouten te classificeren die optreden.
foutbeschrijving Een bericht dat kan helpen bij het identificeren van de hoofdoorzaak van een verificatiefout.

Het token gebruiken

Nadat u een toegangstoken hebt verkregen, kunt u het token gebruiken in aanvragen voor uw back-endweb-API's door het op te nemen in de Authorization-header:

GET /tasks
Host: mytaskwebapi.com
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...

Het token vernieuwen

Toegangstokens en id-tokens zijn kortlevend. Nadat ze zijn verlopen, moet u ze vernieuwen om toegang te blijven krijgen tot resources. Wanneer u het toegangstoken vernieuwt, retourneert Azure AD B2C een nieuw token. Het vernieuwde toegangstoken heeft nbf bijgewerkt (niet eerder), iat (uitgegeven op) en exp claimwaarden (vervaldatum). Alle andere claimwaarden zijn vergelijkbaar met die in het vorige toegangstoken.

Vernieuw een token door een andere POST aanvraag in te dienen bij het /token-eindpunt. Geef deze keer de parameter refresh_token op in plaats van de parameter code:

POST https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/token HTTP/1.1
Host: {tenant}.b2clogin.com
Content-Type: application/x-www-form-urlencoded

grant_type=refresh_token
&client_id=00001111-aaaa-2222-bbbb-3333cccc4444
&scope=openid offline_access
&refresh_token=AwABAAAAvPM1KaPlrEqdFSBzjqfTGBCmLdgfSTLEMPGYuNHSUYBrq...
&redirect_uri=urn:ietf:wg:oauth:2.0:oob
Maatstaf Verplicht Beschrijving
{huurder} Ja Naam van uw Azure AD B2C-tenant
Beleid Ja De gebruikersstroom die is gebruikt om het oorspronkelijke refresh token te verkrijgen. U kunt in deze aanvraag geen andere gebruikersstroom gebruiken. Voeg deze parameter toe aan de querytekenreeks, niet aan de POST-hoofdtekst.
client-id Ja De applicatie-ID die de Azure portal toegewezen aan uw toepassing.
klantgeheim Ja, in Web Apps Het applicatiegeheim dat is gegenereerd in de Azure portal. Clientgeheimen worden gebruikt in deze stroom voor web-app-scenario's, waarbij de client veilig een clientgeheim kan opslaan. Voor systeemeigen app-scenario's (openbare client) kunnen clientgeheimen niet veilig worden opgeslagen, dus niet gebruikt voor deze aanroep. Als u een client secret gebruikt, verander deze dan regelmatig.
toekennings_type Ja Het type toekenning, dat voor dit deel van de autorisatiestroom refresh_token moet zijn.
vernieuw_token Ja Het oorspronkelijke vernieuwingstoken dat is verkregen in het tweede deel van het proces. Het offline_access bereik moet worden gebruikt in zowel de autorisatie- als tokenaanvragen om een vernieuwingstoken te kunnen ontvangen.
terugstuur-URL Nee. De redirect_uri parameter van de toepassing waar u de autorisatiecode hebt ontvangen.
omvang Nee. Een door spaties gescheiden lijst van scopes. Het openid bereik geeft een machtiging aan om de gebruiker aan te melden en gegevens over de gebruiker op te halen in de vorm van id-tokens. Het kan worden gebruikt om tokens te verzenden naar de eigen back-endweb-API van uw toepassing, die wordt vertegenwoordigd door dezelfde toepassings-id als de client. Het offline_access-bereik geeft aan dat uw toepassing een vernieuwings-token nodig heeft voor uitgebreide toegang tot middelen.

Een succesvol tokenantwoord ziet er als volgt uit:

{
    "not_before": "1442340812",
    "token_type": "Bearer",
    "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...",
    "scope": "00001111-aaaa-2222-bbbb-3333cccc4444 offline_access",
    "expires_in": "3600",
    "refresh_token": "AAQfQmvuDy8WtUv-sd0TBwWVQs1rC-Lfxa_NDkLqpg50Cxp5Dxj0VPF1mx2Z...",
    "refresh_token_expires_in": "1209600"
}
Maatstaf Beschrijving
niet_vóór Het epoch-tijdstip waarop het token geldig wordt.
token-type De waarde van het tokentype. Bearer is het enige type dat wordt ondersteund.
toegangstoken De ondertekende JWT die is aangevraagd.
omvang De geldige toepassingsgebieden voor het token.
verloopt_in De tijdsduur waarop het toegangstoken geldig is (in seconden).
vernieuw_token Een OAuth 2.0-vernieuwingstoken. De toepassing kan dit token gebruiken om extra tokens te verkrijgen nadat het huidige token is verlopen. Vernieuwingstokens kunnen worden gebruikt om de toegang tot resources gedurende langere tijd te behouden.
vernieuwings-token_verloopt_in De tijdsduur waarop het vernieuwingstoken geldig is (in seconden).

Foutberichten zien er als volgt uit:

{
    "error": "invalid_grant",
    "error_description": "AADB2C90129: The provided grant has been revoked. Please reauthenticate and try again.\r\nCorrelation ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\r\nTimestamp: xxxx-xx-xx xx:xx:xxZ\r\n",
}
Maatstaf Beschrijving
fout Een code die kan worden gebruikt om typen fouten te classificeren die optreden.
foutbeschrijving Een bericht dat kan helpen bij het identificeren van de hoofdoorzaak van een verificatiefout.

Een afmeldingsaanvraag verzenden

Wanneer u de gebruiker wilt afmelden bij de toepassing, is het niet voldoende om de cookies van de toepassing te wissen of de sessie met de gebruiker op een andere manier te beëindigen. Leid de gebruiker om naar Azure AD B2C om zich af te melden. Als u dit niet doet, kan de gebruiker mogelijk opnieuw authenticeren bij uw toepassing zonder de inloggegevens opnieuw in te voeren. Zie Azure AD B2C-sessiegedragvoor meer informatie.

Als u de gebruiker wilt afmelden, moet u de gebruiker omleiden naar de end_session_endpoint die wordt vermeld in het document met openID Connect-metagegevens dat eerder is beschreven:

GET https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/logout?post_logout_redirect_uri=https%3A%2F%2Fjwt.ms%2F
Maatstaf Verplicht Beschrijving
{huurder} Ja Naam van uw Azure AD B2C-tenant. Als u een aangepast domein gebruikt, vervangt u tenant.b2clogin.com door uw domein, zoals fabrikam.com.
Beleid Ja De gebruikersstroom die u opgeeft in de autorisatieaanvraag. Als de gebruiker zich bijvoorbeeld heeft aangemeld met de b2c_1_sign_in gebruikersstroom, geeft u b2c_1_sign_in op in de afmeldingsaanvraag.
ID-token-aanwijzing Nee. Een eerder uitgegeven id-token om door te geven aan het afmeldingseindpunt als hint over de huidige geverifieerde sessie van de eindgebruiker met de client. De id_token_hint zorgt ervoor dat de post_logout_redirect_uri een geregistreerde antwoord-URL is in de instellingen van uw Azure AD B2C-toepassing. Voor meer informatie, zie Beveilig uw afmeldingsomleiding.
client-id Nee* De applicatie-ID die de Azure portal toegewezen aan uw toepassing.

* Dit is vereist bij het gebruik van Application isolatie-SSO-configuratie en Id-token vereisen in afmeldingsaanvraag is ingesteld op No.
URI om te herleiden na uitloggen Nee. De URL waarnaar de gebruiker moet worden omgeleid na een geslaagde afmelding. Als deze niet is opgenomen, toont Azure AD B2C de gebruiker een algemeen bericht. Tenzij u een id_token_hintopgeeft, moet u deze URL niet registreren als antwoord-URL in de instellingen van uw Azure AD B2C-toepassing.
staat Nee. Als u een state parameter opneemt in de autorisatieaanvraag, retourneert de autorisatieserver dezelfde waarde in het antwoord op de post_logout_redirect_uri. De toepassing moet controleren of de state waarde in de aanvraag en het antwoord identiek zijn.

Na een afmeldingsaanvraag wordt in Azure AD B2C de sessie op basis van cookies van Azure AD B2C ongeldig gemaakt en wordt geprobeerd u af te melden bij federatieve id-providers. Zie Eenmalige afmeldingvoor meer informatie.

Uw afmeldingsomleiding beveiligen

Na het afmelden wordt de gebruiker omgeleid naar de URI die u opgeeft in de parameter post_logout_redirect_uri, ongeacht de antwoord-URL's die u voor de toepassing opgeeft. Als er echter een geldige id_token_hint wordt doorgegeven en de Id-token in afmeldingsaanvragen vereisen is ingeschakeld, controleert Azure AD B2C of de waarde van post_logout_redirect_uri overeenkomt met een van de geconfigureerde omleidings-URI's van de toepassing voordat de omleiding wordt uitgevoerd. Als er geen overeenkomende antwoord-URL is geconfigureerd voor de toepassing, wordt er een foutbericht weergegeven en wordt de gebruiker niet omgeleid.

Zie Sessiegedrag configureren in Azure Active Directory B2Com het vereiste id-token in afmeldingsaanvragen in te stellen.