次の方法で共有


CAPTCHA 表示コントロールを使用して CAPTCHA チャレンジ文字列を確認する

重要

2025 年 5 月 1 日より、Azure AD B2C は新規のお客様向けに購入できなくなります。 詳細については、FAQ を参照してください

CAPTCHA 表示コントロールを使用して CAPTCHA チャレンジ文字列を生成し、ユーザーに表示または聞こえるものを入力するように依頼して確認します。 CAPTCHA 表示コントロールを表示するには、 セルフアサート技術プロファイルからそれを参照し、セルフアサート技術プロファイルの setting.enableCaptchaChallenge メタデータ値を true に設定する必要があります。

スクリーンショットは、サインアップ ページに表示される CAPTCHA 表示コントロールを示しています。

サインアップ ページに表示される CAPTCHA のスクリーンショット。

サインアップ ページが CAPTCHA ディスプレイ コントロールと共に読み込まれます。 その後、ユーザーは、表示または読み上げられる文字を入力します。 [ 確認コードの送信 ] ボタンは、ユーザーの電子メールに確認コードを送信します。CAPTCHA 表示制御要素ではありませんが、CAPTCHA チャレンジ文字列が検証されます。

CAPTCHA 表示制御要素

次の表は、CAPTCHA 表示コントロールに含まれる要素をまとめたものです。

要素 必須 説明
ユーザーインタフェースコントロールタイプ イエス 値は CaptchaControl である必要があります。
インプットクレーム イエス CAPTCHA チャレンジの種類を指定し、チャレンジを一意に識別するために入力として必要な 1 つ以上の要求。
DisplayClaimsの イエス CAPTCHA チャレンジ コードなどのユーザーに表示されるクレーム、またはユーザーから収集される要求 (ユーザーによるコード入力など)
出力要求 いいえ ユーザーが CAPTCHA コード検証プロセスを完了した後にセルフアサート ページに返される要求。
アクション イエス CAPTCHA 表示コントロールには、 GetChallenge と VerifyChallenge の 2 つのアクションが含 まれています
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>

次のステップ