Azure Active Directory B2C özel ilkesinde CAPTCHA teknik profili tanımlama
Not
Azure Active Directory B2C'de özel ilkeler öncelikli olarak karmaşık senaryoları ele almak için tasarlanmıştır. Çoğu senaryoda, yerleşik kullanıcı akışlarını kullanmanızı öneririz. Bunu yapmadıysanız, Active Directory B2C'de özel ilkeleri kullanmaya başlama bölümünde özel ilke başlangıç paketi hakkında bilgi edinin.
Bilgisayara ve İnsana Ayrı (CAPTCHA) Teknik Profillerini Bildirmek için Tamamen Otomatik Genel Turing Testleri, Azure Active Directory B2C'nin (Azure AD B2C) otomatik saldırıları önlemesini sağlar. Azure AD B2C'nin CAPTCHA teknik profili hem ses hem de görsel CAPTCHA zorluk türlerini destekler.
Protokol
Protocol öğesinin Name özniteliği olarak ayarlanmalıdırProprietary
. İşleyici özniteliği, CAPTCHA için Azure AD B2C tarafından kullanılan protokol işleyicisi derlemesinin tam adını içermelidir:Web.TPEngine.Providers.CaptchaProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Not
Bu özellik genel önizleme aşamasındadır
Aşağıdaki örnekte, e-posta kayıt için kendi kendine onaylanan bir teknik profil gösterilmektedir:
<TechnicalProfile Id="HIP-GetChallenge">
<DisplayName>Email signup</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.CaptchaProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
CAPTCHA teknik profil işlemleri
CAPTCHA teknik profil işlemlerinin iki işlemi vardır:
Alma sınaması işlemi CAPTCHA kod dizesini oluşturur ve ardından bir CAPTCHA görüntüleme denetimi kullanarak bunu kullanıcı arabiriminde görüntüler. Ekranda bir giriş metin kutusu bulunur. Bu işlem, kullanıcıyı gördüğü veya duyduğu karakterleri giriş metin kutusuna girmeye yönlendirir. Kullanıcı gerektiğinde görsel ve sesli sınama türleri arasında geçiş yapabilir.
Kod işleminin kullanıcı tarafından girişi yapılan karakterleri doğruladığını doğrulayın.
Sınama alma
İlk işlem CAPTCHA kod dizesini oluşturur ve kullanıcı arabiriminde görüntüler.
Giriş talepleri
InputClaims öğesi, Azure AD B2C'nin CAPTCHA hizmetine gönderilecek taleplerin listesini içerir.
ClaimReferenceId | Zorunlu | Açıklama |
---|---|---|
challengeType | Hayır | CAPTCHA sınama türü, Ses veya Görsel (varsayılan). |
azureregion | Yes | CAPTCHA sınama isteğine hizmet veren hizmet bölgesi. |
Talepleri görüntüleme
DisplayClaims öğesi, kullanıcının görmesi için ekranda sunulacak taleplerin listesini içerir. Örneğin, kullanıcıya okuması için CAPTCHA sınama kodu sunulur.
ClaimReferenceId | Zorunlu | Açıklama |
---|---|---|
challengeString | Yes | CAPTCHA sınama kodu. |
Çıkış talepleri
OutputClaims öğesi, CAPTCHA teknik profili tarafından döndürülen taleplerin listesini içerir.
ClaimReferenceId | Zorunlu | Açıklama |
---|---|---|
challengeId | Yes | CAPTCHA sınama kodu için benzersiz tanımlayıcı. |
challengeString | Yes | CAPTCHA sınama kodu. |
azureregion | Yes | CAPTCHA sınama isteğine hizmet veren hizmet bölgesi. |
Meta veri
Öznitelik | Zorunlu | Açıklama |
---|---|---|
Operation | Yes | Değer GetChallenge olmalıdır. |
Marka | Yes | Değer HIP olmalıdır. |
Örnek: CAPTCHA kodu oluşturma
Aşağıdaki örnekte, kod oluşturmak için kullandığınız bir CAPTCHA teknik profili gösterilmektedir:
<TechnicalProfile Id="HIP-GetChallenge">
<DisplayName>GetChallenge</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.CaptchaProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="Operation">GetChallenge</Item>
<Item Key="Brand">HIP</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="challengeType" />
</InputClaims>
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="challengeString" />
</DisplayClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="challengeId" />
<OutputClaim ClaimTypeReferenceId="challengeString" PartnerClaimType="ChallengeString" />
<OutputClaim ClaimTypeReferenceId="azureregion" />
</OutputClaims>
</TechnicalProfile>
Sınamayı doğrulama
İkinci işlem CAPTCHA sınamasını doğrular.
Giriş talepleri
InputClaims öğesi, Azure AD B2C'nin CAPTCHA hizmetine gönderilecek taleplerin listesini içerir.
ClaimReferenceId | Zorunlu | Açıklama |
---|---|---|
challengeType | Hayır | CAPTCHA sınama türü, Ses veya Görsel (varsayılan). |
challengeId | Yes | Oturum doğrulaması için kullanılan CAPTCHA için benzersiz bir tanımlayıcı. GetChallenge çağrısından doldurulur. |
captchaEntered | Yes | Kullanıcının kullanıcı arabirimindeki sınama metin kutusuna girdiği sınama kodu. |
azureregion | Yes | CAPTCHA sınama isteğine hizmet veren hizmet bölgesi. GetChallenge çağrısından doldurulur. |
Talepleri görüntüleme
DisplayClaims öğesi, kullanıcıdan bir giriş toplamak için ekranda sunulacak taleplerin listesini içerir.
ClaimReferenceId | Zorunlu | Açıklama |
---|---|---|
captchaEntered | Yes | Kullanıcı tarafından girilen CAPTCHA sınama kodu. |
Çıkış talepleri
OutputClaims öğesi, captcha teknik profili tarafından döndürülen taleplerin listesini içerir.
ClaimReferenceId | Zorunlu | Açıklama |
---|---|---|
challengeId | Yes | Oturum doğrulaması için kullanılan CAPTCHA için benzersiz bir tanımlayıcı. |
isCaptchaSolved | Yes | CAPTCHA sınamasının başarıyla çözüldüğünü gösteren bir bayrak. |
reason | Yes | Sınamayı çözme girişiminin başarılı olup olmadığını kullanıcıya iletmek için kullanılır. |
Meta veri
Öznitelik | Zorunlu | Açıklama |
---|---|---|
Operation | Yes | Değer VerifyChallenge olmalıdır. |
Marka | Yes | Değer HIP olmalıdır. |
Örnek: CAPTCHA kodunu doğrulama
Aşağıdaki örnekte, CAPTCHA kodunu doğrulamak için kullandığınız bir CAPTCHA teknik profili gösterilmektedir:
<TechnicalProfile Id="HIP-VerifyChallenge">
<DisplayName>Verify Code</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.CaptchaProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="Brand">HIP</Item>
<Item Key="Operation">VerifyChallenge</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="challengeType" DefaultValue="Visual" />
<InputClaim ClaimTypeReferenceId="challengeId" />
<InputClaim ClaimTypeReferenceId="captchaEntered" PartnerClaimType="inputSolution" Required="true" />
<InputClaim ClaimTypeReferenceId="azureregion" />
</InputClaims>
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="captchaEntered" />
</DisplayClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="challengeId" />
<OutputClaim ClaimTypeReferenceId="isCaptchaSolved" PartnerClaimType="solved" />
<OutputClaim ClaimTypeReferenceId="reason" PartnerClaimType="reason" />
</OutputClaims>
</TechnicalProfile>
Sonraki adımlar
- Azure Active Directory B2C'de CAPTCHA'yı etkinleştirin.