#aadojo
Azure の ID 管理サービスに
LINE ログインを組み込もう
2020/06/18 AADojo #4
@tsubakimoto_s
#aadojo
松村 優大 (Yuta Matsumura)
Chief Technical Architect (C#, PHP, Azure)
Microsoft MVP (Development Technologies)
Fukuoka.NET Organizer
@tsubakimoto_s
Currently working for
#aadojo
既存のアプリケーションのクラウド移行や、クラウドネイティブ
アプリケーション開発の場面において、顕在化する悩みや難しさ
の解決を支援するサービスです。
#aadojo
今日のテーマ
1. Azure Active Directory B2C の基盤
2. Azure Active Directory B2C で LINE ログインを使う
3. LIFF で LINE ログインを使う
4. まとめ
※具体的なコードについては話しません
#aadojo
Azure Active Directory B2C
• コンシューマー向けの認証機能や ID 管理を行うことができ
る Azure のサービス ※以降は「AAD B2C」と略します
https://docs.microsoft.com/ja-jp/azure/active-directory-b2c/
• 以下は異なるサービスです
• AAD : クラウドベースの ID およびアクセス管理サービス
• AAD B2B : AAD を使った企業間のコラボレーション
#aadojo
AAD B2C の基盤
ざっくりと
#aadojo
Azure
AAD テナント
Subscription
Resource Group
AAD B2C
AAD B2C テナント
Users
ID プロバイダー
ユーザーフロー
カスタムポリシー
→ 認証手順
#aadojo
ID プロバイダー (IdP)
• どこで管理されているアカウントを使用する?というもの
• ローカルアカウント (Email & Password)
• 外部 ID プロバイダー (OAuth1.0, OAuth2.0, OpenID Connect, SAML)
#aadojo
ユーザーフロー
• ID の操作に関する事前定義済みポリシー
• ユーザーが行うことができるアクション
• サインアップやサインイン
• プロファイル編集
• パスワードリセット
• 認証画面の UI のカスタマイズ
#aadojo
カスタムポリシーで独自の認証フローを実現
• 独自の認証フローって?
• 通常サポートされていない外部 IdP を使いたい
• 認証フローの途中で REST API を実行したい 等
• Identity Experience Framework (IEF) を使って
カスタムポリシーを定義する
• 詳しい解説は亀渕さんのブログを参考に
#aadojo
カスタムポリシーのファイル構成
https://docs.microsoft.com/ja-jp/azure/active-directory-b2c/trustframeworkpolicy
すべてのポリシーの定義
AAD B2C テナント固有の定義
ユーザーフローの定義
#aadojo
AAD B2C で LINE ログインを行う
#aadojo
AAD B2C で用意されている IdP に LINE ログインは無い
カスタムポリシーを使って対応する
#aadojo
詳しい設定手順は弊社ブログをご覧ください
• AAD B2C テナント & アプリケーション
• LINE ログイン ( & Messaging API )
• AAD B2C カスタムポリシー
#aadojo
ローカルアカウントでの認証
(メールアドレス+パスワード)
外部 IdP での認証
(今回は LINE ログインのみ)
#aadojo
LINE ログインは LIFF と相性が良い
ログインの手順をスキップできる!
LIFF : LINE Frontend Framework
https://developers.line.biz/ja/docs/liff/overview/
#aadojo
まとめ
• AAD B2C はコンシューマーのアカウントを管理し、
認証機能を提供するサービス。
ドキュメントは多くないため根気よく検証しましょう。
• カスタムポリシーで独自の認証フローを構成できる。
AAD B2C で LINE ログインを使うときもカスタムポリシー。
• LIFF 上では LINE アカウントの入力を省略できるため、
ユーザーの操作をひとつ減らすことができる。

Azure の ID 管理サービスに LINE ログインを組み込もう