Partilhar via


Configurar o Azure Ative Directory B2C com Bluink eID-Me para verificação de identidade

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

O Azure Ative Directory B2C (Azure AD B2C) tem dois métodos para definir a interação dos usuários com aplicativos: fluxos de usuário predefinidos ou políticas personalizadas configuráveis. As políticas personalizadas abordam cenários complexos. Para a maioria dos cenários, recomendamos fluxos de usuários. Consulte a secção Visão geral de fluxos de utilizadores e políticas personalizadas

Integrar a autenticação do Azure AD B2C com o eID-Me

Aprenda a integrar a autenticação do Azure AD B2C com o Bluink eID-Me, uma solução de verificação de identidade e identidade digital descentralizada para cidadãos canadenses. Com o eID-Me, os locatários do Azure AD B2C verificam a identidade do usuário, obtêm declarações de identidade de inscrição e entrada verificadas. A integração suporta autenticação multifator e login sem senha com uma identidade digital segura. As organizações podem atender aos requisitos de Nível de Garantia de Identidade (IAL) 2 e Conheça Seu Cliente (KYC).

Para saber mais, acesse bluink.ca: Bluink Ltd

Pré-requisitos

Para começar, você precisa:

Consulte também Tutorial: Criar fluxos de usuário e políticas personalizadas no Azure AD B2C.

Descrição do cenário

O eID-Me integra-se ao Azure AD B2C como um provedor de identidade OpenID Connect (OIDC). Os seguintes componentes compõem a solução eID-Me com o Azure AD B2C:

  • Azure AD B2C locatário - configurado como uma parte confiável no eID-Me permite que o eID-Me confie em um locatário do Azure AD B2C para inscrição e início de sessão
  • Aplicação de inquilinos do Azure AD B2C - a suposição é que os inquilinos precisam de uma aplicação de inquilinos do Azure AD B2C
    • O aplicativo recebe declarações de identidade recebidas pelo Azure AD B2C durante a transação
  • aplicativos de smartphone eID-Me - Os usuários locatários do Azure AD B2C precisam do aplicativo para iOS ou Android
  • Identidades digitais eID-Me emitidas - a partir da prova de identidade eID-Me
    • Os usuários recebem uma identidade digital para a carteira digital no aplicativo. São necessários documentos de identidade válidos.

Os aplicativos eID-Me autenticam os usuários durante as transações. A autenticação de chave pública X509 fornece MFA sem senha, usando uma chave de assinatura privada na identidade digital eID-Me.

O diagrama a seguir ilustra a prova de identidade eID-Me, que ocorre fora dos fluxos B2C do Azure AD.

Diagrama do fluxo de verificação de identidade no eID-Me.

  1. O utilizador carrega uma selfie para a aplicação para smartphone eID-Me.
  2. O utilizador digitaliza e carrega um documento de identificação emitido pelo governo, como passaporte ou carta de condução, para a aplicação para smartphone eID-Me.
  3. O eID-Me envia os dados ao serviço de identidade para verificação.
  4. O usuário recebe uma identidade digital, que é salva no aplicativo.

O diagrama a seguir ilustra a integração do Azure AD B2C com o eID-Me.

Diagrama da integração do Azure AD B2C com o eID-Me.

  1. O utilizador abre a página de início de sessão do Azure AD B2C e inicia sessão ou inscreve-se com um nome de utilizador.
  2. Utilizador encaminhado para a política de início de sessão e registo do Azure AD B2C.
  3. O Azure AD B2C redireciona o usuário para o roteador de identidade eID-Me usando o fluxo de código de autorização OIDC.
  4. O roteador envia notificação por push para o aplicativo móvel do usuário com detalhes de solicitação de autenticação e autorização.
  5. O desafio de autenticação do usuário é exibido e, em seguida, um prompt para declarações de identidade é exibido.
  6. A resposta do desafio vai para o roteador.
  7. O roteador responde ao Azure AD B2C com um resultado de autenticação.
  8. A resposta do token de ID B2C do Azure AD vai para o aplicativo.
  9. O acesso é concedido ou negado ao usuário.

Introdução ao eID-Me

Vá para a página Fale Conosco do bluink.ca para solicitar uma demonstração com o objetivo de estabelecer um ambiente de teste ou produção para configurar os locatários do Azure AD B2C como parte confiável. Os locatários determinam as declarações de identidade necessárias dos consumidores que se inscrevem no eID-Me.

Configurar um aplicativo no eID-Me

Para configurar a sua aplicação de locatário como uma parte confiável do eID-ME no eID-Me, forneça as seguintes informações:

Propriedade Descrição
Nome Azure AD B2C ou outro nome de aplicativo
Domínio name.onmicrosoft.com
URIs de Redirecionamento https://jwt.ms
URLs de redirecionamento https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/oauth2/authresp
Por exemplo: https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/oauth2/authresp
Para um domínio personalizado, insira https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp.
URL da página inicial do aplicativo Aparece para o usuário final
URL da política de privacidade do aplicativo Aparece para o usuário final

Observação

Quando a terceira parte confiável é configurada, ID-Me fornece uma ID do Cliente e um Segredo do Cliente. Observe a ID do Cliente e o Segredo do Cliente para configurar o provedor de identidade (IdP) no Azure AD B2C.

Adicionar um novo provedor de Identidade no Azure AD B2C

Para obter as instruções a seguir, use o diretório com o locatário do Azure AD B2C.

  1. Entre no portal do Azure como pelo menos Administrador de Políticas IEF B2C do locatário do Azure AD B2C.
  2. No menu superior, selecione Diretório + subscrição.
  3. Selecione o diretório com o locatário.
  4. No canto superior esquerdo do portal do Azure, selecione Todos os serviços.
  5. Procure e selecione Azure AD B2C.
  6. Navegue até Painel>provedores de identidade do Azure Ative Directory B2C>.
  7. Selecione Novo Provedor OpenID Connect.
  8. Selecione Adicionar.

Configurar um provedor de identidade

Para configurar um provedor de identidade:

  1. Selecione tipo de provedor de identidade>OpenID Connect.
  2. No formulário do fornecedor de identidade, para Nome, insira eID-Me Passwordless ou outro nome.
  3. Para o ID do Cliente , insira o ID do Cliente do eID-Me.
  4. Para Segredo do Cliente , insira o Segredo do Cliente do eID-Me.
  5. Para Escopo, selecione openid email perfil.
  6. Para tipo de resposta, selecione código.
  7. Para modo de resposta, selecione envio de formulário.
  8. Selecione OK.
  9. Selecione para mapear as declarações deste provedor de identidade.
  10. Para a identificação de utilizador , use sub.
  11. Para Nome de exibição, use nome.
  12. Para nome próprio, use nome_proprio.
  13. Para Sobrenome, use nome_familia.
  14. Para de e-mail , use e-mail.
  15. Selecione Guardar.

Configurar autenticação multifator

O eID-Me é um autenticador multifator, portanto, a configuração de autenticação multifator de fluxo de usuário não é necessária.

Criar uma política de fluxo de usuário

Para as instruções a seguir, o eID-Me aparece como um novo provedor de identidade OIDC em provedores de identidade B2C.

  1. No locatário do Azure AD B2C, em Políticas, selecione Fluxos de utilizador.
  2. Selecione Novo fluxo de utilizador.
  3. Selecione Inscrever-se e iniciar sessão>Versão>Criar.
  4. Insira uma política Nome.
  5. Na seção Provedores de identidade, selecione o provedor de identidade eID-Me que foi criado.
  6. Para Contas Locais, selecione Nenhuma. A seleção desativa a autenticação de e-mail e senha.
  7. Selecione Executar fluxo de utilizador.
  8. Insira um URL de resposta do tipo, como https://jwt.ms.
  9. O navegador redireciona para a página de início de sessão do eID-Me.
  10. Introduza o nome da conta do registo de utilizador.
  11. O usuário recebe notificação por push no dispositivo móvel com eID-Me.
  12. É apresentado um desafio de autenticação.
  13. O desafio é aceite e o navegador redireciona para o URL de resposta.

Observação

O Azure Ative Directory B2C (Azure AD B2C) tem dois métodos para definir a interação dos usuários com aplicativos: fluxos de usuário predefinidos ou políticas personalizadas configuráveis. As políticas personalizadas abordam cenários complexos. Para a maioria dos cenários, recomendamos fluxos de usuários. Consulte a secção Visão geral de fluxos de utilizadores e políticas personalizadas

Criar uma chave de política

Armazene o Segredo do Cliente que você registrou em seu locatário do Azure AD B2C. Para obter as instruções a seguir, use o diretório com o locatário do Azure AD B2C.

  1. Inicie sessão no portal Azure.
  2. Na barra de ferramentas do portal, selecione o Diretórios + Subscrições.
  3. Na página Configurações do Portal, Diretórios + assinaturas, na lista Nome do diretório, localize o diretório do Azure AD B2C.
  4. Selecione Trocar.
  5. No canto superior esquerdo do portal do Azure, selecione Todos os serviços.
  6. Procure e selecione Azure AD B2C.
  7. Na página Visão geral, selecione Identity Experience Framework.
  8. Selecione Chaves de política.
  9. Selecione Adicionar.
  10. Para as Opções , escolha Manual .
  11. Insira um Nome para a chave da política. Por exemplo, eIDMeClientSecret. O prefixo B2C_1A_ é adicionado ao nome da chave.
  12. Em Secreto, insira o Segredo do Cliente que anotaste.
  13. Para o uso da chave , selecione Assinatura .
  14. Selecione Criar.

Configurar o eID-Me como um provedor de identidade

Defina o eID-Me como um provedor de declarações para permitir que os usuários entrem com o eID-Me. O Azure AD B2C comunica-se com ele por meio de um endpoint. O endpoint fornece afirmações usadas pelo Azure AD B2C para verificar a autenticação do utilizador com um ID digital no seu dispositivo.

Para definir o eID-Me como um provedor de declarações, adicione-o ao elemento ClaimsProvider no ficheiro de extensão de política.

  1. Abra o TrustFrameworkExtensions.xml.

  2. Encontre o elemento ClaimsProviders. Se não aparecer, adicione-o sob o elemento raiz.

  3. Adicione um novo ClaimsProvider:

       <ClaimsProvider>
       <Domain>eID-Me</Domain>
       <DisplayName>eID-Me</DisplayName>
       <TechnicalProfiles>
         <TechnicalProfile Id="eID-Me-OIDC">
           <!-- The text in the following DisplayName element is shown to the user on the claims provider 
    selection screen. -->
           <DisplayName>eID-Me for Sign In</DisplayName>
           <Protocol Name="OpenIdConnect" />
           <Metadata>
             <Item Key="ProviderName">https://eid-me.bluink.ca</Item>
             <Item Key="METADATA">https://demoeid.bluink.ca/.well-known/openid-configuration</Item>
             <Item Key="response_types">code</Item>
             <Item Key="scope">openid email profile</Item>
             <Item Key="response_mode">form_post</Item>
             <Item Key="HttpBinding">POST</Item>
             <Item Key="token_endpoint_auth_method">client_secret_post</Item>
             <Item Key="client_id">eid_me_rp_client_id</Item>
             <Item Key="UsePolicyInRedirectUri">false</Item>
           </Metadata>
           <CryptographicKeys>
             <Key Id="client_secret" StorageReferenceId="B2C_1A_eIDMeClientSecret" />
           </CryptographicKeys>
           <InputClaims />
           <OutputClaims>
             <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
             <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid" />
             <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
             <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="family_name" />
             <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
             <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" />
             <OutputClaim ClaimTypeReferenceId="IAL" PartnerClaimType="identity_assurance_level_achieved" DefaultValue="unknown IAL" />
             <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
             <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss" />
             <OutputClaim ClaimTypeReferenceId="locality" PartnerClaimType="locality" DefaultValue="unknown locality" />
             <OutputClaim ClaimTypeReferenceId="region" PartnerClaimType="region" DefaultValue="unknown region" />
           </OutputClaims>
           <OutputClaimsTransformations>
             <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
             <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
             <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
             <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
           </OutputClaimsTransformations>
           <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
         </TechnicalProfile>
       </TechnicalProfiles>
     </ClaimsProvider>
    
  4. Para eid_me_rp_client_id insira o ID do cliente da parte dependente do eID-Me.

  5. Selecione Guardar.

Declarações de identidade suportadas

Você pode adicionar mais declarações de identidade suportadas pelo eID-Me.

  1. Abra o TrustFrameworksExtension.xml.
  2. Encontre o elemento BuildingBlocks.

Observação

Encontre listas de declarações de identidade eID-Me suportadas em repositório OID com identificadores OIDC em de configuração bem conhecida/openid.

<BuildingBlocks>
<ClaimsSchema>
 <ClaimType Id="IAL">
     <DisplayName>Identity Assurance Level</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="identity_assurance_level_achieved" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The Identity Assurance Level Achieved during proofing of the digital identity.</AdminHelpText>
     <UserHelpText>The Identity Assurance Level Achieved during proofing of the digital identity.</UserHelpText>
     <UserInputType>Readonly</UserInputType>
   </ClaimType>

<ClaimType Id="picture">
     <DisplayName>Portrait Photo</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="thumbnail_portrait" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The portrait photo of the user.</AdminHelpText>
     <UserHelpText>Your portrait photo.</UserHelpText>
     <UserInputType>Readonly</UserInputType>
   </ClaimType>

 <ClaimType Id="middle_name">
     <DisplayName>Portrait Photo</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="middle_name" />
     </DefaultPartnerClaimTypes>
     <UserHelpText>Your middle name.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

<ClaimType Id="birthdate">
     <DisplayName>Date of Birth</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="birthdate" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's date of birth.</AdminHelpText>
     <UserHelpText>Your date of birth.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

 <ClaimType Id="gender">
     <DisplayName>Gender</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="gender" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's gender.</AdminHelpText>
     <UserHelpText>Your gender.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>
 
 <ClaimType Id="street_address">
     <DisplayName>Locality/City</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="street_address" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's full street address, which MAY include house number, street name, post office box.</AdminHelpText>
     <UserHelpText>Your street address of residence.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

<ClaimType Id="locality">
     <DisplayName>Locality/City</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="locality" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's current city or locality of residence.</AdminHelpText>
     <UserHelpText>Your current city or locality of residence.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

   <ClaimType Id="region">
     <DisplayName>Province or Territory</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="region" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's current province or territory of residence.</AdminHelpText>
     <UserHelpText>Your current province or territory of residence.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

   <ClaimType Id="country">
     <DisplayName>Country</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="country" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's current country of residence.</AdminHelpText>
     <UserHelpText>Your current country of residence.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

   <ClaimType Id="dl_number">
     <DisplayName>Driver's Licence Number</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="dl_number" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's driver's licence number.</AdminHelpText>
     <UserHelpText>Your driver's licence number.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>

   <ClaimType Id="dl_class">
     <DisplayName>Driver's Licence Class</DisplayName>
     <DataType>string</DataType>
     <DefaultPartnerClaimTypes>
       <Protocol Name="OpenIdConnect" PartnerClaimType="dl_class" />
     </DefaultPartnerClaimTypes>
     <AdminHelpText>The user's driver's licence class.</AdminHelpText>
     <UserHelpText>Your driver's licence class.</UserHelpText>
     <UserInputType>TextBox</UserInputType>
   </ClaimType>
 </ClaimsSchema>

Adicionar uma jornada do utilizador

Para as instruções a seguir, o provedor de identidade está configurado, mas não em nenhuma página de início de sessão. Se não tens um percurso de utilizador personalizado, copia um percurso de utilizador de modelo.

  1. No pacote inicial, abra o arquivo TrustFrameworkBase.xml.
  2. Localize e copie o conteúdo do elemento UserJourneys que inclui ID=SignUpOrSignIn.
  3. Abra o TrustFrameworkExtensions.xml.
  4. Localize o elemento UserJourneys. Se o elemento não aparecer, adicione um.
  5. Cole o conteúdo do elemento UserJourney como filho do elemento UserJourneys.
  6. Renomeie o ID da jornada do usuário, por exemplo, ID=CustomSignUpSignIn.

Adicionar o provedor de identidade a um percurso do utilizador

Adicione o novo provedor de identidade à jornada do usuário.

  1. Na jornada do usuário, localize o elemento da etapa de orquestração com Type=CombinedSignInAndSignUpou Type=ClaimsProviderSelection. Geralmente é o primeiro passo da orquestração. O elemento ClaimsProviderSelections tem uma lista de provedores de identidade com os quais os usuários se autenticam. A ordem dos elementos controla a ordem dos botões de entrada que o usuário vê.
  2. Adicione um ClaimsProviderSelection elemento XML.
  3. Defina o valor de TargetClaimsExchangeId como um nome amigável.
  4. Na próxima etapa de orquestração, adicione um elemento ClaimsExchange.
  5. Defina a ID para o valor do ID de troca de reivindicações de destino.
  6. Atualize o valor vTechnicalProfileReferenceId para o ID do perfil técnico que você criou.

O XML a seguir demonstra sete etapas de orquestração da jornada do usuário com o provedor de identidade:

 <UserJourney Id="eIDME-SignUpOrSignIn">
   <OrchestrationSteps>
     <OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
       <ClaimsProviderSelections>
         <ClaimsProviderSelection TargetClaimsExchangeId="eIDMeExchange" />
        </ClaimsProviderSelections>
   </OrchestrationStep>
     <!-- Check if the user has selected to sign in using one of the social providers -->
     <OrchestrationStep Order="2" Type="ClaimsExchange">
       <Preconditions>
         <Precondition Type="ClaimsExist" ExecuteActionsIf="true">
           <Value>objectId</Value>
           <Action>SkipThisOrchestrationStep</Action>
         </Precondition>
       </Preconditions>
       <ClaimsExchanges>
         <ClaimsExchange Id="eIDMeExchange" TechnicalProfileReferenceId="eID-Me-OIDC" />
       </ClaimsExchanges>
     </OrchestrationStep>
     <!-- For social IDP authentication, attempt to find the user account in the directory. -->
     <OrchestrationStep Order="3" Type="ClaimsExchange">
       <Preconditions>
         <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
           <Value>authenticationSource</Value>
           <Value>localAccountAuthentication</Value>
           <Action>SkipThisOrchestrationStep</Action>
         </Precondition>
       </Preconditions>
       <ClaimsExchanges>
         <ClaimsExchange Id="AADUserReadUsingAlternativeSecurityId" TechnicalProfileReferenceId="AAD-UserReadUsingAlternativeSecurityId-NoError" />
       </ClaimsExchanges>
     </OrchestrationStep>
     <!-- Show self-asserted page only if the directory does not have the user account already (i.e. we do not have an objectId).  -->
     <OrchestrationStep Order="4" Type="ClaimsExchange">
       <Preconditions>
         <Precondition Type="ClaimsExist" ExecuteActionsIf="true">
           <Value>objectId</Value>
           <Action>SkipThisOrchestrationStep</Action>
         </Precondition>
       </Preconditions>
       <ClaimsExchanges>
         <ClaimsExchange Id="SelfAsserted-Social" TechnicalProfileReferenceId="SelfAsserted-Social" />
       </ClaimsExchanges>
     </OrchestrationStep>
     <!-- This step reads any user attributes that we may not have received when authenticating using ESTS so they can be sent in the token. -->
     <OrchestrationStep Order="5" Type="ClaimsExchange">
       <Preconditions>
         <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
           <Value>authenticationSource</Value>
           <Value>socialIdpAuthentication</Value>
           <Action>SkipThisOrchestrationStep</Action>
         </Precondition>
       </Preconditions>
       <ClaimsExchanges>
         <ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" />
       </ClaimsExchanges>
     </OrchestrationStep>
     <!-- The previous step (SelfAsserted-Social) could have been skipped if there were no attributes to collect 
          from the user. So, in that case, create the user in the directory if one does not already exist 
          (verified using objectId which would be set from the last step if account was created in the directory. -->
     <OrchestrationStep Order="6" Type="ClaimsExchange">
       <Preconditions>
         <Precondition Type="ClaimsExist" ExecuteActionsIf="true">
           <Value>objectId</Value>
           <Action>SkipThisOrchestrationStep</Action>
         </Precondition>
       </Preconditions>
       <ClaimsExchanges>
         <ClaimsExchange Id="AADUserWrite" TechnicalProfileReferenceId="AAD-UserWriteUsingAlternativeSecurityId" />
       </ClaimsExchanges>
     </OrchestrationStep>
     <OrchestrationStep Order="7" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
   </OrchestrationSteps>
   <ClientDefinition ReferenceId="DefaultWeb" />
 </UserJourney>

Configurar a política da parte confiadora

A política da parte confiável especifica o percurso do utilizador que o Azure AD B2C executa. Você pode controlar as declarações passadas para o seu aplicativo. Ajuste o elemento OutputClaims do elemento eID-Me-OIDC-Signup TechnicalProfile. No exemplo a seguir, a aplicação recebe o código postal do utilizador, a localidade, a região, o IAL, o retrato, o nome do meio e a data de nascimento. Ele recebe a afirmação booleana signupConditionsSatisfied, que indica se uma conta foi criada.

 <RelyingParty>
     <DefaultUserJourney ReferenceId="eIDMe-SignUpOrSignIn" />
     <TechnicalProfile Id="PolicyProfile">
       <DisplayName>PolicyProfile</DisplayName>
       <Protocol Name="OpenIdConnect" />
       <OutputClaims>
         <OutputClaim ClaimTypeReferenceId="displayName" />
         <OutputClaim ClaimTypeReferenceId="givenName" />
         <OutputClaim ClaimTypeReferenceId="surname" />
         <OutputClaim ClaimTypeReferenceId="email" />
         <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
         <OutputClaim ClaimTypeReferenceId="identityProvider" />
         <OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />
         <OutputClaim ClaimTypeReferenceId="postalCode" PartnerClaimType="postal_code" DefaultValue="unknown postal_code" />
         <OutputClaim ClaimTypeReferenceId="locality" PartnerClaimType="locality" DefaultValue="unknown locality" />
         <OutputClaim ClaimTypeReferenceId="region" PartnerClaimType="region" DefaultValue="unknown region" />
         <OutputClaim ClaimTypeReferenceId="IAL" PartnerClaimType="identity_assurance_level_achieved" DefaultValue="unknown IAL" />
         <OutputClaim ClaimTypeReferenceId="picture" PartnerClaimType="thumbnail_portrait" DefaultValue="unknown portrait" />
         <OutputClaim ClaimTypeReferenceId="middle_name" PartnerClaimType="middle_name" DefaultValue="unknown middle name" />
         <OutputClaim ClaimTypeReferenceId="birthdate" PartnerClaimType="birthdate" DefaultValue="unknown DOB" />
         <OutputClaim ClaimTypeReferenceId="newUser" PartnerClaimType="signupConditionsSatisfied" DefaultValue="false" />
       </OutputClaims>
       <SubjectNamingInfo ClaimType="sub" />
     </TechnicalProfile>
   </RelyingParty>

Carregar a política personalizada

Para obter as instruções a seguir, use o diretório com o locatário do Azure AD B2C.

  1. Inicie sessão no portal Azure.
  2. Na barra de ferramentas do portal, selecione o Diretórios + Subscrições.
  3. Na página Configurações do Portal , Diretórios + assinaturas, na lista Nome do diretório, localize o diretório B2C do Azure AD.
  4. Selecione Trocar.
  5. No portal do Azure, procure e selecione Azure AD B2C.
  6. Em Políticas, selecione Identity Experience Framework.
  7. Selecione Carregar política personalizada.
  8. Carregue os dois arquivos de política alterados na seguinte ordem:
  • A política de extensão, como por exemplo TrustFrameworkBase.xml
  • A política da parte dependente, por exemplo, SignUp.xml

Testar a política personalizada

  1. Selecione a política de confiança da parte, por exemplo B2C_1A_signup.
  2. Para Application, selecione um aplicativo Web que você registrou.
  3. O URL de resposta é https://jwt.ms.
  4. Selecione Executar agora.
  5. A política de inscrição invoca o eID-Me.
  6. Para iniciar sessão, selecione eID-Me.
  7. O navegador redireciona para https://jwt.ms.
  8. O conteúdo do token retornado pelo Azure AD B2C aparece.

Saiba mais: Tutorial: Registrar um aplicativo Web no Azure AD B2C

Próximos passos