다음을 통해 공유


CAPTCHA 표시 컨트롤을 사용하여 CAPTCHA 챌린지 문자열 확인

CAPTCHA 표시 컨트롤을 사용하여 CAPTCHA 챌린지 문자열을 생성한 다음 사용자에게 보거나 듣는 내용을 입력하도록 요청하여 확인합니다. CAPTCHA 표시 컨트롤을 표시하려면 자체 어설션된 기술 프로필에서 참조하고 자체 어설션된 기술 프로필의 setting.enableCaptchaChallenge 메타데이터 값을 true설정해야 합니다.

스크린샷은 등록 페이지에 표시된 CAPTCHA 표시 컨트롤을 보여줍니다.

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

등록 페이지는 CAPTCHA 표시 컨트롤과 함께 로드됩니다. 그런 다음 사용자가 보거나 듣는 문자를 입력합니다. 확인 코드 보내기 단추는 사용자의 전자 메일로 확인 코드를 보내고 CAPTCHA 표시 컨트롤 요소는 아니지만 CAPTCHA 챌린지 문자열을 확인합니다.

CAPTCHA 표시 컨트롤 요소

이 표에는 CAPTCHA 표시 컨트롤에 포함된 요소가 요약되어 있습니다.

요소 필수 설명
UserInterfaceControlType 값은 CaptchaControl이어야 합니다.
InputClaims CAPTCHA 챌린지 유형을 지정하고 챌린지를 고유하게 식별하기 위해 입력으로 하나 이상의 클레임이 필요합니다.
DisplayClaims CAPTCHA 챌린지 코드와 같이 사용자에게 표시되거나 사용자로부터 수집되는 클레임(예: 사용자의 코드 입력)
OutputClaim 아니요 사용자가 CAPTCHA 코드 확인 프로세스를 완료한 후 자체 어설션된 페이지로 반환될 클레임입니다.
actions CAPTCHA 표시 컨트롤에는 GetChallenge 및 VerifyChallenge두 가지 작업이 포함됩니다.
GetChallenge 작업은 사용자 인터페이스에 CAPTCHA 챌린지 코드를 생성한 다음 표시합니다.
VerifyChallenge 작업은 사용자가 입력하는 CAPTCHA 챌린지 코드를 확인합니다.

다음 XML 코드 조각 코드는 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>

다음 단계