Partilhar via


Tutorial: Criar fluxos de usuário e políticas personalizadas no 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.

Antes de começar, use o seletor Escolha um tipo de política na parte superior desta página para escolher o tipo de política que você está configurando. O Azure Ative Directory B2C oferece dois métodos para definir como os usuários interagem com seus aplicativos: por meio de fluxos de usuário predefinidos ou por meio de políticas personalizadas totalmente configuráveis. As etapas exigidas neste artigo são diferentes para cada método.

Em seus aplicativos, você pode ter fluxos de usuários que permitem que os usuários se inscrevam, entrem ou gerenciem seus perfis. Você pode criar vários fluxos de usuário de diferentes tipos em seu locatário do Azure Ative Directory B2C (Azure AD B2C) e usá-los em seus aplicativos conforme necessário. Os fluxos de usuários podem ser reutilizados entre aplicativos.

Um fluxo de usuário permite determinar como os usuários interagem com seu aplicativo quando fazem coisas como entrar, se inscrever, editar um perfil ou redefinir uma senha. Neste artigo, você aprenderá a:

As políticas personalizadas são arquivos de configuração que definem o comportamento do locatário do Azure Ative Directory B2C (Azure AD B2C). Neste artigo, você aprenderá a:

  • Criar um fluxo de registo e início de sessão para utilizadores
  • Habilitar a redefinição de senha de autoatendimento
  • Criar um fluxo de usuário de edição de perfil

Importante

Alterámos a forma como referenciamos as versões do fluxo de utilizadores. Anteriormente, oferecíamos versões V1 (prontas para produção) e versões V1.1 e V2 (visualização). Agora, consolidamos os fluxos de usuários em duas versões: fluxos de usuários recomendados com os recursos mais recentes e fluxos de usuários padrão (legado). Todos os fluxos de usuários de visualização herdados (V1.1 e V2) foram preteridos. Para obter detalhes, consulte Versões de fluxo de usuário no Azure AD B2C. Estas alterações aplicam-se apenas à nuvem pública do Azure. Outros ambientes continuarão a usar o controle de versão de fluxo de usuário herdado.

Pré-requisitos

Criar um fluxo de registo e início de sessão para utilizadores

O fluxo de usuário de inscrição e entrada lida com ambas as experiências com uma única configuração. Os usuários do seu aplicativo são conduzidos pelo caminho certo, dependendo do contexto. Para criar um fluxo de registro e login do usuário:

  1. Inicie sessão no portal Azure.

  2. Se tiver acesso a vários inquilinos, selecione o ícone Definições no menu superior para mudar para o inquilino do Azure AD B2C no menu Diretórios + subscrições.

  3. No portal do Azure, procure e selecione Azure AD B2C.

  4. Em Políticas, selecione Fluxos de usuário e, em seguida, selecione Novo fluxo de usuário.

    Captura de ecrã da página Fluxos de utilizador do portal do Azure com o botão Novo fluxo de utilizador realçado.

  5. Na página Criar um fluxo de utilizador, selecione o fluxo de utilizador Registo e início de sessão.

    Captura de ecrã da página Selecionar um fluxo de utilizador do portal Azure com o fluxo de Inscrição e início de sessão realçado.

  6. Em Selecione uma versão, selecione Recomendado e, em seguida, selecione Criar. (Saiba mais sobre as versões de fluxo de usuário.)

    Criar página de fluxo de usuário no portal do Azure com propriedades realçadas

  7. Insira um Nome para o fluxo de usuário. Por exemplo, signupsignin1.

  8. Para Provedores de identidade, selecione Inscrição por e-mail.

  9. Para Atributos de usuário e declarações de token, escolha as declarações e atributos que você deseja coletar e enviar do usuário durante a inscrição. Por exemplo, selecione Mostrar mais e, em seguida, escolha atributos e declarações para País/Região, Nome para Exibição e Código Postal. Selecione OK.

    Captura de ecrã da página de seleção de atributos e declarações do portal do Azure com três declarações selecionadas e realçadas.

  10. Selecione Criar para adicionar o fluxo de utilizador. Um prefixo de B2C_1_ é automaticamente anexado ao nome que você inseriu anteriormente. Por exemplo, B2C_1_signupsignin1.

Testar o fluxo do usuário

  1. Na página Fluxos de usuário , selecione o fluxo de usuário que você acabou de criar para abrir sua página de visão geral.

  2. Na parte superior da página de visão geral do fluxo do usuário, selecione Executar fluxo do usuário. Um painel será aberto no lado direito da página.

  3. Em Aplicativo, selecione o aplicativo Web que deseja testar, como o chamado webapp1. O URL de resposta deve mostrar https://jwt.ms.

  4. Selecione Executar fluxo de usuário e, em seguida, selecione Inscrever-se agora.

    Uma captura de tela da página Executar fluxo de usuário do portal do Azure com o botão Executar fluxo de usuário, a caixa de texto Aplicativo e a caixa de texto URL de resposta realçadas.

  5. Introduza um endereço de e-mail válido, selecione Enviar código de verificação, introduza o código de verificação que recebe e, em seguida, selecione Verificar código.

  6. Introduza uma nova palavra-passe e confirme-a.

  7. Selecione o seu país e região, introduza o nome que pretende apresentar, introduza um código postal e, em seguida, selecione Criar. O token é devolvido para https://jwt.ms e deve ser exibido para si no seu navegador.

  8. Agora você pode executar o fluxo de usuário novamente e deve ser capaz de entrar com a conta que você acabou de criar. O token devolvido inclui as declarações que você selecionou de país/região, nome e código postal.

Observação

A experiência "Executar fluxo de usuário" não é atualmente compatível com o tipo de URL de resposta do SPA usando o fluxo de código de autorização. Para usar a experiência "Executar fluxo de usuário" com esses tipos de aplicativos, registre uma URL de resposta do tipo "Web" e habilite o fluxo implícito.

Habilitar a redefinição de senha de autoatendimento

Para habilitar a redefinição de senha de autoatendimento para o fluxo de usuário de inscrição ou entrada:

  1. Na página Fluxos de usuário , selecione o fluxo de usuário de inscrição ou entrada que você acabou de criar.
  2. Em Configurações no menu à esquerda, selecione Propriedades.
  3. Em configuração de senha, selecione redefinição de senha por autoatendimento.
  4. Selecione Guardar.

Testar o fluxo do usuário

  1. Na página Fluxos de usuário , selecione o fluxo de usuário que você acabou de criar para abrir sua página de visão geral e, em seguida, selecione Executar fluxo de usuário.
  2. Em Aplicativo, selecione o aplicativo Web que deseja testar, como o chamado webapp1. O URL de resposta deve mostrar https://jwt.ms.
  3. Selecione Executar fluxo de utilizador.
  4. Na página de inscrição ou login, selecione Esqueceu sua senha?.
  5. Verifique o endereço de e-mail da conta que criou anteriormente e, em seguida, selecione Continuar.
  6. Agora você tem a oportunidade de alterar a senha do usuário. Altere a senha e selecione Continuar. O token é devolvido para https://jwt.ms e deve ser exibido no seu navegador.

Criar um fluxo de usuário de edição de perfil

Se você quiser permitir que os usuários editem seus perfis em seu aplicativo, use um fluxo de usuário de edição de perfil.

  1. No menu da página de visão geral do locatário do Azure AD B2C, selecione Fluxos de usuário e, em seguida, selecione Novo fluxo de usuário.
  2. Na página Criar um fluxo de usuário , selecione o fluxo de usuário de edição de perfil .
  3. Em Selecione uma versão, selecione Recomendado e, em seguida, selecione Criar.
  4. Insira um Nome para o fluxo de usuário. Por exemplo, edição de perfil1.
  5. Para Provedores de identidade, em Contas locais, selecione Inscrição por email.
  6. Em Atributos de usuário, escolha os atributos que você deseja que o cliente possa editar em seu perfil. Por exemplo, selecione Mostrar mais e escolha atributos e declarações para Nome para exibição e Cargo. Selecione OK.
  7. Selecione Criar para adicionar o fluxo de utilizador. Um prefixo de B2C_1_ é automaticamente anexado ao nome.

Testar o fluxo do usuário

  1. Selecione o fluxo de usuário que você criou para abrir sua página de visão geral.
  2. Na parte superior da página de visão geral do fluxo do usuário, selecione Executar fluxo do usuário. Um painel será aberto no lado direito da página.
  3. Em Aplicativo, selecione o aplicativo Web que deseja testar, como o chamado webapp1. O URL de resposta deve mostrar https://jwt.ms.
  4. Selecione Executar fluxo de usuário e entre com a conta que você criou anteriormente.
  5. Agora você tem a oportunidade de alterar o nome de exibição e o cargo do usuário. Selecione Continuar. O token é devolvido para https://jwt.ms e deve ser exibido no seu navegador.

Sugestão

Este artigo explica como configurar o seu tenant manualmente. Você pode automatizar todo o processo a partir deste artigo. A automatização implantará o pacote inicial do Azure AD B2C SocialAndLocalAccountsWithMFA, que fornecerá jornadas de Inscrição e Entrada, Redefinição de Senha e Edição de Perfil. Para automatizar o passo a passo abaixo, visite o aplicativo de configuração do IEF e siga as instruções.

Adicionar chaves de assinatura e criptografia para aplicativos do Identity Experience Framework

  1. Inicie sessão no portal Azure.
  2. Se tiver acesso a vários inquilinos, selecione o ícone Definições no menu superior para mudar para o inquilino do Azure AD B2C no menu Diretórios + subscrições.
  3. No portal do Azure, procure e selecione Azure AD B2C.
  4. Na página de visão geral, em Políticas, selecione Identity Experience Framework.

Criar a chave de assinatura

  1. Selecione Chaves de política e, em seguida, selecione Adicionar.
  2. Em Opções, escolha Generate.
  3. Em Nome, digite TokenSigningKeyContainer. O prefixo B2C_1A_ pode ser adicionado automaticamente.
  4. Em Tipo de chave, selecione RSA.
  5. Para o uso da chave , selecione Assinatura .
  6. Selecione Criar.

Criar a chave de encriptação

  1. Selecione Chaves de política e, em seguida, selecione Adicionar.
  2. Em Opções, escolha Generate.
  3. Em Nome, digite TokenEncryptionKeyContainer. O prefixo B2C_1A_ pode ser adicionado automaticamente.
  4. Em Tipo de chave, selecione RSA.
  5. Para Uso da chave, selecione Criptografia.
  6. Selecione Criar.

Registrar aplicativos do Identity Experience Framework

O Azure AD B2C exige que você registre dois aplicativos que ele usa para se inscrever e entrar em usuários com contas locais: IdentityExperienceFramework, uma API da Web, e ProxyIdentityExperienceFramework, um aplicativo nativo com permissão delegada para o aplicativo IdentityExperienceFramework. Seus usuários podem se inscrever com um endereço de e-mail ou nome de usuário e uma senha para acessar aplicativos registrados em seu locatário, o que cria uma "conta local". As contas locais existem apenas no seu locatário do Azure AD B2C.

Você precisará registrar esses dois aplicativos em seu locatário do Azure AD B2C apenas uma vez.

Registrar o aplicativo IdentityExperienceFramework

Para registrar um aplicativo em seu locatário do Azure AD B2C, você pode usar a experiência de registros de aplicativo .

  1. Selecione Registos de aplicaçõese, em seguida, selecione Novo registo.
  2. Em Nome, digite IdentityExperienceFramework.
  3. Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional.
  4. Em Redirecionar URI, selecione Web e digite https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com, onde your-tenant-name é o nome de domínio do locatário do Azure AD B2C.
  5. Em Permissões, marque a caixa de seleção Conceder consentimento de administrador para as permissões openid e offline_access .
  6. Selecione Register.
  7. Registre o ID do aplicativo (cliente) para uso em uma etapa posterior.

Em seguida, exponha a API adicionando um escopo:

  1. No menu à esquerda, em Gerenciar, selecione Expor uma API.
  2. Selecione Adicionar um escopo e, em seguida, selecione Salvar e continue a aceitar o URI de ID do aplicativo padrão.
  3. Insira os seguintes valores para criar um escopo que permita a execução de política personalizada em seu locatário do Azure AD B2C:
    • Nome do escopo: user_impersonation
    • Nome de exibição do consentimento do administrador: Access IdentityExperienceFramework
    • Descrição do consentimento do administrador: Allow the application to access IdentityExperienceFramework on behalf of the signed-in user.
  4. Selecione Adicionar escopo

Registrar o aplicativo ProxyIdentityExperienceFramework

  1. Selecione Registos de aplicaçõese, em seguida, selecione Novo registo.
  2. Em Nome, digite ProxyIdentityExperienceFramework.
  3. Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional.
  4. Em Redirecionar URI, use a lista suspensa para selecionar Cliente público/nativo (móvel ou desktop).
  5. Para Redirecionar URI, digite myapp://auth.
  6. Em Permissões, marque a caixa de seleção Conceder consentimento de administrador para as permissões openid e offline_access .
  7. Selecione Register.
  8. Registre o ID do aplicativo (cliente) para uso em uma etapa posterior.

Em seguida, especifique que o aplicativo deve ser tratado como um cliente público:

  1. No menu à esquerda, em Gerenciar, selecione Autenticação.
  2. Em Configurações avançadas, na seção Permitir fluxos de clientes públicos , defina Habilitar os seguintes fluxos móveis e de desktop como Sim.
  3. Selecione Guardar.
  4. Certifique-se de que "isFallbackPublicClient": true está definido no Manifesto do Aplicativo Microsoft Graph (Novo):
    1. No menu à esquerda, em Gerenciar, selecione Manifesto para abrir o Manifesto do Aplicativo Microsoft Graph(Novo)
    2. Alterne da guia Manifesto do Aplicativo Microsoft Graph (Novo) para a guia Manifesto do Aplicativo do AAD Graph (Preterindo em breve).
    3. Encontre a chave isFallbackPublicClient e certifique-se de que seu valor esteja definido como true.

Agora, conceda permissões para o escopo da API que você expôs anteriormente no registro do IdentityExperienceFramework :

  1. No menu à esquerda, em Gerenciar, selecione Permissões de API.
  2. Em Permissões configuradas, selecione Adicionar uma permissão.
  3. Selecione a guia APIs que minha organização usa e, em seguida, selecione o aplicativo IdentityExperienceFramework .
  4. Em Permissão, selecione o user_impersonation escopo definido anteriormente.
  5. Selecione Adicionar permissões. Conforme indicado, aguarde alguns minutos antes de prosseguir para a próxima etapa.
  6. Selecione Conceder consentimento de administrador para <o nome> do seu inquilino.
  7. Selecione Sim.
  8. Selecione Atualizar e verifique se "Concedido para..." aparece em Status para o escopo.

Pacote inicial de políticas personalizadas

As políticas personalizadas são um conjunto de arquivos XML que você carrega no locatário do Azure AD B2C para definir perfis técnicos e jornadas do usuário. Fornecemos pacotes iniciais com várias políticas pré-criadas para que você comece rapidamente. Cada um desses pacotes iniciais contém o menor número de perfis técnicos e jornadas do usuário necessárias para alcançar os cenários descritos. Para obter um guia mais detalhado sobre as políticas personalizadas do Azure AD B2C, siga nossa série de guias de instruções de políticas personalizadas.

  • LocalAccounts - Permite o uso apenas de contas locais.
  • SocialAccounts - Permite o uso apenas de contas sociais (ou federadas).
  • SocialAndLocalAccounts - Permite o uso de contas locais e contas sociais.
  • SocialAndLocalAccountsWithMFA - Permite opções de autenticação social, local e multifator.

Cada embalagem inicial contém:

  • Arquivo base - Poucas modificações são necessárias na base. Exemplo: TrustFrameworkBase.xml
  • Arquivo de localização - Este arquivo é onde as alterações de localização são feitas. Exemplo: TrustFrameworkLocalization.xml
  • Arquivo de extensão - Este arquivo é onde a maioria das alterações de configuração são feitas. Exemplo: TrustFrameworkExtensions.xml
  • Arquivos de terceira parte confiável - Arquivos específicos de tarefas chamados pelo seu aplicativo. Exemplos: SignUpOrSignin.xml, ProfileEdit.xml ,PasswordReset.xml

Neste artigo, você edita os arquivos de política personalizada XML no pacote inicial SocialAndLocalAccounts . Se você precisar de um editor XML, tente o Visual Studio Code, um editor leve de plataforma cruzada.

Obtenha o pacote inicial

Obtenha os pacotes iniciais de políticas personalizadas do GitHub e, em seguida, atualize os arquivos XML no pacote inicial SocialAndLocalAccounts com seu nome de locatário do Azure AD B2C.

  1. Faça o download do arquivo .zip ou clone o repositório:

    git clone https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack
    
  2. Em todos os arquivos no diretório SocialAndLocalAccounts , substitua a cadeia de caracteres yourtenant pelo nome do locatário do Azure AD B2C.

    Por exemplo, se o nome do seu locatário B2C for contosotenant, todas as instâncias de yourtenant.onmicrosoft.com transformam-se em contosotenant.onmicrosoft.com.

Adicionar IDs de aplicativo à política personalizada

Adicione os IDs do aplicativo ao arquivo de extensõesTrustFrameworkExtensions.xml.

  1. Abra SocialAndLocalAccounts/TrustFrameworkExtensions.xml e localize o elemento <TechnicalProfile Id="login-NonInteractive">.
  2. Substitua ambas as instâncias de IdentityExperienceFrameworkAppId pela ID do aplicativo IdentityExperienceFramework que você criou anteriormente.
  3. Substitua ambas as ocorrências de ProxyIdentityExperienceFrameworkAppId pela ID da aplicação ProxyIdentityExperienceFramework que você criou anteriormente.
  4. Salve o arquivo.

Adicionar o Facebook como um provedor de identidade

O pacote inicial SocialAndLocalAccounts inclui o login social do Facebook. O Facebook não é obrigatório para usar políticas personalizadas, mas nós o usamos aqui para demonstrar como você pode habilitar o login social federado em uma política personalizada. Se você não precisar habilitar o login social federado, use o pacote inicial LocalAccounts e pule para a seção Carregar as políticas .

Criar aplicação Facebook

Use as etapas descritas em Criar um aplicativo do Facebook para obter o ID do aplicativo do Facebook e o Segredo do aplicativo. Ignore os pré-requisitos e o resto dos passos no artigo Configurar inscrição e iniciar sessão com uma conta do Facebook .

Crie a chave do Facebook

Adicione o App Secret do seu aplicativo do Facebook como uma chave de política. Pode utilizar a Chave Secreta da App do aplicativo que criou como parte dos pré-requisitos para este artigo.

  1. Inicie sessão no portal Azure.
  2. Se tiver acesso a vários inquilinos, selecione o ícone Definições no menu superior para mudar para o inquilino do Azure AD B2C no menu Diretórios + subscrições.
  3. No portal do Azure, procure e selecione Azure AD B2C.
  4. Na página de visão geral, em Políticas, selecione Identity Experience Framework.
  5. Selecione Chaves de política e, em seguida, selecione Adicionar.
  6. Em Opções, escolha Manual.
  7. Em Nome, digite FacebookSecret. O prefixo B2C_1A_ pode ser adicionado automaticamente.
  8. Em Segredo, insira o App Secret da sua aplicação do Facebook em developers.facebook.com. Esse valor é o segredo, não o ID do aplicativo.
  9. Para o uso da chave , selecione Assinatura .
  10. Selecione Criar.

Atualizar TrustFrameworkExtensions.xml no pacote inicial de políticas personalizadas

No SocialAndLocalAccounts/TrustFrameworkExtensions.xml arquivo, substitua o valor de client_id pelo ID da aplicação do Facebook e salve as alterações.

<TechnicalProfile Id="Facebook-OAUTH">
  <Metadata>
  <!--Replace the value of client_id in this technical profile with the Facebook app ID"-->
    <Item Key="client_id">00000000000000</Item>

Carregue as políticas

  1. Selecione o item de menu Identity Experience Framework em seu locatário B2C no portal do Azure.
  2. Selecione Carregar política personalizada.
  3. Nesta ordem, carregue os arquivos de política:
    1. TrustFrameworkBase.xml
    2. TrustFrameworkLocalization.xml
    3. TrustFrameworkExtensions.xml
    4. SignUpOrSignin.xml
    5. ProfileEdit.xml
    6. PasswordReset.xml

À medida que você carrega os arquivos, o Azure adiciona o prefixo B2C_1A_ a cada um.

Sugestão

Se o editor de XML oferecer suporte à validação, valide os arquivos em relação ao TrustFrameworkPolicy_0.3.0.0.xsd esquema XML localizado no diretório raiz do pacote inicial. A validação do esquema XML identifica erros antes do upload.

Testar a política personalizada

  1. Em Políticas personalizadas, selecione B2C_1A_signup_signin.
  2. Para Select application na página de visão geral da política personalizada, selecione o aplicativo Web que você deseja testar, como o chamado webapp1.
  3. Certifique-se de que o URL de resposta é https://jwt.ms.
  4. Selecione Executar agora.
  5. Inscreva-se usando um endereço de e-mail.
  6. Selecione Executar agora novamente.
  7. Inicie sessão com a mesma conta para confirmar que tem a configuração correta.
  8. Selecione Executar agora novamente e selecione Facebook para iniciar sessão com o Facebook e testar a política personalizada.

Próximos passos

Neste artigo, você aprendeu como:

  • Criar um fluxo de inscrição e login de utilizador
  • Criar um fluxo de usuário de edição de perfil
  • Criar um fluxo de usuário de redefinição de senha

Em seguida, saiba como usar o Azure AD B2C para entrar e inscrever usuários em um aplicativo. Siga os aplicativos de exemplo vinculados abaixo:

Você também pode saber mais na Série Deep Dive da Arquitetura B2C do Azure AD.