LoginSignup
0
0

AADB2Cを使ってWebAppにEasyAuth認証をかける

Posted at

※この記事の内容は2022/2に行った作業のメモですので、今もっと変わっているかもしれません…
悪しからず…

マニュアルや利用規約など、APIを使わない場合の設定です。
このサイト👇を参考に設定しました。
Azure Active Directory B2C を使って WebとAPIを保護するTips
画面が旧バージョンなのと若干設定が異なるところがあったので、以下説明していきます。

AADB2Cの準備

  1. ユーザーフローor Identity Experience Framework(IEF)を選択
    すでにユーザーフローやポリシーがある場合は以下から選択します。なければ作成してください。
    ADB2C>ユーザーフロー>任意のユーザーフロー
    または
    ADB2C>Identity Experience Framework>任意のカスタムポリシー
    今回は「B2C_1A_TOTP_SIGNUO_SIGNIN」というのを使います。
    image.png
    ユーザーフローorカスタムポリシーを選んだら、そのポリシーをクリックします。
    以下のようなダイアログが右にでてくるので、画像の部分のOpenID Connect検出エンドポイントををメモしておきます。
    image.png
  2. アプリの登録をする
    ADB2C>アプリの登録からアプリを登録する
    image.png
    名前、リダイレクトURIを設定します
    プラットフォームは「Web」を選択します。
    リダイレクトURIは「Azure側の実体AppServiceのURL/.auth/login/aad/callback」を指定します。
    他の項目はデフォルトでOKです。
    image.png
    ここまで設定できたら登録ボタンを押して登録します。
    登録したら、概要から「アプリケーション(クライアント)ID」をコピーしてメモしておきましょう。
    image.png
  3. アプリの設定をする。
    • 認証を確認します。
      「暗黙的な許可およびハイブリッドフロー」の部分のチェックを両方いれます。
      ※ここの設定は反映されるまで時間がかかるようです。
      もしこの設定を変更して挙動を確かめる場合は、一呼吸おいてから確認するとよいと思います。
      ※各トークンの機能の詳細はよくわかっていません…
      image.png
    • シークレットを発行する
      証明書とシークレット>新しいクライアントシークレットからシークレットを追加します。
      適切な名前と有効期限を設定します。(MAX24カ月)
      image.png
      登録すると以下のような感じで出てくるので、値の部分をコピーしてメモしておきましょう。
      キーボルトなどに格納しておくことをお勧めします。
      image.png

Azure Web Appの設定をする

  1. 認証をかけたいWebAppの設定>認証を開き、「IDプロバイダーを追加」を押します。
    image.png
    以下のように設定します。
    IDプロバイダー:Microsoft
    アプリの登録
    アプリの登録の種類:既存アプリの登録の詳細を提供します
    アプリケーション(クライアント)ID:「AADB2Cの準備」2でアプリ登録したときにコピーしたアプリケーションID
    クライアントシークレット(推奨):「AADB2Cの準備」3の「シークレットを発行する」でコピーしたシークレット
    発行者のURL:「AADB2Cの準備」1でコピーしたエンドポイント
    そのほか:規定値
    image.png
    ここまで設定できたら保存します。(アプリの登録の項目はあとから変更できます)

URLにアクセスしてみる

プライベートモードなどでアクセスしてみましょう。
👇のような画面が出てきたら成功です。
image.png

0
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
0
0