ローカル アカウント ID プロバイダーを設定する
開始する前に、[ポリシーの種類の選択] セレクターを使用して、設定するポリシーの種類を選択します。 Azure Active Directory B2C には、ユーザーがアプリケーションを操作する方法を定義する 2 つの方法 (定義済みのユーザー フローを使用する、または完全に構成可能なカスタム ポリシーを使用する) があります。 この記事で必要な手順は、方法ごとに異なります。
この記事では、Azure AD B2C ローカル アカウントのサインイン方法を決定する方法について説明します。 ローカル アカウントとは、ユーザーがアプリケーションにサインアップするとき、または管理者がアカウントを作成するときに、Azure AD B2C ディレクトリに作成されるアカウントを指します。 ユーザー名とパスワードはローカルに格納され、Azure AD B2C はローカル アカウントの ID プロバイダーとして機能します。
ローカル アカウントでは、次に示すいくつかのサインイン方法を使用できます。
- メール アドレス: ユーザーは自分のメール アドレスとパスワードを使用してアプリにサインアップおよびサインインできます。 ローカル アカウント ID プロバイダーの設定では、メール アドレスでのサインアップが既定で有効になっています。
- ユーザー名: ユーザーはユーザー名とパスワードを使用してサインアップおよびサインインできます。
- 電話 ("パスワードレス認証") : ユーザーはプライマリ サインイン ID として電話番号を使用してアプリにサインアップおよびサインインできます。 パスワードを作成する必要はありません。 ワンタイム パスワードが SMS テキスト メッセージを介してユーザーに送信されます。
- 電話またはメール アドレス: ユーザーは電話番号またはメール アドレスを入力してサインアップまたはサインインできます。 ユーザー入力に基づいて、Azure AD B2C によりサインアップまたはサインインのページの対応するフローにユーザーが移動されます。
- 電話での回復: 電話でのサインアップまたはサインインを有効にした場合は、電話での回復により、ユーザーが自分の電話を持っていないときにアカウントを回復するために使用できるメール アドレスを指定できます。
これらの方法の詳細については、サインイン オプションに関する記事を参照してください。
ユーザーの ID が Facebook や Google などのフェデレーション ID プロバイダーによって管理されるソーシャル ID またはエンタープライズ ID の設定を行うには、ID プロバイダーの追加に関する記事を参照してください。
前提条件
- ユーザー フローを作成して、ユーザーがアプリケーションにサインアップおよびサインインできるようにします。
- Web アプリケーションを登録します。
- 「Active Directory B2C でのカスタム ポリシーの概要」にある手順を完了します。
- Web アプリケーションを登録します。
ローカル アカウント ID プロバイダーの設定を構成する
Azure AD B2C の ID プロバイダーのリストでローカル アカウント プロバイダーを構成することにより、テナントで利用できるローカル アカウントのサインイン方法 (メール アドレス、ユーザー名、電話番号) を選択できます。 続いて、ユーザー フローの設定時に、テナント全体で有効にしたローカル アカウントのサインイン方法の 1 つを選択できます。 ユーザー フローに対して選択できるローカル アカウントのサインイン方法は 1 つだけですが、ユーザー フローごとに異なるオプションを選択できます。
ローカル アカウントのサインイン オプションをテナント レベルで設定するには、次の手順を実行します。
Azure portal にサインインします。
複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコンを選び、[ディレクトリとサブスクリプション] メニューからお使いの Azure AD B2C テナントに切り替えます。
[Azure サービス] で、 [Azure AD B2C] を選択します。 または、検索ボックスを使用して検索し、 [Azure AD B2C] を選択します。
[管理] で、 [ID プロバイダー] を選択します。
ID プロバイダー リストで、 [ローカル アカウント] を選択します。
[ローカル IdP を構成します] ページで、Azure AD B2C テナント内のユーザー フローに対して有効にする 1 つ以上の ID の種類を選択します。 ここでオプションを選択すると、そのオプションをテナント全体で使用できるようになります。ユーザー フローを作成または変更する場合は、ここで有効にするオプションから選択できます。
- 電話: ユーザーは電話番号の入力を求められます。それがサインアップ時に検証され、ユーザー ID になります。
- ユーザー名: ユーザーは独自の一意のユーザー ID を作成できます。 ユーザーからメール アドレスが収集され、検証されます。
- メール アドレス: ユーザーはメール アドレスの入力を求められます。それがサインアップ時に検証され、ユーザー ID になります。
[保存] を選択します。
ユーザー フローを構成する
- Azure portal の左側のメニューで、 [Azure AD B2C] を選択します。
- [ポリシー] で [ユーザー フロー] を選択します。
- サインアップとサインインの操作を構成するユーザー フローを選択します。
- [ID プロバイダー] を選択します。
- [ローカル アカウント] で、[メールでのサインアップ]、[ユーザー ID でのサインアップ]、[電話でのサインアップ]、[電話とメールでのサインアップ]、[なし] のいずれかを選択します。
回復用メール アドレスのプロンプトを有効にする
[Phone signup](電話でのサインアップ) 、 [Phone/Email signup](電話/電子メールでのサインアップ) オプションを選択した場合、回復用メール アドレスのプロンプトを有効にします。
- Azure portal にサインインします。
- 複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコンを選択し、[ディレクトリとサブスクリプション] メニューからお使いの Azure AD B2C テナントに切り替えます。
- Azure portal で、 [Azure AD B2C] を検索して選択します。
- Azure AD B2C の [ポリシー] で、 [ユーザー フロー] を選択します。
- 一覧からユーザー フローを選択します。
- [設定] で [プロパティ] を選択します。
- [Enable recovery email prompt for phone number signup and sign in (preview)]\(電話番号でのサインアップとサインインの回復用メール プロンプトを有効にする (プレビュー)\) の横で、次のように選択します。
- [オン] : サインアップとサインインの両方で回復用メール プロンプトを表示する。
- [オフ] : 回復用メール プロンプトを非表示にする。
- [保存] を選択します。
スターター パックを取得する
カスタム ポリシーは、ユーザー体験を定義するために Azure AD B2C テナントにアップロードされる XML ファイルのセットです。 事前に作成されたポリシーがいくつか含まれるスターター パックが用意されています。 関連するスターター パックをダウンロードします。
- メール アドレスでのサインイン
- ユーザー名でのサインイン
- 電話でのサインイン。 SignUpOrSignInWithPhone.xml 証明書利用者ポリシーを選択します。
- 電話またはメール アドレスでのサインイン。 SignUpOrSignInWithPhone.xml 証明書利用者ポリシーを選択します。
スターター パックをダウンロードした後:
各ファイル内で、文字列
yourtenant
を、使用している Azure AD B2C テナントの名前に置き換えます。 たとえば、B2C テナントの名前が contosob2c であれば、yourtenant.onmicrosoft.com
のすべてのインスタンスはcontosob2c.onmicrosoft.com
になります。「Azure Active Directory B2C でのカスタム ポリシーの概要」の「カスタム ポリシーにアプリケーション ID を追加します」の手順を完了します。 たとえば、前提条件を満たす際に登録した 2 つのアプリケーション (IdentityExperienceFramework と ProxyIdentityExperienceFramework) のアプリケーション (クライアント) ID を使用して、
/phone-number-passwordless/
Phone_Email_Base.xml
を更新します。ポリシー ファイルをアップロードする