顧客向けのサインアップとサインインのユーザー フローを作成する

アプリケーションにユーザー フローを追加することで、顧客向けの簡単なサインアップとサインインのエクスペリエンスを作成できます。 ユーザー フローでは、顧客が従う一連のサインアップ手順と、使用できるサインイン方法 (メールとパスワード、ワンタイム パスコード、GoogleFacebook のソーシャル アカウントなど) を定義します。 また、一連の組み込みユーザー属性から選択するか、独自のカスタム属性を追加することで、サインアップ時に顧客から情報を収集することもできます。

顧客に提供する複数のアプリケーションがある場合は、複数のユーザー フローを作成できます。 または、多くのアプリケーションで同じユーザー フローを使用できます。 ただし、アプリケーションに指定できるユーザー フローは 1 つだけです。

ヒント

今すぐ試す

この機能を試すには、Woodgrove Groceries のデモにアクセスし、"オンライン リテール" ユース ケースを開始してください。

前提条件

  • Microsoft Entra 外部テナント: 開始する前に、Microsoft Entra 外部テナントを作成します。 無料試用版を設定することも、Microsoft Entra ID で新しい外部テナントを作成することもできます。
  • メールのワンタイム パスコードを有効にする (省略可能): ユーザーがサインインするたびにメール アドレスとワンタイム パスコードを使用させる場合は、テナント レベルでメールのワンタイム パスコードが有効になっていることを確認します (Microsoft Entra 管理センターで、[External Identities]>[すべての ID プロバイダー]>[メールのワンタイム パスコード] に移動します)。
  • カスタム属性を定義する (省略可能): ユーザー属性は、セルフサービス サインアップ時にユーザーから収集される値です。 Microsoft Entra ID には組み込みの属性セットが用意されていますが、サインアップ時に収集するカスタム属性を定義することができます。 カスタム属性を事前に定義して、ユーザー フローを設定するときに使用できるようにします。 または、後で作成して追加することもできます。
  • ID プロバイダーを定義する (省略可能): Google または Facebook とのフェデレーションを事前に設定し、ユーザー フローを作成するときにサインイン オプションとして選択できます。

ユーザー フローを作成してカスタマイズする

顧客がアプリケーションにサインインまたはサインアップするために使用できるユーザー フローを作成するには、次の手順に従います。 これらの手順では、新しいユーザー フローを追加し、収集する属性を選択し、サインアップ ページの属性の順序を変更する方法について説明します。

新しいユーザー フローを追加する

  1. Microsoft Entra 管理センターにサインインします。

  2. 複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコン を使用し、[ディレクトリとサブスクリプション] メニューから外部テナントに切り替えます。

  3. [ID]>[External Identities]>[ユーザー フロー] に移動します。

  4. [新しいユーザー フロー] を選択します。

    [新しいユーザー フロー] オプションのスクリーンショット。

  5. [作成] ページで、ユーザー フローの [名前] を入力します (例: "SignUpSignIn")。

  6. [ID プロバイダー] で、[メール アカウント] チェック ボックスを選択し、次のいずれかのオプションを選択します。

    • メールとパスワード: 新しいユーザーが、サインイン名としてメール アドレス、最初の要素の認証方法としてパスワードを使用してサインアップおよびサインインできるようにします。 サインイン ページでセルフサービス パスワード リセットのリンクを表示、非表示、またはカスタマイズするためのオプションも構成できます (詳細)。

    • メールのワンタイム パスコード: 新しいユーザーが、サインイン名としてメール アドレス、最初の要素の認証方法としてメールのワンタイム パスコードを使用してサインアップおよびサインインできるようにします。

    Note

    お客様は別の Microsoft Entra 組織からメールを使用してローカル アカウントにサインアップできますが、Microsoft Entra フェデレーションがお客様の認証に使用されないため、[Microsoft Entra ID Sign up] (Microsoft Entra ID サインアップ) オプションは使用できません。 [Google] および [Facebook] は、それぞれとのフェデレーションを設定した後にのみ使用できるようになります。 認証方法と ID プロバイダーの詳細を確認してください。

    [ユーザー フローを作成する] ページの ID プロバイダーのオプションのスクリーンショット。

  7. [ユーザー属性] で、サインアップ時にユーザーから収集する属性を選択します。

    [ユーザー フローを作成する] ページのユーザー属性オプションのスクリーンショット。

  8. [詳細を表示] を選択して、[役職][表示名][郵便番号] などの属性の完全な一覧から選択します。

    この一覧には、自分で定義したカスタム属性も含まれます。 サインアップ時にユーザーから収集する属性については、それぞれの横にあるチェック ボックスをオンにします。

    [さらに表示] を選択した後のユーザー属性ペインのスクリーンショット

  9. [OK] を選択します。

  10. [作成] を選択してユーザー フローを作成します。

サインアップおよびサインインのユーザー フローでサインアップを無効にする

顧客ユーザーにサインインのみを許可し、サインアップは行わないようにしたい場合は、Microsoft Graph API を使用してユーザー フローでサインアップ エクスペリエンスを無効にすることができます。 サインアップを無効にするユーザー フローの ID を知っている必要があります。 Microsoft Entra 管理センターからユーザー フロー ID を読み取ることはできませんが、関連付けられているアプリがわかっている場合は、Microsoft Graph API を介して取得できます。

  1. ユーザー フローに関連づけられたアプリケーション ID を読み取ります。

    1. [ID] > [外部 ID] > [ユーザー フロー] の順に移動します。
    2. 一覧から、ユーザー フローを選択します。
    3. 左側のメニューで、 [使用] の下の [アプリケーション] を選択します。
    4. 一覧の [アプリケーション (クライアント) ID] 列で、アプリケーション (クライアント) ID をコピーします。
  2. サインアップを無効にするユーザー フローの ID を特定します。 これを行うには、特定のアプリケーションに関連付けられているユーザー フローを一覧表示します。 これは Microsoft Graph API であり、前の手順で取得したアプリケーション ID を知っている必要があります。

  3. ユーザー フローを更新して、サインアップを無効にします。

    例:

    PATCH https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-id} 
    

    要求本文

        {    
            "@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",    
            "onInteractiveAuthFlowStart": {    
                "@odata.type": "#microsoft.graph.onInteractiveAuthFlowStartExternalUsersSelfServiceSignUp",    
                "isSignUpAllowed": "false"    
          }    
        }
    

    {user-flow-id} を、前の手順で取得したユーザー フロー ID に置き換えます。 isSignUpAllowed パラメーターが false に設定されていることに注意してください。 サインアップを再度有効にするには、Microsoft Graph API エンドポイントを呼び出します。ただし、isSignUpAllowed パラメーターを true に設定します。

次のステップ