Kurz konfigurace typingDNA pomocí Azure Active Directory B2C
V tomto názorném postupu se dozvíte, jak integrovat ukázkovou online platební aplikaci v Azure Active Directory B2C s aplikací TypingDNA APP. Pomocí aplikace TypingDNA můžou zákazníci Azure AD B2C vyhovět požadavkům transakcí podle směrnice o platebních službách 2 (PSD2) prostřednictvím dynamiky stisknutí kláves a silného ověřování zákazníků. Další informace o psaníDNA najdete tady.
Azure AD B2C používá technologie TypingDNA k zachycení charakteristik psaní uživatelů a jejich zaznamenávání a analýze pro znalosti jednotlivých ověřování. Tím se přidá vrstva ochrany související s rizikovou odolností ověřování a vyhodnocuje úrovně rizika. Azure AD B2C může vyvolat další mechanismy, které uživateli poskytnou větší jistotu, že je tím, že vyvolá vícefaktorové ověřování Microsoft Entra, vynutí ověření e-mailu nebo jakoukoli jinou vlastní logiku pro váš scénář.
Poznámka:
Tato ukázková zásada je založená na úvodním balíčku SocialAndLocalAccountsWithMfa .
Popis scénáře
Registrace
Stránky Azure AD B2C používají k zaznamenání vzoru psaní uživatele javascriptovou knihovnu TypingDNA. Například uživatelské jméno a heslo se zaznamenávají při registraci pro počáteční registraci a při každém přihlášení k ověření.
Když uživatel odešle stránku, knihovna TypingDNA vypočítá typovací charakteristiku uživatele. Potom vložte informace do skrytého textového pole, které se vykreslí v Azure AD B2C. Toto pole je skryté pomocí šablon stylů CSS.
Ukázka obsahuje soubory HTML s úpravami JavaScriptu a CSS a odkazuje se na
api.selfasserted.tdnasignin
definice obsahu.api.selfasserted.tdnasignup
Informace o hostování obsahu stránky pro hostování souborů HTMLAzure AD B2C teď má v bagu deklarací identity vzor psaní, když uživatel odešle své přihlašovací údaje. Aby bylo možné tato data předat do koncového bodu rozhraní REST API TypingDNA, musí volat rozhraní API (vaše). Toto rozhraní API je součástí ukázky (typingDNA-API-Interface).
Rozhraní API střední vrstvy pak předá data vzoru psaní do rozhraní REST API typingDNA. Při registraci se volá kontrolní koncový bod uživatele, abyste potvrdili, že uživatel neexistoval, a pak se zavolá koncový bod vzoru uložení, aby se uložil první vzor psaní uživatele.
Poznámka:
Všechna volání koncového bodu rozhraní REST API TypingDNA odesílají ID uživatele. Musí to být hodnota hash. Azure AD B2C používá HashObjectIdWithEmail
transformaci deklarací identity k hash e-mailu s náhodným solí a tajným kódem.
Volání rozhraní REST API jsou modelována v validationTechnicalProfiles
rámci LocalAccountSignUpWithLogonEmail-TDNA
:
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="AAD-UserWriteUsingLogonEmail-TDNA" />
<ValidationTechnicalProfile ReferenceId="REST-TDNA-CheckUser" ContinueOnError="true"/>
<ValidationTechnicalProfile ReferenceId="REST-TDNA-SaveUser"/>
</ValidationTechnicalProfiles>
Přihlášení
Při následném přihlášení se vzor psaní uživatele vypočítá stejným způsobem jako při registraci pomocí vlastního kódu HTML. Jakmile se typový profil nachází v kontejneru deklarací identity Azure AD B2C, Azure AD B2C zavolá vaše rozhraní API pro volání koncového bodu rozhraní REST API TypingDNA. Zavolá se kontrolní koncový bod uživatele a ověří, že uživatel existuje. Dále ověřte, že se volá koncový bod vzoru pro vrácení net_score
. To net_score
značí, jak blízko byl vzor psaní k originálu při registraci.
Tento model psaní je modelován v validationTechnicalProfiles
rámci SelfAsserted-LocalAccountSignin-Email-TDNA
:
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="login-NonInteractive"/>
<ValidationTechnicalProfile ReferenceId="REST-TDNA-CheckUser" ContinueOnError="false"/>
<ValidationTechnicalProfile ReferenceId="REST-TDNA-VerifyUser"/>
<ValidationTechnicalProfile ReferenceId="REST-TDNA-SaveUser">
<Preconditions>
<Precondition Type="ClaimEquals" ExecuteActionsIf="true">
<Value>saveTypingPattern</Value>
<Value>False</Value>
<Action>SkipThisValidationTechnicalProfile</Action>
</Precondition>
</Preconditions>
</ValidationTechnicalProfile>
</ValidationTechnicalProfiles>
Pokud uživatel získá typový vzor, který má vysokou úroveňnet_score
, můžete ho uložit pomocí koncového bodu typu TypingDNA uložit.
Vaše rozhraní API musí vrátit deklaraci identity saveTypingPattern
, pokud chcete, aby koncový bod vzoru psaní typu TypDNA byl volán službou Azure AD B2C (přes vaše rozhraní API).
Příklad v úložišti obsahuje rozhraní API (TypingDNA-API-Interface), které je nakonfigurováno s následujícími vlastnostmi.
Režim trénování – Pokud má uživatel uložených méně než dva vzory, vždy se zobrazí výzva k vícefaktorovém ověřování.
Pokud má uživatel uložené vzory 2 až 5 a
net_score
je nižší než 50, zobrazí se výzva k vícefaktorové ověřování.Pokud má uživatel uložených 5 nebo více vzorů a
net_score
je nižší než 65, zobrazí se výzva k vícefaktorovém ověřování.
Tyto prahové hodnoty by se měly upravit pro váš případ použití.
Po vyhodnocení
net_score
rozhraní API by mělo vrátit logickou deklaraci identity do B2C –promptMFA
.Deklarace
promptMFA
identity se používá v rámci předběžné podmínky k podmíněnému spuštění vícefaktorového ověřování Microsoft Entra.
<OrchestrationStep Order="3" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>isActiveMFASession</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
<Precondition Type="ClaimEquals" ExecuteActionsIf="true">
<Value>promptMFA</Value>
<Value>False</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="PhoneFactor-Verify" TechnicalProfileReferenceId="PhoneFactor-InputOrVerify" />
</ClaimsExchanges>
</OrchestrationStep>
Onboarding s typeingDNA
- Zaregistrujte se k psaníDNA sem
- Přihlaste se k řídicímu panelu TypingDNA a získejte klíč rozhraní API a tajný klíč rozhraní API. To bude potřeba později v nastavení rozhraní API.
Integrace psaníDNA s Azure AD B2C
Hostování rozhraní TypingDNA-API-Interface u svého poskytovatele hostingu podle výběru
Nahraďte všechny instance
apiKey
aapiSecret
v řešení TypingDNA-API-Interface přihlašovacími údaji z řídicího panelu TypingDNA.Hostujte soubory HTML u svého poskytovatele podle toho, co tady najdete v požadavcích CORS.
Nahraďte elementy LoadURI pro
api.selfasserted.tdnasignup
definice obsahu vapi.selfasserted.tdnasignin
TrustFrameworkExtensions.xml
souboru na identifikátor URI hostovaných souborů HTML v uvedeném pořadí.Vytvořte klíč zásad B2C v rámci architektury prostředí identit v okně Microsoft Entra na webu Azure Portal.
Generate
Použijte možnost a pojmenujte tento klíčtdnaHashedId
.Nahrazení ID tenanta v souborech zásad
Nahraďte hodnoty ServiceURLs ve všech technických profilech rozhraní REST API typingDNA (REST-TDNA-VerifyUser, REST-TDNA-SaveUser, REST-TDNA-CheckUser) koncovým bodem pro rozhraní API pro typingDNA-API-Interface.
Nahrajte soubory zásad do tenanta.
Testování toku uživatele
Otevřete tenanta B2C a zvolte architekturu prostředí identit.
Vyberte dříve vytvořený tok uživatele.
Výběr možnosti Spustit tok uživatele
a. Aplikace – vyberte zaregistrovanou aplikaci (ukázka je JWT).
b. Adresa URL odpovědi – vyberte adresu URL pro přesměrování.
c. Vyberte Spustit tok uživatele.
Projděte si tok registrace a vytvořte účet.
Odhlásit se
Procházení toku přihlášení
Výsledný výsledek JWT zobrazí výsledky TypingDNA.
Živá verze
• Vícefaktorové ověřování bylo v této testovací verzi zakázané, ale můžete vidět výsledek, jestli by deklarace identity po ověření zobrazila výzvu k vícefaktorové promptMFA
ověřování.
• Zaregistrujte se sem a přihlaste se sem.
Další kroky
Další informace najdete v následujících článcích: