LoginSignup
2
0

More than 1 year has passed since last update.

Azure Active Directory B2Cを使いこなそう 番外編「ContainerAppsの認証にB2Cを使う」

Last updated at Posted at 2022-09-07

連載「Azure Active Directory B2Cを使いこなそう」

  1. Azure Active Directory B2Cの特徴と使いどころ
  2. 基本的な使い方(標準ユーザーフロー)を知る
  3. 基本的な概念(テナント、アプリケーション、ユーザー)を理解する
  4. ユーザーフローの日本語化
  5. パスワードレス認証
  6. 条件付きアクセスを使って環境に応じた認証を要求する
  7. 柔軟な認証フローを実現する:カスタムポリシー
  8. ContainerAppsの認証にB2Cを使う

ContainerAppsの認証

ContainerAppsでは簡単な設定でOpenID Connectに対応しているサービスをアプリケーションの認証に利用することができます。
AzureADを使う場合については公式にも手順の記載がありますが、B2Cは記載されていないので試してみます。

ContainerAppsを立ち上げる

以下の設定で立ち上げます。特に注意すべきものはありません。

image.png

リソースが立ち上がったらアプリケーション URLをメモします。

image.png

URLをブラウザで開くと以下の画面が表示されます。
この画面を開く前に認証が求められるように設定します。

image.png

B2Cにアプリケーションを登録する

B2Cのテナントでアプリケーションを登録します。
管理のアプリの登録を選び、新規登録を選択します。

image.png

リダイレクトURIですが、<app-url>/.auth/login/<provider-name>/callbackという形式になります。B2Cの場合はカスタムのProviderになるので、自分であとでつけることになる名前になります。ここではprovider-nameの部分をaadb2cとします。app-urlは先ほどメモしたアプリケーション URLを指定します。

image.png

アプリケーション(クライアントID)をメモします。

image.png

クライアントシークレットを登録します。

image.png

登録したシークレットの値をメモします。

image.png

左ナビの認証を選択し、ID トークンを選択します。

image.png

ユーザフローのメタデータエントリを確認する

認証で利用するユーザーフローを選択する

image.png

「ユーザーフローを実行します」を選択すると右側上部に表示されるURLをメモします。

image.png

ContainerAppsでB2Cを利用するように設定する

左ナビの認証を選択し、ID プロバイダーを追加を押下します。

image.png

OpenID プロバイダー名に「aadb2c」を、「ユーザーフローを実行します」を選択すると右側上部に表示されるURLをメタデータURLに、アプリケーション(クライアントID)をクライアントIDに、シークレットの値をクライアントシークレットに指定します。

image.png

認証が有効になっていることを確認する

アプリケーション URLを開くと認証画面が表示されます。
最初の1回目はエラーになるかもしれませんが、気にせずリロードします。

image.png

以下の画面が開ければ成功です!

image.png

うまくいかない場合

クライアントIDが間違っている場合は認証画面を表示できず、エラーメッセージが出ます。

シークレットが間違っている場合は認証画面は表示されるのですが、ContainerAppsに戻ってきたところでエラーになります。この場合はエラーメッセージは画面に出てくれません。
以下のログを確認するとシークレットが間違っているというエラーメッセージが出ているはずです。

image.png

気にする人いないかもしれませんが、上記で出てくるシークレットやクライアントIDはすべて無効化済です。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0