Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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 em nossas perguntas frequentes.
Este artigo explica como adicionar a funcionalidade de autenticação do Azure Active Directory B2C (Azure AD B2C) a um aplicativo Web do Azure. Para obter mais informações, confira a configuração do seu aplicativo do Serviço de Aplicativo ou do Azure Functions para fazer logon usando um artigo do provedor do OpenID Connect .
Visão geral
O OIDC (OpenID Connect) é um protocolo de autenticação criado com base no OAuth 2.0. Use o OIDC para conectar usuários com segurança a um aplicativo Web do Azure. O fluxo de entrada envolve as seguintes etapas:
- Os usuários acessam o Aplicativo Web do Azure e selecionam Entrar.
- O Aplicativo Web do Azure inicia uma solicitação de autenticação e redireciona os usuários para o Azure AD B2C.
- Os usuários se inscrevem ou entram e redefinem a senha. Como alternativa, é possível entrar com uma conta de rede social.
- Depois que os usuários entrarem com êxito, o Azure AD B2C retornará um token de ID para o aplicativo Web do Azure.
- O Aplicativo Web do Azure valida o token de ID, lê as declarações e retorna uma página segura para os usuários.
Quando o token de ID expira ou a sessão do aplicativo é invalidada, o Aplicativo Web do Azure inicia uma nova solicitação de autenticação e redireciona os usuários para o Azure AD B2C. Se a sessão de SSO do Azure AD B2C estiver ativa, o Azure AD B2C emitirá um token de acesso sem solicitar que os usuários entrem novamente. Se a sessão do Azure AD B2C expirar ou se tornar inválida, será solicitado aos usuários que eles entrem novamente.
Pré-requisitos
- Se você ainda não criou um aplicativo, siga as diretrizes sobre como criar um aplicativo Web do Azure.
Etapa 1: configurar o fluxo de usuário
Quando os usuários tentam entrar, o aplicativo inicia uma solicitação de autenticação para o ponto de extremidade de autorização por meio de um fluxo de usuário. O fluxo de usuários define e controla a experiência do usuário. Quando o fluxo é concluído, o Azure AD B2C gera um token e redireciona o usuário de volta para o aplicativo.
Se você ainda não fez isso, crie um fluxo de usuário ou uma política personalizada. Repita as etapas para criar três fluxos de usuário separados, da seguinte forma:
- Um fluxo de usuário combinado de entrada e inscrição, como
susi
. Esse fluxo de usuário também dá suporte à experiência Esqueceu sua senha. - Um fluxo de usuário de edição de perfil, como
edit_profile
. - Um fluxo de usuário de Redefinição de senha, como
reset_password
.
O Azure AD B2C acrescenta B2C_1_
ao início do nome do fluxo de usuário. Por exemplo, susi
se tornará B2C_1_susi
.
Etapa 2: registrar um aplicativo Web
Para permitir que o aplicativo entre com Azure AD B2C, registre seu aplicativo no diretório do Azure AD B2C. Registrar seu aplicativo estabelece uma relação de confiança entre o aplicativo e o Azure AD B2C.
Durante o registro do aplicativo, você especificará o URI de redirecionamento. O URI de redirecionamento é o ponto de extremidade para o qual os usuários serão redirecionados pelo Azure AD B2C após a autenticação deles no Azure AD B2C. O processo de registro do aplicativo gera uma ID de aplicativo, também conhecida como ID do cliente, que identifica o aplicativo de modo exclusivo. Após o registro do aplicativo, o Azure AD B2C usa a ID de aplicativo e o URI de redirecionamento para criar solicitações de autenticação. Você também cria um segredo do cliente, que seu aplicativo usa para adquirir os tokens com segurança.
Etapa 2.1: registrar o aplicativo
Para registrar seu aplicativo, siga estas etapas:
Entre no portal do Azure.
Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Azure AD B2C no menu Diretórios + assinaturas.
No portal do Azure, pesquise e selecione Azure AD B2C.
Escolha Registros de aplicativo e Novo registro.
Em Nome, insira um nome para o aplicativo (por exemplo, Meu aplicativo Web do Azure).
Em Tipos de conta com suporte, selecione Contas em qualquer provedor de identidade ou diretório organizacional (para autenticar usuários com fluxos dos usuários) .
Em URI de redirecionamento, selecione Web e, em seguida, na caixa da URL, insira
https://<YOUR_SITE>/.auth/login/aadb2c/callback
. Substitua o<YOUR_SITE>
pelo nome do aplicativo Web do Azure. Por exemplo:https://contoso.azurewebsites.net/.auth/login/aadb2c/callback
. Se você configurou os domínios personalizados de um Aplicativo Web do Azure, use o domínio personalizado no URI de redirecionamento. Por exemplo,https://www.contoso.com/.auth/login/aadb2c/callback
Em Permissões, marque a caixa de seleção Dar consentimento do administrador às permissões OpenID e acesso offline.
Selecione Registrar.
Selecione Visão geral.
Registre a ID do aplicativo (cliente) para uso posterior, quando você configurar o aplicativo Web.
Etapa 2.2: criar um segredo do cliente
- Na página Azure AD B2C – Registros de aplicativo , selecione o aplicativo que você criou, por exemplo, Meu aplicativo Web do Azure.
- No menu à esquerda, em Gerenciar, selecione Certificados e segredos.
- Selecione Novo segredo do cliente.
- Insira uma descrição para o segredo do cliente na caixa Descrição. Por exemplo, clientsecret1.
- Em Expirar, selecione um período durante o qual o segredo será válido e clique em Adicionar.
- Registre o Valor do segredo para uso no código do aplicativo cliente. Esse valor secreto nunca será exibido novamente depois que você sair dessa página. Use este valor como o segredo do aplicativo no código do aplicativo.
Etapa 3: Configurar o Aplicativo do Azure
Entre no portal do Azure.
Se você tiver acesso a vários inquilinos, selecione o ícone Configurações no menu superior para mudar para o inquilino do Microsoft Entra ID no menu Diretórios + assinaturas.
Navegue até seu aplicativo Web do Azure.
Selecione Autenticação no menu à esquerda. Selecione Adicionar provedor de identidade.
Selecione OpenID Connect no menu suspenso Provedores de Identidade.
Para o tipo
aadb2c
.Para entrada de metadados, selecione URL do Documento. Em seguida, para a URL do Documento , forneça a seguinte URL:
https://<TENANT_NAME>.b2clogin.com/<TENANT_NAME>.onmicrosoft.com/<POLICY_NAME>/v2.0/.well-known/openid-configuration
Substitua
<TENANT_NAME>
pela primeira parte do nome do locatário do Azure AD B2C (por exemplo,https://contoso.b2clogin.com/contoso.onmicrosoft.com
). Se você tiver um domínio personalizado configurado, poderá usar esse domínio personalizado. Substitua o nome do locatário B2C, contoso.onmicrosoft.com, na URL da solicitação de autenticação pelo GUID da ID do locatário. Por exemplo, você pode alterarhttps://fabrikamb2c.b2clogin.com/contoso.onmicrosoft.com/
parahttps://account.contosobank.co.uk/<tenant ID GUID>/
.Substitua os
<POLICY_NAME>
fluxos de usuário ou a política personalizada que você criou na etapa 1.
Para a ID do cliente , forneça a ID do Aplicativo Web (cliente) da etapa 2.1.
Para o Segredo do Cliente , forneça o segredo do Aplicativo Web (cliente) da etapa 2.2.
Dica
O segredo do cliente será armazenado como uma configuração de aplicativo para garantir que os segredos sejam armazenados de maneira segura. Você poderá atualizar essa configuração posteriormente para usar referências do Key Vault se quiser gerenciar o segredo no Azure Key Vault.
Mantenha o restante das configurações com os valores padrão.
Pressione o botão Adicionar para terminar de configurar o provedor de identidade.
Etapa 4: Verificar o aplicativo Web do Azure
- No navegador, navegue até o aplicativo Web do Azure usando
https://<app-name>.azurewebsites.net
. Substitua o<app-name>
pelo aplicativo Web do Azure. - Conclua o processo de inscrição ou login.
- No navegador, navegue pela URL
https://<app-name>.azurewebsites.net/.auth/me
a seguir para ver as informações sobre o usuário conectado. Substitua o<app-name>
pelo aplicativo Web do Azure.
Recuperar tokens no código do aplicativo
No seu código de servidor, os tokens específicos do provedor são injetados no cabeçalho da solicitação, para que você possa acessá-los facilmente. A tabela a seguir mostra os possíveis nomes de cabeçalho do token:
Nome do cabeçalho | Descrição |
---|---|
X-MS-CLIENT-PRINCIPAL-NAME | O nome de exibição do usuário. |
X-MS-CLIENT-PRINCIPAL-ID | A sub-declaração do token de ID. |
X-MS-CLIENT-PRINCIPAL-IDP | O nome do provedor de identidade, aadb2c . |
X-MS-TOKEN-AADB2C-ID-TOKEN | O token de ID emitido pelo Azure AD B2C |
Próximas etapas
- Após a autenticação bem-sucedida, você poderá mostrar o nome de exibição na barra de navegação. Para exibir as declarações que o token do Azure AD B2C retorna ao aplicativo, confira Trabalhar com identidades de usuário na autenticação do Serviço de Aplicativo do Azure.
- Saiba como trabalhar com tokens OAuth na autenticação do Serviço de Aplicativo do Azure.