Share via


Integrera Twilio Verify App med Azure Active Directory B2C

I den här genomgången får du lära dig hur du integrerar ett exempel på en onlinebetalningsapp i Azure Active Directory B2C (Azure AD B2C) med Twilio Verify API. Genom att använda Twilio Verify App kan Azure AD B2C-kunder uppfylla transaktionskraven för PSD2 (Payment Services Directive 2) via dynamisk länkning och stark kundautentisering.

Förutsättningar

För att komma igång behöver du:

Beskrivning av scenario

Följande komponenter utgör Twilio-lösningen:

  • .NET PSD2-demowebbapp, som ger möjlighet att logga in eller registrera sig, och utföra en dummy-transaktion med hög risk.

  • Kombinerad inloggnings- och registreringsprincip för Azure AD B2C.

  • Azure AD B2C-princip integrerad med Twilio Verify API med .id_token_hint

  • .NET Web App, som är värd för en .well-known OpenId Anslut slutpunkt för att tillåta validering av en id_token_hint.

    twilio flow

Steg Description
1 Användaren initierar inloggning eller registrering till PSD2 Demo-appen. Användaren autentiseras via den kombinerade inloggnings- och registreringsprincipen för Azure AD B2C. En token returneras till programmet. Vid registreringen verifieras användarens telefonnummer med sms/Telefon och registreras på deras Azure AD B2C-konto.
2 Användaren initierar en högrisktransaktion, till exempel en överföring på 50,00 USD. Användarens aktuella åtkomsttoken utvärderas för PolicyId för att avgöra om användaren redan har autentiserats via en anpassad step-up-princip.
3 Programmet registrerar transaktionsvärdet och betalningsmottagaren, 50,00 USD och John Doe, och genererar en signerad token. Den här token kallas för och id_token_hint innehåller anspråket amount:$500, payee:john doe. id_token_hint Skickas tillsammans med begäran till den anpassade Azure AD B2C-principen, som är integrerad med Twilio.
4 Azure AD B2C verifierar signaturen för id_token_hint genom att kontrollera programmens /.well-known OpenId-Anslut slutpunkt. När du har verifierat extraherar den anspråken från den här token, särskilt amount och payee. Användaren ser en sida för att verifiera sitt mobiltelefonnummer via SMS.
5 Användaren begär att verifiera sitt telefonnummer via SMS och Azure AD B2C skickar en REST API-begäran till Twilio Verify API-slutpunkten. Den skickar också transaktionen amount och payee som en del av PSD2-processen för att generera engångslösenordet (OTP). Twilio skickar ett SMS till användarens registrerade telefonnummer.
6 Användaren anger den OTP som tas emot i sitt SMS och skickar det till Azure AD B2C. Azure AD B2C skickar en API-begäran med denna OTP till Twilios verifierande API för att verifiera att OTP är korrekt. Slutligen utfärdas en token till programmet, med ett nytt PolicyId som betecknar att användaren har intensifierat sin autentisering.

Registrera med Twilio

  1. Skaffa ett utvärderingskonto på Twilio.

  2. Köp ett Telefon nummer på Twilio enligt beskrivningen i den här artikeln

  3. Gå till Verifiera API i Twilio-konsolen och följ anvisningarna för att skapa en tjänst och aktivera alternativet PSD2.

Konfigurera PSD2-demoappen

  1. Öppna lösningen B2C-WebAPI-DotNet och ersätt följande värden med dina egna klientspecifika värden i web.config:

    <add key="ida:Tenant" value="yourtenant.onmicrosoft.com" />
    <add key="ida:TenantId" value="d6f33888-0000-4c1f-9b50-1590f171fc70" />
    <add key="ida:ClientId" value="6bd98cc8-0000-446a-a05e-b5716ef2651b" />
    <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/" />
    
  2. Webbappen är också värd för ID-tokentipsgeneratorn och metadataslutpunkten.

    • Skapa ditt signeringscertifikat enligt beskrivningen i den här exempelbeskrivningen.

    • Uppdatera följande rader baserat på ditt certifikat i web.config:

      <add key="ida:SigningCertThumbprint" value="4F39D6014818082CBB763E5BA5F230E545212E89" />
      <add key="ida:SigningCertAlgorithm" value="RS256" />
      
  3. Ladda upp demoprogrammet till valfri värdleverantör. Vägledning för Azure App Service finns i den här exempelbeskrivningen, inklusive instruktioner för att ladda upp ditt certifikat.

  4. Uppdatera din Azure AD B2C-programregistrering genom att lägga till en svars-URL som motsvarar den URL där programmet finns.

  5. Öppna principfilerna och ersätt alla instanser av contoso med ditt klientnamn.

  6. Hitta den tekniska Twilio REST API-profilen Custom-SMS-Enroll. ServiceURL Uppdatera med ditt Twilio AccountSID och Från-numret till ditt köpta telefonnummer.

  7. Leta upp Twilio REST API-tekniska profiler, TwilioRestAPI-Verify-Step1 och TwilioRestAPI-Verify-Step2, och uppdatera ServiceURL med ditt Twilio AccountSID.

Integrera med Azure AD B2C

Lägg till principfilerna i Azure AD B2C:

  1. Logga in på Azure Portal som global administratör för din Azure AD B2C-klientorganisationen.
  2. Om du har åtkomst till flera klienter väljer du ikonen Inställningar på den översta menyn för att växla till din Azure AD B2C-klient från menyn Kataloger + prenumerationer.
  3. Välj Alla tjänster på menyn högst upp till vänster i Azure-portalen och sök efter och välj Azure AD B2C.
  4. Gå till Principnycklar för Azure AD B2C>Identity Experience Framework.>
  5. Lägg till en ny nyckel med namnet B2cRestTwilioClientId. Välj manuell och ange värdet för Twilio AccountSID.
  6. Lägg till en ny nyckel med namnet B2cRestTwilioClientSecret. Välj manuell och ange värdet för Twilio AUTH TOKEN.
  7. Ladda upp alla principfiler till din klientorganisation.
  8. Anpassa strängen i transformen GenerateOTPMessageEnrol claims för din SMS-text för registrering.

Testa lösningen

  • Bläddra till ditt program och testa åtgärderna inloggning, registrering och Skicka pengar.

Nästa steg

Mer information finns i följande artiklar: