Omleidings-URL's instellen op b2clogin.com voor Azure Active Directory B2C
Wanneer u een id-provider instelt voor registratie en aanmelding in uw Azure Active Directory B2C-toepassingen (Azure AD B2C), moet u de eindpunten van de Azure AD B2C-id-provider opgeven. U moet niet langer verwijzen naar login.microsoftonline.com in uw toepassingen en API's voor het verifiëren van gebruikers met Azure AD B2C. Gebruik in plaats daarvan b2clogin.com of een aangepast domein voor alle toepassingen.
Op welke eindpunten zijn deze wijzigingen van toepassing
De overgang naar b2clogin.com is alleen van toepassing op verificatie-eindpunten die gebruikmaken van Azure AD B2C-beleid (gebruikersstromen of aangepaste beleidsregels) om gebruikers te verifiëren. Deze eindpunten hebben een <policy-name>
parameter, waarmee het beleid wordt opgegeven dat Azure AD B2C moet gebruiken. Meer informatie over het Azure AD B2C beleid.
Oude eindpunten kunnen er als volgt uitzien:
https://login.microsoft.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
https://login.microsoft.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name>
Een bijbehorend bijgewerkt eindpunt ziet er als volgt uit:
https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name>
Met aangepast Azure AD B2C-domein ziet het bijbehorende bijgewerkte eindpunt er als volgt uit:
https://login.contoso.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
https://login.contoso.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name>
Eindpunten die niet worden beïnvloed
Sommige klanten gebruiken de gedeelde mogelijkheden van Microsoft Entra Enterprise-tenants. U kunt bijvoorbeeld een toegangstoken verkrijgen om de MS Graph API van de Azure AD B2C-tenant aan te roepen.
Deze wijziging heeft geen invloed op alle eindpunten, die geen beleidsparameter in de URL bevatten. Ze zijn alleen toegankelijk met de login.microsoftonline.com eindpunten van de Microsoft Entra-id en kunnen niet worden gebruikt met de b2clogin.com of aangepaste domeinen. In het volgende voorbeeld ziet u een geldig tokeneindpunt van het Microsoft Identity Platform:
https://login.microsoftonline.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/token
Overzicht van vereiste wijzigingen
Er zijn verschillende wijzigingen die u mogelijk moet aanbrengen om uw toepassingen te migreren van login.microsoftonline.com met behulp van Azure AD B2C-eindpunten:
- Wijzig de omleidings-URL in de toepassingen van uw id-provider om te verwijzen naar b2clogin.com of aangepast domein. Volg de richtlijnen voor omleidings-URL's van id-providers voor meer informatie.
- Werk uw Azure AD B2C-toepassingen bij om b2clogin.com of aangepast domein te gebruiken in hun gebruikersstroom- en tokeneindpuntverwijzingen. De wijziging kan bestaan uit het bijwerken van uw gebruik van een verificatiebibliotheek, zoals Microsoft Authentication Library (MSAL).
- Werk alle toegestane origins bij die u in de CORS-instellingen definieert voor aanpassing van de gebruikersinterface.
Omleidings-URL's van id-provider wijzigen
Wijzig op de website van elke id-provider waarin u een toepassing hebt gemaakt, alle vertrouwde URL's om te leiden naar your-tenant-name.b2clogin.com
of een aangepast domein in plaats van login.microsoftonline.com.
Er zijn twee indelingen die u kunt gebruiken voor uw b2clogin.com omleidings-URL's. Het eerste biedt het voordeel dat 'Microsoft' nergens in de URL wordt weergegeven met behulp van de tenant-id (een GUID) in plaats van uw tenantdomeinnaam. Opmerking: het authresp
eindpunt bevat mogelijk geen beleidsnaam.
https://{your-tenant-name}.b2clogin.com/{your-tenant-id}/oauth2/authresp
De tweede optie maakt gebruik van uw tenantdomeinnaam in de vorm van your-tenant-name.onmicrosoft.com
. Bijvoorbeeld:
https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/oauth2/authresp
Voor beide indelingen:
- Vervang
{your-tenant-name}
door de naam van uw Azure AD B2C-tenant. - Verwijderen
/te
als deze bestaat in de URL.
Uw toepassingen en API's bijwerken
De code in uw toepassingen en API's met Azure AD B2C kan op verschillende plaatsen verwijzen login.microsoftonline.com
. Uw code kan bijvoorbeeld verwijzingen bevatten naar gebruikersstromen en tokeneindpunten. Werk het volgende bij om in plaats daarvan te verwijzen naar your-tenant-name.b2clogin.com
:
- Autorisatie-eindpunt
- Tokeneindpunt
- Tokenuitgever
Het eindpunt van de instantie voor het registratie-/aanmeldingsbeleid van Contoso is nu bijvoorbeeld:
https://contosob2c.b2clogin.com/00000000-0000-0000-0000-000000000000/B2C_1_signupsignin1
Zie Een OWIN-web-API migreren naar b2clogin.com voor informatie over het migreren van webtoepassingen op basis van OWIN naar b2clogin.com.
Zie de sectie Migreren naar b2clogin.com van Azure API Management API's met Azure AD B2C met Azure AD B2C voor het migreren naar een Azure API Management-API.
Microsoft Authentication Library (MSAL)
eigenschap ValidateAuthority MSAL.NET
Als u MSAL.NET v2 of eerder gebruikt, stelt u de eigenschap false
ValidateAuthority in op clientexemptatie om omleidingen naar b2clogin.com toe te staan. Het instellen van deze waarde false
is niet vereist voor MSAL.NET v3 en hoger.
ConfidentialClientApplication client = new ConfidentialClientApplication(...); // Can also be PublicClientApplication
client.ValidateAuthority = false; // MSAL.NET v2 and earlier **ONLY**
MSAL voor de eigenschap ValidateAuthority voor JavaScript
Als u MSAL voor JavaScript v1.2.2 of eerder gebruikt, stelt u de eigenschap validateAuthority in op false
.
// MSAL.js v1.2.2 and earlier
this.clientApplication = new UserAgentApplication(
env.auth.clientId,
env.auth.loginAuthority,
this.authCallback.bind(this),
{
validateAuthority: false // Required in MSAL.js v1.2.2 and earlier **ONLY**
}
);
Als u in MSAL.js 1.3.0+ (de standaardinstelling) instelt validateAuthority: true
, moet u ook een geldige tokenverlener opgeven met knownAuthorities
:
// MSAL.js v1.3.0+
this.clientApplication = new UserAgentApplication(
env.auth.clientId,
env.auth.loginAuthority,
this.authCallback.bind(this),
{
validateAuthority: true, // Supported in MSAL.js v1.3.0+
knownAuthorities: ['tenant-name.b2clogin.com'] // Required if validateAuthority: true
}
);
Volgende stappen
Zie Een OWIN-web-API migreren naar b2clogin.com voor informatie over het migreren van webtoepassingen op basis van OWIN naar b2clogin.com.
Zie de sectie Migreren naar b2clogin.com van Azure API Management API's met Azure AD B2C met Azure AD B2C voor het migreren naar een Azure API Management-API.