Partilhar via


Tutorial: Configurar o ID IDEMIA Mobile com o Azure Active Directory B2C

Antes de começar

O Azure Active Directory B2C (Azure AD B2C) tem dois métodos para definir a interação dos utilizadores com aplicações: fluxos de utilizador predefinidos ou políticas personalizadas configuráveis. Veja Descrição geral dos fluxos de utilizador e das políticas personalizadas

Integrar Azure AD B2C com o ID IDEMIA Mobile

O IDEMIA fornece serviços de autenticação biométrica, como o ID facial e a impressão digital, o que reduz a fraude e a reutilização de credenciais. Com o ID móvel, os cidadãos beneficiam de um ID digital fidedigno emitido pelo governo, como complemento ao seu ID físico. O ID móvel verifica a identidade com um PIN, um ID de toque ou um ID facial auto-selecionado. Os cidadãos controlam as suas identidades partilhando as informações necessárias para uma transação. Muitos departamentos estatais de veículos a motor (DMVs) utilizam o ID móvel.

Para saber mais, aceda a idemia.com: IDEMIA

Descrição do cenário

A integração do ID móvel inclui os seguintes componentes:

  • Azure AD B2C – servidor de autorização que verifica as credenciais do utilizador
    • Também é conhecido como o fornecedor de identidade (IdP)
  • IDEMIA Mobile ID – fornecedor openID Connect (OIDC) configurado como um fornecedor externo Azure AD B2C
  • Aplicação IDEMIA Mobile ID – uma versão digital de uma carta de condução ou ID emitido pelo estado numa aplicação no telemóvel

O ID móvel é um documento de identificação digitalizado, um token de identidade móvel portátil que as DMVs utilizam para verificar identidades individuais. O ID digitalizado assinado é armazenado em telemóveis de utilizador como uma identidade no edge. As credenciais assinadas facilitam o acesso a serviços de identidade, como comprovativo de idade, conhecimentos financeiros do cliente, acesso à conta, etc.

O diagrama seguinte ilustra os fluxos de utilizador de inscrição e início de sessão com o ID móvel.

Diagrama dos fluxos de utilizador de inscrição e início de sessão com id móvel.

  1. O utilizador visita a página de início de sessão do Azure AD B2C (a entidade de resposta), com o respetivo dispositivo e ID móvel, para realizar uma transação.
  2. Azure AD B2C efetua uma verificação de ID. Redireciona o utilizador para o router IDEMIA com um fluxo de código de autorização OIDC.
  3. O router envia um desafio biométrico para a aplicação móvel do utilizador com detalhes do pedido de autenticação e autorização.
  4. Consoante a segurança, poderá ser pedido ao utilizador para fornecer mais detalhes: introduzir um PIN, tirar uma selfie em direto ou ambos.
  5. A resposta de autenticação fornece provas de posse, presença e consentimento. A resposta regressa ao router.
  6. O router verifica as informações do utilizador e responde ao Azure AD B2C com o resultado.
  7. É concedido ou negado acesso ao utilizador.

Ativar id móvel

Para começar, aceda à página idemia.com Entrar em contacto para pedir uma demonstração. No campo de texto do formulário de pedido, indique o seu interesse na integração do Azure AD B2C.

Integrar o ID Móvel no Azure AD B2C

Utilize as secções seguintes para preparar e executar processos de integração.

Pré-requisitos

Para começar, precisa do seguinte:

  • Acesso a utilizadores com um IDEMIA, credencial de ID móvel (mID) emitida pelo estado dos EUA

    • Em alternativa, durante a fase de teste, a aplicação de demonstração mID do IDEMIA
  • Uma subscrição do Azure

  • Um inquilino Azure AD B2C associado à subscrição do Azure

  • A aplicação Web empresarial registada num inquilino Azure AD B2C

    • Para testar, configurar https://jwt.ms, uma aplicação Web da Microsoft com conteúdo de token descodificado

    Nota

    O conteúdo do token não sai do browser.

Submeter uma aplicação de entidade confiadora para mID

Durante a integração do ID móvel, são fornecidas as seguintes informações.

Propriedade Descrição
Nome da Aplicação Azure AD B2C ou outro nome de aplicação
Client_ID O identificador exclusivo do fornecedor de identidade (IdP)
Segredo do Cliente Palavra-passe que a aplicação da entidade confiadora utiliza para autenticar com o IdP do IDEMIA
Ponto final de metadados Um URL a apontar para um documento de configuração do emissor de tokens, também conhecido como um ponto final de configuração bem conhecido do OpenID
URIs 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

Se utilizar um domínio personalizado, introduza https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp.
Publicar URIs de redirecionamento de início de sessão https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/{policy}/oauth2/v2.0/logout
Enviar um pedido de terminar sessão.

Nota

Precisará do ID de Cliente e do Segredo do Cliente mais tarde para configurar o IdP no Azure AD B2C.

Criar uma chave de política

Armazene o Segredo do Cliente IDEMIA anotado no seu inquilino Azure AD B2C. Para obter as seguintes instruções, utilize o diretório com o seu inquilino Azure AD B2C.

  1. Inicie sessão no portal do Azure.
  2. Na barra de ferramentas do portal, selecione Diretórios + subscrições.
  3. Na página Definições do portal, Diretórios + subscrições, na lista Nome do diretório, localize a sua Azure AD diretório B2C
  4. Selecione Mudar.
  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 Descrição geral , selecione Identity Experience Framework.
  8. Selecione Chaves de Política.
  9. Selecione Adicionar.
  10. Em Opções, selecione Manual.
  11. Introduza um Nome para a chave de política. Por exemplo, IdemiaAppSecret. O prefixo B2C_1A_ é adicionado ao nome da chave.
  12. Em Segredo, introduza o Segredo do Cliente que anotou.
  13. Em Utilização da chave, selecione Assinatura.
  14. Selecione Criar.

Configurar o ID móvel como um IdP Externo

Para permitir que os utilizadores iniciem sessão com o ID móvel, defina o IDEMIA como um fornecedor de afirmações. Esta ação garante Azure AD B2C comunica através de um ponto final, que fornece afirmações Azure AD B2C utiliza para verificar a autenticação do utilizador com biometria.

Para definir o IDEMIA como um fornecedor de afirmações, adicione-o ao elemento ClaimsProvider no ficheiro de extensão de política.

     <TechnicalProfile Id="Idemia-Oauth2">
          <DisplayName>IDEMIA</DisplayName>
          <Description>Login with your IDEMIA identity</Description>
          <Protocol Name="OAuth2" />
          <Metadata>
            <Item Key="METADATA">https://idp.XXXX.net/oxauth/.well-known/openid-configuration</Item>
            <!-- Update the Client ID below to the Application ID -->
            <Item Key="client_id">00001111-aaaa-2222-bbbb-3333cccc4444</Item>
            <Item Key="response_types">code</Item>
            <Item Key="scope">openid id_basic mt_scope</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
            <Item Key="token_endpoint_auth_method">client_secret_basic</Item>
            <Item Key="ClaimsEndpoint">https://idp.XXXX.net/oxauth/restv1/userinfo</Item>
            <Item Key="ValidTokenIssuerPrefixes">https://login.microsoftonline.com/</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_IdemiaAppSecret" />
</CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="acr" PartnerClaimType="acr_values" DefaultValue="loa-2" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
            <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="firstName1" />
            <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="lastName1" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="idemia" />
            <OutputClaim ClaimTypeReferenceId="documentId" />
            <OutputClaim ClaimTypeReferenceId="address1" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
           

Defina client_id para o ID da aplicação a partir do registo da aplicação.

Propriedade Descrição
Âmbito Para o OpenID Connect (OIDC), o requisito mínimo é definir o parâmetro de âmbito como openid. Acrescente mais âmbitos como uma lista delimitada por espaço.
redirect_uri Esta localização é onde o agente de utilizador envia o código de autorização para Azure AD B2C.
response_type Para o fluxo de código de autorização, selecione código
acr_values Este parâmetro controla os métodos de autenticação que o utilizador tem de executar durante a autenticação.

Selecione um dos seguintes valores:

Valor do parâmetro Efeito no processo de autenticação do utilizador
loa-2 Apenas autenticação multifator Microsoft Entra baseada em criptofator
loa-3 MFA baseada em criptografia, além de outro fator
loa-4 MFA baseada em criptografia, além de que o utilizador executa o PIN e a autenticação biométrica

O ponto final /userinfo fornece as afirmações para os âmbitos pedidos no pedido de autorização. Para o <mt_scope>, existem afirmações como Nome Próprio, Apelido e Número de Carta de Condução, entre outros itens. As afirmações definidas para um âmbito são publicadas na secção scope_to_claims_mapping da API de deteção. Azure AD B2C solicita afirmações do ponto final de afirmações e devolve-as no elemento OutputClaims. Poderá ter de mapear o nome da afirmação na sua política para o nome no IdP. Defina o tipo de afirmação no elemento ClaimSchema:

<ClaimType Id="documentId">
     <DisplayName>documentId</DisplayName>
     <DataType>string</DataType>
</ClaimType>
<ClaimType Id="address1">
     <DisplayName>address</DisplayName>
     <DataType>string</DataType>
</ClaimType>

Adicionar um percurso de utilizador

Para estas instruções, o IdP está configurado, mas não está em nenhuma página de início de sessão. Se não tiver um percurso de utilizador personalizado, copie um percurso de utilizador de modelo.

  1. A partir do pacote de arranque, abra o TrustFrameworkBase.xml ficheiro.
  2. Localize e copie o conteúdo do UserJourneys elemento, que inclui ID=SignUpOrSignIn.
  3. Abra o TrustFrameworkExtensions.xml.
  4. Localize o elemento UserJourneys . Se não existir nenhum elemento, adicione um.
  5. Cole o conteúdo do elemento UserJourney como subordinado do elemento UserJourneys.
  6. Mude o nome do ID de percurso do utilizador. Por exemplo, ID=CustomSignUpSignIn.

Adicionar o IdP a um percurso do utilizador

Se existir um percurso de utilizador, adicione o novo IdP ao mesmo. Primeiro, adicione um botão de início de sessão e, em seguida, ligue-o a uma ação, que é o perfil técnico que criou.

  1. No percurso do utilizador, localize o elemento do passo de orquestração com Type=CombinedSignInAndSignUpou Type=ClaimsProviderSelection. Normalmente, é o primeiro passo de orquestração. O elemento ClaimsProviderSelections tem uma lista de IdP com a qual os utilizadores iniciam sessão. A ordem dos controlos de elementos é a ordem dos botões de início de sessão que o utilizador vê.
  2. Adicione um elemento ClaimsProviderSelection XML.
  3. Defina o valor TargetClaimsExchangeId como um nome amigável.
  4. Adicione um elemento ClaimsExchange .
  5. Defina o ID para o valor do ID de troca de afirmações de destino.
  6. Atualize o valor TechnicalProfileReferenceId para o ID do perfil técnico que criou.

O XML seguinte demonstra os dois primeiros passos de orquestração de um percurso de utilizador com o IdP:

<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
  <ClaimsProviderSelections>
    ...
    <ClaimsProviderSelection TargetClaimsExchangeId="IdemiaExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="IdemiaExchange" TechnicalProfileReferenceId="Idemia-Oauth2" />
  </ClaimsExchanges>
</OrchestrationStep>

Configurar a política da entidade confiadora

A política da entidade confiadora, por exemplo ,SignUpSignIn.xml, especifica o percurso do utilizador que o Azure AD B2C executa.

  1. Localize o elemento DefaultUserJourney na entidade confiadora.
  2. Atualize o ReferenceId para corresponder ao ID de percurso do utilizador, no qual adicionou o IdP.

No exemplo seguinte, para o percurso do CustomSignUpOrSignIn utilizador, o ReferenceId está definido como CustomSignUpOrSignIn.

<RelyingParty>
  <DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
  ...
</RelyingParty>

Carregar a política personalizada

Para obter as seguintes instruções, utilize o diretório com o seu inquilino Azure AD B2C.

  1. Inicie sessão no portal do Azure.

  2. Na barra de ferramentas do portal, selecione Diretórios + subscrições.

  3. Na página Definições do portal, Diretórios + subscrições, na lista Nome do diretório, localize o Azure AD diretório B2C.

  4. Selecione Mudar.

  5. Na 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 ficheiros de política que alterou pela seguinte ordem:

    • A política de extensão, por exemplo TrustFrameworkExtensions.xml
    • A política da entidade confiadora, como SignUpSignIn.xml

Testar a política personalizada

  1. Selecione a política da entidade confiadora, por exemplo B2C_1A_signup_signin.
  2. Em Aplicação, selecione uma aplicação Web que tenha registado.
  3. https://jwt.msaparece para URL de Resposta.
  4. Selecione Executar agora.
  5. Na página de inscrição ou início de sessão, selecione IDEMIA.
  6. O browser é redirecionado para https://jwt.ms. Veja o conteúdo do token devolvido pelo Azure AD B2C.

Saiba mais: Tutorial: Registar uma aplicação Web no Azure AD B2C

Passos seguintes