Azure Active Directory B2C で顧客のサインアップ時のメール検証を無効にする

"開始する前に"、[ポリシーの種類の選択] セレクターを使用して、設定するポリシーの種類を選択します。 Azure Active Directory B2C には、ユーザーがアプリケーションを操作する方法を定義する 2 つの方法 (定義済みのユーザー フローを使用する、または完全に構成可能なカスタム ポリシーを使用する) があります。 この記事で必要な手順は、方法ごとに異なります。

既定で、Azure Active Directory B2C (Azure AD B2C) では、顧客のローカル アカウント (メール アドレスまたはユーザー名を使用してサインアップしたユーザーのアカウント) のメール アドレスが検証されます。 Azure AD B2C では、メール アドレスが有効であることを確認するために、サインアップ時に顧客が検証することを必須にしています。 また、悪意のあるアクターが自動化されたプロセスを使用してアプリケーションに不正なアカウントを生成することを防ぐことができます。

アプリケーション開発者によっては、サインアップ プロセス時にはメールの検証をスキップし、代わりに後で顧客にメール アドレスを検証させることを好みます。 それをサポートするために、電子メールの検証を無効にするように Azure AD B2C を構成することができます。 そうすることで、サインアップ プロセスがよりスムーズになり、開発者はメール アドレスを検証した顧客と検証していない顧客を柔軟に区別することができます。

警告

サインアップ プロセスでの電子メールの検証を無効にすると、スパムにつながる場合があります。 既定の Azure AD B2C で提供されるメールの検証を無効にする場合は、代替の検証システムを実装することをお勧めします。

前提条件

メールの確認を無効にする

次の手順に従って、メールの検証を無効にします。

  1. Azure portal にサインインします。
  2. 複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコンを選択し、[ディレクトリとサブスクリプション] メニューからお使いの Azure AD B2C テナントに切り替えます。
  3. 左側のメニューで、 [Azure AD B2C] を選択します。 または、 [すべてのサービス] を選択し、 [Azure AD B2C] を検索して選択します。
  4. [ユーザー フロー] を選択します。
  5. メールの検証を無効にするユーザー フローを選択します。
  6. [Page layouts](ページ レイアウト) を選択します。
  7. [ローカル アカウント サインアップ ページ] を選択します。
  8. [ユーザー属性][メール アドレス] を選択します。
  9. [確認が必要] ドロップダウンで [いいえ] を選択します。
  10. [保存] を選択します。 このユーザー フローでは、メールの検証が無効になりました。

LocalAccountSignUpWithLogonEmail 技術プロファイルはセルフアサートであり、サインアップ フローの間に呼び出されます。 メールの検証を無効にするには、EnforceEmailVerification メタデータを false に設定します。 拡張ファイルで LocalAccountSignUpWithLogonEmail 技術プロファイルをオーバーライドします。

  1. お使いのポリシーの拡張ファイルを開きます。 たとえば、「 SocialAndLocalAccounts/TrustFrameworkExtensions.xml 」のように入力します。
  2. ClaimsProviders 要素を見つけます。 要素が存在しない場合は追加します。
  3. 次のクレーム プロバイダーを ClaimsProviders 要素に追加します。
<ClaimsProvider>
  <DisplayName>Local Account</DisplayName>
  <TechnicalProfiles>
    <TechnicalProfile Id="LocalAccountSignUpWithLogonEmail">
      <Metadata>
        <Item Key="EnforceEmailVerification">false</Item>
      </Metadata>
    </TechnicalProfile>
  </TechnicalProfiles>
</ClaimsProvider>

ポリシーのテスト

  1. Azure portal にサインインします。
  2. 複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコンを選択し、[ディレクトリとサブスクリプション] メニューからお使いの Azure AD B2C テナントに切り替えます。
  3. 左側のメニューで、 [Azure AD B2C] を選択します。 または、 [すべてのサービス] を選択し、 [Azure AD B2C] を検索して選択します。
  4. [ユーザー フロー] を選択します。
  5. メールの検証を無効にするユーザー フローを選択します。 たとえば、B2C_1_signinsignup です。
  6. ポリシーをテストするには、 [ユーザー フローを実行します] を選択します。
  7. [アプリケーション] には、以前に登録した testapp1 という名前の Web アプリケーションを選択します。 [応答 URL]https://jwt.ms と表示されます。
  8. [ユーザー フローを実行します] をクリックします
  9. 検証なしに、メール アドレスを使用してサインアップできるはずです。

証明書利用者ファイルを更新し、テストする

  1. Azure portal にサインインします。
  2. 複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコンを選択し、[ディレクトリとサブスクリプション] メニューからお使いの Microsoft Entra ID テナントに切り替えます。
  3. Azure portal の左上隅にある [すべてのサービス] を選択し、 [アプリの登録] を検索して選択します。
  4. [Identity Experience Framework] を選択します。
  5. [カスタム ポリシーのアップロード] を選択し、変更した 2 つのポリシー ファイルをアップロードします。
  6. アップロードしたサインアップまたはサインイン ポリシーを選択し、 [今すぐ実行] ボタンをクリックします。
  7. 検証なしに、メール アドレスを使用してサインアップできるはずです。

次のステップ