CapTCHA-vraagtekenreeks controleren met captcha-weergavebeheer

Gebruik CAPTCHA-weergavebesturingselementen om een CAPTCHA-vraagtekenreeks te genereren en controleer deze door de gebruiker te vragen wat ze zien of horen. Als u een CAPTCHA-weergavebesturingselement wilt weergeven, verwijst u ernaar vanuit een zelf-asserted technisch profiel en moet u de metagegevenswaarde van setting.enableCaptchaChallenge het zelf-asserted technische profiel instellen op waar.

In de schermopname ziet u het captcha-weergavebesturingselement dat wordt weergegeven op een registratiepagina:

Screenshot of CAPTCHA as it appears in the sign-up page.

De registratiepagina wordt geladen met het CAPTCHA-weergavebesturingselement. De gebruiker voert vervolgens de tekens in die ze zien of horen. De knop Verificatiecode verzenden verzendt een verificatiecode naar het e-mailadres van de gebruiker en is geen CAPTCHA-weergavebeheerelement, maar zorgt ervoor dat de CAPTCHA-vraagtekenreeks wordt geverifieerd.

CAPTCHA-weergavebeheerelementen

Deze tabel bevat een overzicht van de elementen die een CAPTCHA-weergave besturingselement bevat.

Element Vereist Beschrijving
UserInterfaceControlType Ja De waarde moet CaptchaControl zijn.
InputClaims Ja Een of meer claims die zijn vereist als invoer voor het opgeven van het CAPTCHA-uitdagingstype en om de uitdaging uniek te identificeren.
DisplayClaims Ja De claims die moeten worden weergegeven aan de gebruiker, zoals de CAPTCHA-vraagcode, of verzameld van de gebruiker, zoals code-invoer door de gebruiker
OutputClaim Nee Elke claim die moet worden geretourneerd naar de zelf-asserted pagina nadat de gebruiker het verificatieproces van CAPTCHA-code heeft voltooid.
Acties Ja CAPTCHA-weergave bevat twee acties, GetChallenge en VerifyChallenge.
GetChallenge-actie genereert en geeft vervolgens een CAPTCHA-uitdagingscode weer in de gebruikersinterface.
Controleer of de actieChallenge de CAPTCHA-vraagcode verifieert die de gebruiker invoert.

De volgende XML-codefragment toont een voorbeeld van het weergavebeheer captchaProvider:

<DisplayControls>
    ...
    <DisplayControl Id="captchaControlChallengeCode" UserInterfaceControlType="CaptchaControl" DisplayName="Help us beat the bots">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="challengeType" />
        <InputClaim ClaimTypeReferenceId="challengeId" />
      </InputClaims>
    
      <DisplayClaims>
        <DisplayClaim ClaimTypeReferenceId="challengeType" ControlClaimType="ChallengeType" />
        <DisplayClaim ClaimTypeReferenceId="challengeId" ControlClaimType="ChallengeId" />
        <DisplayClaim ClaimTypeReferenceId="challengeString" ControlClaimType="ChallengeString" />
        <DisplayClaim ClaimTypeReferenceId="captchaEntered" ControlClaimType="CaptchaEntered" />
      </DisplayClaims>
    
      <Actions>
        <Action Id="GetChallenge">
          <ValidationClaimsExchange>
            <ValidationClaimsExchangeTechnicalProfile
              TechnicalProfileReferenceId="HIP-GetChallenge" />
          </ValidationClaimsExchange>
        </Action>
    
        <Action Id="VerifyChallenge">
          <ValidationClaimsExchange>
            <ValidationClaimsExchangeTechnicalProfile
              TechnicalProfileReferenceId="HIP-VerifyChallenge" />
          </ValidationClaimsExchange>
        </Action>
      </Actions>
    </DisplayControl>
    ...
</DisplayControls>

Volgende stappen