Loading

Configurar um provedor de autenticação do Azure AD B2C

Data da publicação: Feb 19, 2026
Descrição
Os provedores de autenticação OpenID Connect (OIDC) no Salesforce exigem um ponto de extremidade de informações do usuário, mas o Azure AD B2C não fornece um por padrão. Por isso, há certas etapas adicionais às necessárias para configurar um provedor de autenticação do Azure AD.

Nota: o provedor de autenticação da Microsoft, introduzido na versão Summer '22, não pode ser usado para o Azure AD B2C devido às diferentes URLs de ponto de extremidade de autorização/token esperadas.
Resolução

Etapas para configurar um provedor de autenticação do Azure AD BC

a) Conforme o artigo "Exemplo: Configurar um provedor de autenticação do Azure AD" explica, crie um registro de aplicativo no locatário B2C e um provedor de autenticação no Salesforce. Defina os seguintes parâmetros:

Chave do cliente: ID do aplicativo (cliente), conforme visto na página de detalhes do registro do aplicativo Azure AD B2C
Segredo do cliente: segredo do cliente, conforme configurado no registro do aplicativo Azure AD B2C
URL de ponto de extremidade de autorização: https://yourtenant.b2clogin.com/yourtenant.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
URL de ponto de extremidade de token: https://yourtenant.b2clogin.com/yourtenant.onmicrosoft.com/<policy-name>/oauth2/v2.0/token
Emissor do token: https://yourtenant.b2clogin.com/<Directory (tenant) ID>/v2.0/
Escopos padrão: ID do aplicativo (cliente) ID, conforme visto na página de detalhes do registro do aplicativo openid offline_access

Por exemplo, se o ID do aplicativo for 90c0fe63-bcf2-44d5-8fb7-b8bbc0b29dc6, os Escopos padrão deverão ser 

90c0fe63-bcf2-44d5-8fb7-b8bbc0b29dc6 openid offline_access

Observe que você deve conseguir ver as URLs de autorização e de token, o Emissor de token e as declarações configuradas em https://yourtenant.b2clogin.com/yourtenant.onmicrosoft.com/<policy-name>/v2.0/.well-known/openid-configuration.

b) Atualize a URI de redirecionamento ou a URL de retorno de chamada no registro do seu aplicativo.

c) Habilite o ponto de extremidade UserInfo na sua instância do Azure AD B2C criando uma política personalizada seguindo as etapas mencionadas no artigo Ponto de extremidade UserInfo.

Certifique-se de que a seção InputClaims de UserInfoIssuer use os seguintes valores de PartnerClaimType:

  <InputClaims>
    <InputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub" />
    <InputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
    <InputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" />
    <InputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="full_name" />
    <InputClaim ClaimTypeReferenceId="signInNames.emailAddress" PartnerClaimType="preferred_username" />
  </InputClaims>

e que a seção OutputClaims de UserInfoAuthorization esteja da seguinte maneira:

<OutputClaims>
  <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
  <OutputClaim ClaimTypeReferenceId="signInNames.emailAddress" PartnerClaimType="email" />
  <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name"/>
  <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name"/>
  <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name"/>
</OutputClaims>

Observe que https://yourtenant.b2clogin.com/yourtenant.onmicrosoft.com/<policy-name>/v2.0/.well-known/openid-configuration deve mostrar uma nova propriedade "userinfo_endpoint".

d) Atualize a URL de ponto de extremidade de informações de usuário no provedor de autenticação.

URL de ponto de extremidade de informações de usuário: https://yourtenant.b2clogin.com/yourtenant.onmicrosoft.com/<policy-name>/openid/v2.0/userinfo

e) Crie um manipulador de registros

Observe que o método createUser() será invocado se não houver nenhum registro ThirdPartyAccountLink (TPAL) correspondente para essa combinação de usuário e provedor de autenticação. Além disso, para acomodar o cenário em que o usuário foi criado no Salesforce antes da configuração do provedor de autenticação, certifique-se de que o método createUser() retorne um registro de usuário existente. É possível encontrar mais informações sobre esse cenário aqui.

f) Em uma janela anônima, teste o fluxo de SSO acessando a URL somente de teste do provedor de autenticação.


Resolução de problemas

a) Certifique-se de que um ponto de extremidade de informações do usuário seja retornado por https://yourtenant.b2clogin.com/yourtenant.onmicrosoft.com/<policy-name>/v2.0/.well-known/openid-configuration. Caso contrário, consulte novamente as etapas mencionadas aqui.

b) Obtenha um token de acesso:

b.1) Vá para a URL somente de teste do provedor de autenticação. Você será redirecionado para o ponto de extremidade de autorização.
b.2) Faça login no Azure B2C.
b.3) Inspecione as solicitações HTTP e receba o código de autorização. Isso será exibido na resposta desta solicitação GET:

GET https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/authorize?client_id=<app-id>

b.4) Agora, obtenha um token de acesso enviando esta solicitação POST:

POST https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/token HTTP/1.1

Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code&
client_id=<app-id>&
client_secret=<client-secret>&
scope=<app-id> openid offline_access&
code=AwA...&
redirect_uri=<auth-provider-callback-url>

c) Obtenha os detalhes de UserInfo. Envie uma solicitação GET para o ponto de extremidade UserInfo usando o token de acesso obtido anteriormente.

GET https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/

Autorização: Bearer <access-token>

d) Depure seu manipulador de registro para garantir que ele compare corretamente a declaração de informações do usuário do OpenId Connect com os atributos do usuário.
Número do artigo do Knowledge

000393769

 
Carregando
Salesforce Help | Article