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.
Neste passo a passo, saiba como integrar um aplicativo de pagamento online de exemplo no Azure Active Directory B2C (Azure AD B2C) com a API Twilio Verify. Usando o aplicativo Twilio Verify, os clientes do Azure AD B2C podem cumprir os requisitos de transação PSD2 (Diretiva de Serviços de Pagamento 2) por meio de vinculação dinâmica e autenticação forte do cliente.
Pré-requisitos
Para começar, você precisará de:
- Uma assinatura do Azure. Se você não tiver uma assinatura, poderá obter uma conta gratuita.
- Um locatário do Azure AD B2C que está vinculado à sua assinatura do Azure.
- Uma conta de avaliação no Twilio.
Descrição do cenário
Os seguintes componentes compõem a solução da Twilio:
Aplicativo Web de demonstração do .NET PSD2, que fornece a capacidade de entrar ou se inscrever e executar uma transação fictícia de alto risco.
Azure AD B2C combinou a política de autenticação e registro.
Política integrada do Azure AD B2C com a API de Verificação do Twilio usando
id_token_hint.Aplicativo Web .NET, que hospeda um
.well-knownponto de extremidade OpenIdConnect para permitir a validação de umid_token_hint.
| Passo | Descrição |
|---|---|
| 1 | O usuário inicia o login ou o cadastro no aplicativo de demonstração do PSD2. O usuário é autenticado por meio da política combinada de entrada e inscrição do Azure AD B2C. Um token é retornado ao aplicativo. Na inscrição, o número de telefone do usuário é verificado usando SMS/Telefone e registrado em sua conta do Azure AD B2C. |
| 2 | O usuário inicia uma transação de alto risco, como uma transferência de US$ 50,00. O token de acesso atual do usuário é avaliado para o PolicyId para determinar se o usuário já foi autenticado por meio de uma política personalizada Step-Up. |
| 3 | O aplicativo registra o valor da transação e o beneficiário, US$ 50,00 e John Doe, e gera um token assinado. Esse token é chamado de id_token_hint e contém a declaração amount:$500, payee:john doe. O id_token_hint é enviado junto com a solicitação para a política personalizada do Azure AD B2C, que é integrada à Twilio. |
| 4 | O Azure AD B2C verifica a assinatura do id_token_hint verificando o ponto de extremidade do OpenID Connect /.well-known de aplicativos. Após a verificação, ele extrai as declarações desse token, notadamente o amount e o payee. O usuário verá uma página para verificar seu número de celular por mensagem SMS. |
| 5 | O usuário solicita a verificação de seu número de telefone por meio de mensagem SMS e o Azure AD B2C faz uma solicitação de API REST para o ponto de extremidade da API Twilio Verify. Ele também envia a transação amount e payee como parte do processo PSD2 para gerar a OTP (senha de uso único). A Twilio envia uma mensagem SMS para o número de telefone registrado do usuário. |
| 6 | O usuário insere a OTP recebida em sua mensagem SMS e a envia para o Azure AD B2C. O Azure AD B2C faz uma solicitação de API com essa OTP para a API de verificação da Twilio para verificar se a OTP está correta. Por fim, um token é emitido para o aplicativo, com um novo PolicyId significando que o usuário intensificou sua autenticação. |
Integração com a Twilio
Obtenha uma conta de avaliação na Twilio.
Compre um número de telefone na Twilio, conforme descrito neste artigo
Navegue até Verify API no console da Twilio e siga as instruções para criar um serviço e habilitar a opção PSD2.
Configurar o aplicativo de demonstração PSD2
Abra a solução B2C-WebAPI-DotNet e substitua os seguintes valores pelos seus próprios valores específicos de locatário no web.config:
<add key="ida:Tenant" value="yourtenant.onmicrosoft.com" /> <add key="ida:TenantId" value="aaaabbbb-0000-cccc-1111-dddd2222eeee" /> <add key="ida:ClientId" value="00001111-aaaa-2222-bbbb-3333cccc4444" /> <add key="ida:ClientSecret" value="secret" /> <add key="ida:AadInstance" value="https://yourtenant.b2clogin.com/tfp/{0}/{1}" /> <add key="ida:RedirectUri" value="https://your hosted psd2 demo app url/" />O aplicativo Web também hospeda o gerador de indicador de token de ID e a interface de metadados.
Crie seu certificado de assinatura conforme descrito nesta descrição de exemplo.
Atualize as seguintes linhas com base em seu certificado no web.config:
<add key="ida:SigningCertThumbprint" value="AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00" /> <add key="ida:SigningCertAlgorithm" value="RS256" />
Carregue o aplicativo de demonstração para o provedor de hospedagem de sua escolha. As diretrizes para o Serviço de Aplicativo do Azure são fornecidas nesta descrição de exemplo, incluindo instruções para carregar seu certificado.
Atualize o registro do aplicativo Azure AD B2C adicionando uma URL de resposta equivalente à URL na qual o aplicativo está hospedado.
Abra os arquivos de política e substitua todas as instâncias de
contosopelo nome do seu locatário.Encontre o perfil técnico da API REST da Twilio Custom-SMS-Enroll. Atualize o
ServiceURLcom seu AccountSID do Twilio e o número De para o número de telefone comprado.Encontre os perfis técnicos da API REST da Twilio, TwilioRestAPI-Verify-Step1 e TwilioRestAPI-Verify-Step2, e atualize-os
ServiceURLcom o SID da sua conta da Twilio.
Integrar com o Azure AD B2C
Adicione os arquivos de política ao Azure AD B2C:
- Entre no portal do Azure como o Administrador de Política IEF B2C do seu locatário do Azure AD B2C.
- Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para o seu locatário do Azure Active Directory B2C no menu Diretórios + assinaturas.
- Escolha Todos os serviços no canto superior esquerdo do portal do Azure, pesquise e selecione O Azure AD B2C.
- Navegue até Azure AD B2C>Identity Experience Framework>Chaves de política.
- Adicione uma nova chave com o nome B2cRestTwilioClientId. Selecione manual e forneça o valor do Twilio AccountSID.
- Adicione uma nova chave com o nome B2cRestTwilioClientSecret. Selecione manual e forneça o valor do Twilio AUTH TOKEN.
- Carregar todos os arquivos de política para o seu locatário.
- Personalize a cadeia de caracteres na transformação de declaração GenerateOTPMessageEnrol para sua mensagem de texto de inscrição.
Testar a solução
- Navegue até seu aplicativo e teste as ações de entrada, inscrição e Enviar dinheiro.
Próximas etapas
Para obter informações adicionais, examine os seguintes artigos: