Oktatóanyag: BioCatch konfigurálása az Azure Active Directory B2C-vel
Megtudhatja, hogyan integrálhatja az Azure Active Directory B2C(Azure AD B2C) hitelesítést a BioCatch technológiával az ügyfélidentitás- és hozzáférés-kezelési (CIAM-) biztonsági helyzet bővítése érdekében. A BioCatch-termékek a felhasználók fizikai és kognitív digitális viselkedését elemzik olyan megállapításokhoz, amelyek segítenek megkülönböztetni a jogos ügyfeleket.
További információ a BioCatch-ról a biocatch.com
Előfeltételek
A kezdéshez a következők szükségesek:
- Azure-előfizetés
- Ha nem rendelkezik ilyen fiókkal, szerezzen be ingyenes Azure-fiókot
- Az Azure-előfizetéshez társított Azure AD B2C-bérlő
- Lépjen a biocatch.com Kapcsolatfelvétel lapra a fiók kéréséhez
- Említés Azure AD B2C-integrációról
Forgatókönyv leírása
A BioCatch-integráció a következő összetevőket tartalmazza:
-
Webalkalmazás vagy webszolgáltatás – a felhasználók ezt a webszolgáltatást keresik, amely létrehoz egy egyedi ügyfélmunkamenet-azonosítót, amely a BioCatch szolgáltatásba kerül
- A munkamenet-azonosító továbbítja a felhasználói viselkedés jellemzőit a BioCatchnek
- Metódus – elküldi a munkamenet-azonosítót Azure AD B2C-nek. A példában a JavaScript egy rejtett HTML-mezőbe írja be az értéket.
- Egy Azure AD B2C testre szabott felhasználói felület – elrejt egy HTML-mezőt a munkamenet-azonosító bemenetéhez a JavaScriptből
-
Azure AD B2C egyéni szabályzata:
- A munkamenet-azonosítót jogcímként veszi fel egy önérvényesített műszaki profilon keresztül
- Integrálható a BioCatch szolgáltatással EGY REST API-jogcímszolgáltatón keresztül, és átadja a munkamenet-azonosítót a BioCatchnak
- Több egyéni jogcím is visszatér a BioCatchből az egyéni szabályzatlogikához
- A felhasználói folyamat kiértékel egy visszaadott jogcímet, és végrehajt egy feltételes műveletet, például többtényezős hitelesítést
További információ:
- egyéni B2C-szabályzat Azure AD áttekintése
- Oktatóanyag: Felhasználói folyamatok és egyéni szabályzatok létrehozása Azure AD B2C-ben
Az alábbi ábra a felhasználói folyamatokat szemlélteti munkamenet-információkkal.
- A felhasználó megkeresi a webszolgáltatást, amely HTML-, CSS- vagy JavaScript-értékeket ad vissza, majd betölti a BioCatch JavaScript SDK-t. Az ügyféloldali JavaScript konfigurál egy ügyfélmunkamenet-azonosítót a BioCatch SDK-hoz. Másik megoldásként a webszolgáltatás előre konfigurálja az ügyfél munkamenet-azonosítóját, és elküldi az ügyfélnek. A példányosított BioCatch JavaScript SDK for BioCatch konfigurálható, amely a felhasználói viselkedést az ügyféleszközről küldi el a BioCatchnek az ügyfél munkamenet-azonosítójával.
- A felhasználó regisztrál vagy bejelentkezik, és a rendszer átirányítja Azure AD B2C-be.
- A felhasználói folyamat tartalmaz egy önaláírt jogcímszolgáltatót, amely az ügyfél munkamenet-azonosítóját adja meg. Ez a mező rejtett. A JavaScript használatával adja meg a munkamenet-azonosítót a mezőbe. Válassza a Tovább gombot a regisztráció vagy a bejelentkezés folytatásához. A munkamenet-azonosító kockázati pontszámért a BioCatchhoz kerül. A BioCatch visszaadja a munkamenet adatait, és javasolja az engedélyezést vagy a letiltásokat. A felhasználói folyamat feltételes ellenőrzéssel rendelkezik, amely a visszaadott jogcímek alapján jár el.
- A feltételes ellenőrzés eredménye alapján a rendszer meghív egy műveletet.
- A webszolgáltatás a munkamenet-azonosítóval lekérdezheti a BioCatch API-t a kockázat- és munkamenetadatok meghatározásához.
A BioCatch használatának első lépései
A fiók elindításához lépjen a biocatch.com Kapcsolatfelvétel lapra.
Az egyéni felhasználói felület konfigurálása
Javasoljuk, hogy rejtse el az Ügyfél munkamenet-azonosító mezőjét CSS, JavaScript vagy más módszerrel. Teszteléshez bontsa ki a mezőt. A JavaScript például a következő módon rejti el a bemeneti mezőt:
document.getElementById("clientSessionId").style.display = 'none';
Azure AD B2C Identity Experience Framework-szabályzatok konfigurálása
Első lépésként lásd: Oktatóanyag: Felhasználói folyamatok és egyéni szabályzatok létrehozása Azure AD B2C-ben.
Hozzon létre egy új fájlt, amely a bővítményfájlból öröklődik.
<BasePolicy> <TenantId>tenant.onmicrosoft.com</TenantId> <PolicyId>B2C_1A_TrustFrameworkExtensions</PolicyId> </BasePolicy>
Hozzon létre egy hivatkozást az egyéni felhasználói felületre a beviteli mező elrejtéséhez a BuildingBlocks erőforrás alatt.
<ContentDefinitions> <ContentDefinition Id="api.selfasserted"> <LoadUri>https://domain.com/path/to/selfAsserted.cshtml</LoadUri> <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.0</DataUri> </ContentDefinition> </ContentDefinitions>
A BuildingBlocks erőforrásban adja hozzá a következő jogcímeket.
<ClaimsSchema> <ClaimType Id="riskLevel"> <DisplayName>Session risk level</DisplayName> <DataType>string</DataType> </ClaimType> <ClaimType Id="score"> <DisplayName>Session risk score</DisplayName> <DataType>int</DataType> </ClaimType> <ClaimType Id="clientSessionId"> <DisplayName>The ID of the client session</DisplayName> <DataType>string</DataType> <UserInputType>TextBox</UserInputType> </ClaimType> </ClaimsSchema>
Konfiguráljon egy önérvényesített jogcímszolgáltatót az ügyfél munkamenet-azonosító mezőjéhez.
<ClaimsProvider> <DisplayName>Client Session ID Claims Provider</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="login-NonInteractive-clientSessionId"> <DisplayName>Client Session ID TP</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <Metadata> <Item Key="ContentDefinitionReferenceId">api.selfasserted</Item> </Metadata> <CryptographicKeys> <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" /> </CryptographicKeys> <!—Claim we created earlier --> <OutputClaims> <OutputClaim ClaimTypeReferenceId="clientSessionId" Required="false" DefaultValue="100"/> </OutputClaims> <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>
Konfiguráljon egy REST API-jogcímszolgáltatót a BioCatchhez.
<TechnicalProfile Id="BioCatch-API-GETSCORE"> <DisplayName>Technical profile for BioCatch API to return session information</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <Metadata> <Item Key="ServiceUrl">https://biocatch-url.com/api/v6/score?customerID=<customerid>&action=getScore&uuid=<uuid>&customerSessionID={clientSessionId}&solution=ATO&activtyType=<activity_type>&brand=<brand></Item> <Item Key="SendClaimsIn">Url</Item> <Item Key="IncludeClaimResolvingInClaimsHandling">true</Item> <!-- Set AuthenticationType to Basic or ClientCertificate in production environments --> <Item Key="AuthenticationType">None</Item> <!-- REMOVE the following line in production environments --> <Item Key="AllowInsecureAuthInProduction">true</Item> </Metadata> <InputClaims> <InputClaim ClaimTypeReferenceId="clientsessionId" /> </InputClaims> <OutputClaims> <OutputClaim ClaimTypeReferenceId="riskLevel" /> <OutputClaim ClaimTypeReferenceId="score" /> </OutputClaims> <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" /> </TechnicalProfile> </TechnicalProfiles>
Megjegyzés
A BioCatch megadja az URL-címet, az ügyfél-azonosítót és az egyedi felhasználói azonosítót (UUID). Az ügyfél SessionID-jogcíme lekérdezési sztringparaméterként továbbítja a BioCatchnek. Kiválaszthatja a tevékenység típusát, például MAKE_PAYMENT.
Konfigurálja a felhasználói folyamatot az alábbi példával:
- Kérje le a clientSessionID azonosítót jogcímként.
- Hívja meg a BioCatch API-t a munkamenet adatainak lekéréséhez.
- Ha a visszaadott jogcím kockázata alacsony, hagyja ki az MFA lépését, különben kényszerítse ki a felhasználói MFA-t.
<OrchestrationStep Order="8" Type="ClaimsExchange"> <ClaimsExchanges> <ClaimsExchange Id="clientSessionIdInput" TechnicalProfileReferenceId="login-NonInteractive-clientSessionId" /> </ClaimsExchanges> </OrchestrationStep> <OrchestrationStep Order="9" Type="ClaimsExchange"> <ClaimsExchanges> <ClaimsExchange Id="BcGetScore" TechnicalProfileReferenceId=" BioCatch-API-GETSCORE" /> </ClaimsExchanges> </OrchestrationStep> <OrchestrationStep Order="10" Type="ClaimsExchange"> <Preconditions> <Precondition Type="ClaimEquals" ExecuteActionsIf="true"> <Value>riskLevel</Value> <Value>LOW</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> </Preconditions> <ClaimsExchanges> <ClaimsExchange Id="PhoneFactor-Verify" TechnicalProfileReferenceId="PhoneFactor-InputOrVerify" /> </ClaimsExchanges>
Függő entitás konfigurálása (nem kötelező). A BioCatch által visszaadott adatokat jogcímként továbbíthatja az alkalmazásnak a következő jogkivonatban: risklevel és score.
<RelyingParty> <DefaultUserJourney ReferenceId="SignUpOrSignInMfa" /> <UserJourneyBehaviors> <SingleSignOn Scope="Tenant" KeepAliveInDays="30" /> <SessionExpiryType>Absolute</SessionExpiryType> <SessionExpiryInSeconds>1200</SessionExpiryInSeconds> <ScriptExecution>Allow</ScriptExecution> </UserJourneyBehaviors> <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="riskLevel" /> <OutputClaim ClaimTypeReferenceId="score" /> <OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" /> </OutputClaims> <SubjectNamingInfo ClaimType="sub" /> </TechnicalProfile> </RelyingParty>
Integrálás az Azure AD B2C szolgáltatással
Adja hozzá a szabályzatfájlokat Azure AD B2C-hez. Az alábbi utasításokért használja a könyvtárat a Azure AD B2C-bérlővel.
- Jelentkezzen be a Azure Portal a Azure AD B2C-bérlő globális rendszergazdájaként.
- A portál eszköztárán válassza a Könyvtárak + előfizetések lehetőséget.
- A Portál beállításai, Címtárak és előfizetések lapon, a Címtárnév listában keresse meg a Azure AD B2C-címtárat.
- Válassza a Váltás lehetőséget.
- A Azure Portal bal felső sarkában válassza a Minden szolgáltatás lehetőséget.
- Keresse meg és válassza ki Azure AD B2C-t.
- Lépjen Azure AD B2C>Identity Experience Frameworkre.
- Töltse fel a szabályzatfájlokat a bérlőbe.
A megoldás tesztelése
A következő utasításokért lásd : Oktatóanyag: Webalkalmazás regisztrálása az Azure Active Directory B2C-ben
Regisztráljon egy olyan próbaalkalmazást, amely átirányítja a JWT.MS.
Az Identitáskezelési keretrendszer területen válassza ki a létrehozott szabályzatot.
A szabályzatablakban válassza ki a próbabábu JWT.MS alkalmazást
Válassza a Futtatás most lehetőséget.
Végezzen el egy regisztrációs folyamatot, és hozzon létre egy fiókot.
A JWT.MS visszaadott jogkivonatnak 2x jogcíme van a riskLevelhez és a pontszámhoz.
Használja az alábbi példát.
{ "typ": "JWT", "alg": "RS256", "kid": "_keyid" }.{ "exp": 1615872580, "nbf": 1615868980, "ver": "1.0", "iss": "https://tenant.b2clogin.com/12345678-1234-1234-1234-123456789012/v2.0/", "sub": "12345678-1234-1234-1234-123456789012", "aud": "12345678-1234-1234-1234-123456789012", "acr": "b2c_1a_signup_signin_biocatch_policy", "nonce": "defaultNonce", "iat": 1615868980, "auth_time": 1615868980, "name": "John Smith", "email": "john.smith@contoso.com", "given_name": "John", "family_name": "Smith", "riskLevel": "LOW", "score": 275, "tid": "12345678-1234-1234-1234-123456789012" }.[Signature]