Partilhar via


Definir URLs de redirecionamento para b2clogin.com para o Azure Ative Directory B2C

Importante

A partir de 1º de maio de 2025, o Azure AD B2C não estará mais disponível para compra para novos clientes. Saiba mais nas nossas Perguntas Frequentes.

Ao configurar um provedor de identidade para inscrição e entrada em seus aplicativos do Azure Ative Directory B2C (Azure AD B2C), você precisa especificar os pontos de extremidade do provedor de identidade do Azure AD B2C. Você não deve mais fazer referência a login.microsoftonline.com em seus aplicativos e APIs para autenticar usuários com o Azure AD B2C. Em vez disso, use b2clogin.com ou um domínio personalizado para todos os aplicativos.

A que endpoints essas alterações se aplicam

A transição para b2clogin.com só se aplica a pontos de extremidade de autenticação que usam políticas do Azure AD B2C (fluxos de usuário ou políticas personalizadas) para autenticar usuários. Esses pontos de extremidade têm um parâmetro <policy-name>, que especifica a política que o Azure AD B2C deverá usar. Saiba mais sobre as políticas do Azure AD B2C.

Os pontos finais antigos podem ter a seguinte aparência:

  • https://login.microsoft.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize ou https://login.microsoft.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name> para o /authorize ponto de extremidade.
  • https://login.microsoft.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/logout ou https://login.microsoft.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/logout?p=<policy-name> para o /logout ponto de extremidade.

Um ponto de extremidade atualizado correspondente seria semelhante aos seguintes pontos de extremidade:

  • https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize ou https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name> para o /authorize ponto final.
  • https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/logout ou https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/logout?p=<policy-name> para o /logout ponto final.

Com o domínio personalizado do Azure AD B2C, o ponto de extremidade atualizado correspondente seria semelhante aos pontos de extremidade a seguir. Você pode usar qualquer um destes endpoints:

  • https://login.contoso.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize ou https://login.contoso.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name> para o /authorize ponto final.
  • https://login.contoso.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/logout ou https://login.contoso.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/logout?p=<policy-name> para o /logout ponto final.

Pontos de extremidade que não são afetados

Alguns clientes usam os recursos compartilhados dos locatários corporativos do Microsoft Entra. Por exemplo, adquirir um token de acesso para chamar a API do MS Graph do tenant do Azure AD B2C.

Esta alteração não afeta todos os endpoints que não contêm um parâmetro de política na URL. Eles são acedidos apenas através dos pontos de extremidade login.microsoftonline.com do Microsoft Entra ID e não podem ser utilizados com o b2clogin.com ou com domínios personalizados. O exemplo a seguir mostra um endpoint de token válido da plataforma de identidade da Microsoft.

https://login.microsoftonline.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/token

No entanto, se você quiser apenas obter um token para autenticar usuários, poderá especificar a política que seu aplicativo deseja usar para autenticar usuários. Nesse caso, os pontos de extremidade atualizados /token seriam semelhantes aos exemplos a seguir.

  • https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/token ou https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/token?p=<policy-name> quando utiliza b2clogin.com.

  • https://login.contoso.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/token ou https://login.contoso.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/token?p=<policy-name> quando você usa um domínio personalizado.

Visão geral das alterações necessárias

Há várias modificações que poderá precisar fazer para migrar as suas aplicações de login.microsoftonline.com utilizando os terminais do Azure AD B2C:

  • Altere a URL de redirecionamento nos aplicativos do seu provedor de identidade para fazer referência a b2clogin.com ou domínio personalizado. Para obter mais informações, consulte as instruções sobre como alterar as URLs de redirecionamento do provedor de identidade.
  • Atualize os seus aplicativos do Azure AD B2C para utilizarem b2clogin.com, ou o domínio personalizado, nas suas referências de fluxo de utilizador e de ponto final de token. A alteração pode incluir a atualização do uso de uma biblioteca de autenticação como a Microsoft Authentication Library (MSAL).
  • Atualize todas as Origens Permitidas definidas nas configurações do CORS para personalização da interface do usuário.

Alterar URLs de redirecionamento do provedor de identidade

No site de cada provedor de identidade no qual você criou um aplicativo, altere todas as URLs confiáveis para redirecionar para your-tenant-name.b2clogin.com, ou um domínio personalizado em vez de login.microsoftonline.com.

Há dois formatos que você pode usar para seus URLs de redirecionamento b2clogin.com. O primeiro oferece o benefício de não ter "Microsoft" aparecendo em qualquer lugar na URL usando o ID do locatário (um GUID) no lugar do seu nome de domínio do locatário. Observe que o authresp ponto de extremidade pode não conter um nome de política.

https://{your-tenant-name}.b2clogin.com/{your-tenant-id}/oauth2/authresp

A segunda opção usa o nome de domínio do locatário na forma de your-tenant-name.onmicrosoft.com. Por exemplo:

https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/oauth2/authresp

Para ambos os formatos:

  • Substitua {your-tenant-name} pelo nome do seu locatário do Azure AD B2C.
  • Remova /te caso esteja presente no URL.

Atualize seus aplicativos e APIs

O código nos seus aplicativos e APIs que utilizam o Azure AD B2C pode se referir a login.microsoftonline.com em vários lugares. Por exemplo, o seu código pode ter referências a fluxos de utilizador e endpoints de token. Atualize o seguinte para referenciar your-tenant-name.b2clogin.com em vez disso:

  • Ponto final de autorização
  • Ponto de extremidade de token
  • Emissor de token

Por exemplo, o ponto de extremidade de autoridade para a política de inscrição/entrada da Contoso agora seria:

https://contosob2c.b2clogin.com/00000000-0000-0000-0000-000000000000/B2C_1_signupsignin1

Para obter informações sobre como migrar aplicativos Web baseados em OWIN para b2clogin.com, consulte Migrar uma API da Web baseada em OWIN para b2clogin.com.

Para migrar APIs de Gerenciamento de API do Azure protegidas pelo Azure AD B2C, consulte a seção Migrar para b2clogin.com de Proteger uma API de Gerenciamento de API do Azure com o Azure AD B2C.

Biblioteca de Autenticação da Microsoft (MSAL)

MSAL.NET propriedade ValidateAuthority

Se você estiver usando MSAL.NET v2 ou anterior, defina a propriedade ValidateAuthority como false na instanciação do cliente para permitir redirecionamentos para b2clogin.com. Definir esse valor como false não é necessário para MSAL.NET v3 e posterior.

ConfidentialClientApplication client = new ConfidentialClientApplication(...); // Can also be PublicClientApplication
client.ValidateAuthority = false; // MSAL.NET v2 and earlier **ONLY**

Propriedade "MSAL for JavaScript" validateAuthority

Se você estiver usando o MSAL para JavaScript v1.2.2 ou anterior, defina a propriedade validateAuthority como 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**
  }
);

Se você definir validateAuthority: true MSAL.js 1.3.0+ (o padrão), também deverá especificar um emissor de token válido com 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
  }
);

Para obter informações sobre como migrar aplicativos Web baseados em OWIN para b2clogin.com, consulte Migrar uma API da Web baseada em OWIN para b2clogin.com.

Para migrar APIs de Gerenciamento de API do Azure protegidas pelo Azure AD B2C, consulte a seção Migrar para b2clogin.com de Proteger uma API de Gerenciamento de API do Azure com o Azure AD B2C.