概要
- Web アプリケーションの登録(jwt.meを利用)
- クライアント シークレットの作成
- ID トークンの暗黙的な許可の有効化
- サインアップとサインイン ユーザー フローを作成する
- セルフサービス パスワード リセットを有効にする
- プロファイル編集ユーザー フローを作成する
WEBアプリケーションの登録
- Azure AD B2C テナントに切り替える
- 「Azure AD B2C」を検索する
- アプリの登録から新規登録を選択する
- アプリ名:webapp1
- サポートされているアカウントの種類:Accounts in any identity provider or organizational directory (for authenticating users with user flows)
- リダイレクトURI:web, https://jwt.ms
- アクセス許可: [openid と offline_access アクセス許可に対して管理者の同意を付与します] チェック ボックス

クライアントシークレットの作成
Web アプリケーションの場合は、アプリケーション シークレットを作成する必要があります。 クライアント シークレットは、”アプリケーション パスワード” とも呼ばれます。 このシークレットは、承認コードをアクセス トークンと交換するためにアプリケーションによって使用されます。
- 作成したWEBアプリケーションwebapp1を開く
- 管理 > 証明書とシークレットを開く
- 新しいクライアントシークレットを開く
- 説明:clientsecret1
- 有効期限:6か月
- 追加ボタンを押す
シークレット値が表示されるので記録する。この値はこの時だけしか画面に表示されない。

Azure Active Directory B2C でユーザー フロー作成
ユーザーフローの生成
Azure Active Directory B2C (Azure AD B2C) は、アプリケーションのユーザー認証と ID 管理のためのクラウドベースのサービスです。ユーザーフローとカスタムポリシーフローは、Azure AD B2C で利用可能な認証フローの2つのタイプです。
- ユーザーフロー (User Flow):
- ユーザーフローは、事前に定義されたステップのセットで構成された標準的な認証フローです。
- ユーザーフローを使用すると、多要素認証、ソーシャルログイン、ユーザーの登録などの機能を簡単に実装できます。
- Azure AD B2C ポータルで簡単に構成できます。
- カスタムポリシーフロー (Custom Policy Flow):
- カスタムポリシーフローは、柔軟性の高い認証フローで、独自のビジネスロジックや UI を実装できます。
- カスタムポリシーフローを使用すると、特定のニーズや複雑なシナリオに対応することができます。
- XML ベースのポリシー定義を作成し、Azure AD B2C ポータルまたは Azure AD B2C の API を使用してカスタムポリシーフローを展開できます。
選択するフローのタイプは、プロジェクトの要件と目標によって異なります。ユーザーフローはシンプルで容易に設定できますが、より高度な制御とカスタマイズが必要な場合はカスタムポリシーフローを選択することができます。
サインアップとサインイン ユーザー フローを作成する
- Azure AD B2Cテナントへ切り替える
- 「Azure AD B2C」を検索して選択する
- ポリシーでユーザーフローを選択し、新しいユーザーフローを選択する
- サインアップとサインインを選択、Recommendedを選択し、作成をクリックする

- 名前:signupsignin1
- IDプロバイダー:電子メールのサインアップ
- ユーザー属性とトークン要求:国、表示名、郵便番号を選択する
- 作成を選択する

ユーザフローをテストする
- ユーザフローの実行を選択する
- アプリケーション:webapp1
- 応答URL:https://jwt.me
- ユーザーフローの実行を選択する

- sign up nowを選択する
- 確認コードを送信する
- 確認コード入力、パスワード設定、国選択、表示名入力、郵便番号を入力し、ユーザー登録する

セルフパスワードリセットを有効にする
- B2C_1_signupsignin1ユーザーフローを選択する
- Settings > Propertiesを選択する
- Passowrd ConfigurationのSelf-service password resetをONにする

- Forgot your passwordをクリックし、パスワードが再設定できることを確認する
プロファイル編集ユーザー フローを作成する
- Profile editingユーザーフローを選択する

- 名前:profileediting1
- ID provider:Email siginin
- User attributes:Display name, Job title
- Createをクリックする
- ユーザーフローを実行する
- ログイン後、ユーザー情報が表示、編集できることを確認する
