SlideShare una empresa de Scribd logo
1 de 17
#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 アカウントの入力を省略できるため、
ユーザーの操作をひとつ減らすことができる。

Más contenido relacionado

La actualidad más candente

[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
de:code 2017
 
PaaSに適したアプリケーション設計 がもたらすメリット
PaaSに適したアプリケーション設計がもたらすメリットPaaSに適したアプリケーション設計がもたらすメリット
PaaSに適したアプリケーション設計 がもたらすメリット
Ayumu Aizawa
 

La actualidad más candente (20)

【de:code 2020】 Azure Bot Services を使って Teams bot を開発する
【de:code 2020】 Azure Bot Services を使って Teams bot を開発する【de:code 2020】 Azure Bot Services を使って Teams bot を開発する
【de:code 2020】 Azure Bot Services を使って Teams bot を開発する
 
改めて C# でできることを振り返る
改めて C# でできることを振り返る改めて C# でできることを振り返る
改めて C# でできることを振り返る
 
13_B_5 Who is a architect?
13_B_5 Who is a architect?13_B_5 Who is a architect?
13_B_5 Who is a architect?
 
実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門
 
ノーコーディングでAIサービスを使ってみた話
ノーコーディングでAIサービスを使ってみた話ノーコーディングでAIサービスを使ってみた話
ノーコーディングでAIサービスを使ってみた話
 
LINEログインの最新アップデートとアプリ連携ウォークスルー
LINEログインの最新アップデートとアプリ連携ウォークスルーLINEログインの最新アップデートとアプリ連携ウォークスルー
LINEログインの最新アップデートとアプリ連携ウォークスルー
 
Heroku HTTP API Design Guide
Heroku HTTP API Design GuideHeroku HTTP API Design Guide
Heroku HTTP API Design Guide
 
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
 
PaaSに適したアプリケーション設計 がもたらすメリット
PaaSに適したアプリケーション設計がもたらすメリットPaaSに適したアプリケーション設計がもたらすメリット
PaaSに適したアプリケーション設計 がもたらすメリット
 
Azure ADの外部コラボレーションとBYOID
Azure ADの外部コラボレーションとBYOIDAzure ADの外部コラボレーションとBYOID
Azure ADの外部コラボレーションとBYOID
 
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
 
AAD B2C使ってみた
AAD B2C使ってみたAAD B2C使ってみた
AAD B2C使ってみた
 
Azure io t_central_iotedge
Azure io t_central_iotedgeAzure io t_central_iotedge
Azure io t_central_iotedge
 
Fukuten 20200117 up
Fukuten 20200117 upFukuten 20200117 up
Fukuten 20200117 up
 
アイデンティティ API とデータ統合プラットフォームの活用
アイデンティティ API とデータ統合プラットフォームの活用アイデンティティ API とデータ統合プラットフォームの活用
アイデンティティ API とデータ統合プラットフォームの活用
 
WFSの認証基盤SDKと海外展開
WFSの認証基盤SDKと海外展開WFSの認証基盤SDKと海外展開
WFSの認証基盤SDKと海外展開
 
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
 
[MR13] Windows 10 Mobile 端末の展開と活用のキモ
[MR13] Windows 10 Mobile 端末の展開と活用のキモ[MR13] Windows 10 Mobile 端末の展開と活用のキモ
[MR13] Windows 10 Mobile 端末の展開と活用のキモ
 
OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護
 
Microsoftの認証システムの歴史と 過渡期におけるWAPの活用 +Next Generation Credentials
Microsoftの認証システムの歴史と過渡期におけるWAPの活用+Next Generation CredentialsMicrosoftの認証システムの歴史と過渡期におけるWAPの活用+Next Generation Credentials
Microsoftの認証システムの歴史と 過渡期におけるWAPの活用 +Next Generation Credentials
 

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

サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
Yuta Matsumura
 

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

Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
【de:code 2020】 AI Builder による、ローコード AI アプリケーション
【de:code 2020】 AI Builder による、ローコード AI アプリケーション【de:code 2020】 AI Builder による、ローコード AI アプリケーション
【de:code 2020】 AI Builder による、ローコード AI アプリケーション
 
Smart Store Map
Smart Store MapSmart Store Map
Smart Store Map
 
AIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdfAIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdf
 
AIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdfAIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdf
 
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
 
くまあず Nchikita 140628-2
くまあず Nchikita 140628-2くまあず Nchikita 140628-2
くまあず Nchikita 140628-2
 
【de:code 2020】 SaaS で迅速に IoT を実現 - Azure IoT Central 最新アップデートと活用術
【de:code 2020】 SaaS で迅速に IoT を実現 - Azure IoT Central 最新アップデートと活用術【de:code 2020】 SaaS で迅速に IoT を実現 - Azure IoT Central 最新アップデートと活用術
【de:code 2020】 SaaS で迅速に IoT を実現 - Azure IoT Central 最新アップデートと活用術
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
 
ASP.NET CoreとAzure AD B2Cを使ったサクっと認証
ASP.NET CoreとAzure AD B2Cを使ったサクっと認証ASP.NET CoreとAzure AD B2Cを使ったサクっと認証
ASP.NET CoreとAzure AD B2Cを使ったサクっと認証
 
【de:code 2020】 ~すでに時代遅れ? 個人情報や紙のためにオフィスに行くのは今すぐやめよう~ 日本郵政スタッフが実現したステイ ホーム/クラウ...
【de:code 2020】 ~すでに時代遅れ? 個人情報や紙のためにオフィスに行くのは今すぐやめよう~ 日本郵政スタッフが実現したステイ ホーム/クラウ...【de:code 2020】 ~すでに時代遅れ? 個人情報や紙のためにオフィスに行くのは今すぐやめよう~ 日本郵政スタッフが実現したステイ ホーム/クラウ...
【de:code 2020】 ~すでに時代遅れ? 個人情報や紙のためにオフィスに行くのは今すぐやめよう~ 日本郵政スタッフが実現したステイ ホーム/クラウ...
 
Microsoft Build 2020: Azure IoT 関連最新情報
Microsoft Build 2020: Azure IoT 関連最新情報Microsoft Build 2020: Azure IoT 関連最新情報
Microsoft Build 2020: Azure IoT 関連最新情報
 
VS Code Live Share ~ 東京と大阪を繋いでみよう!
VS Code Live Share ~ 東京と大阪を繋いでみよう!VS Code Live Share ~ 東京と大阪を繋いでみよう!
VS Code Live Share ~ 東京と大阪を繋いでみよう!
 
Scale Your Business without Servers
Scale Your Business without ServersScale Your Business without Servers
Scale Your Business without Servers
 
プロトコルから見るID連携
プロトコルから見るID連携プロトコルから見るID連携
プロトコルから見るID連携
 
チャットボット開発を取り巻く環境と Cogbot コミュニティ
チャットボット開発を取り巻く環境と Cogbot コミュニティチャットボット開発を取り巻く環境と Cogbot コミュニティ
チャットボット開発を取り巻く環境と Cogbot コミュニティ
 
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
 
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
 
SharePoint Business Connectivity Services を使用した外部アプリケーション連携
SharePoint Business Connectivity Services を使用した外部アプリケーション連携SharePoint Business Connectivity Services を使用した外部アプリケーション連携
SharePoint Business Connectivity Services を使用した外部アプリケーション連携
 
Profile
ProfileProfile
Profile
 

Más de Yuta Matsumura

Más de Yuta Matsumura (20)

「自分のとこでは動くけど…」を無くす devcontainer
「自分のとこでは動くけど…」を無くす devcontainer「自分のとこでは動くけど…」を無くす devcontainer
「自分のとこでは動くけど…」を無くす devcontainer
 
チーム開発で徐々にコード品質をあげていく取り組み
チーム開発で徐々にコード品質をあげていく取り組みチーム開発で徐々にコード品質をあげていく取り組み
チーム開発で徐々にコード品質をあげていく取り組み
 
.NETのサポートポリシーのおさらい #csharptokyo
.NETのサポートポリシーのおさらい #csharptokyo.NETのサポートポリシーのおさらい #csharptokyo
.NETのサポートポリシーのおさらい #csharptokyo
 
App Modernization for .NET
App Modernization for .NETApp Modernization for .NET
App Modernization for .NET
 
分かったうえではじめるCI/CD
分かったうえではじめるCI/CD分かったうえではじめるCI/CD
分かったうえではじめるCI/CD
 
VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発
 
いつでもどこでも .NET
いつでもどこでも .NETいつでもどこでも .NET
いつでもどこでも .NET
 
.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション
 
マイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tyeマイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tye
 
オンライン中心だから地方のコミュニティも見てみませんか? - Fukuoka.NETの紹介
オンライン中心だから地方のコミュニティも見てみませんか? - Fukuoka.NETの紹介オンライン中心だから地方のコミュニティも見てみませんか? - Fukuoka.NETの紹介
オンライン中心だから地方のコミュニティも見てみませんか? - Fukuoka.NETの紹介
 
Blazor Server テンプレート解説
Blazor Server テンプレート解説Blazor Server テンプレート解説
Blazor Server テンプレート解説
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
 
忙しい人のための .NET Conf 2019 まとめ
忙しい人のための .NET Conf 2019 まとめ忙しい人のための .NET Conf 2019 まとめ
忙しい人のための .NET Conf 2019 まとめ
 
.NET Conf の歩き方
.NET Conf の歩き方.NET Conf の歩き方
.NET Conf の歩き方
 
PHPカンファレンス福岡2019 閉会式
PHPカンファレンス福岡2019 閉会式PHPカンファレンス福岡2019 閉会式
PHPカンファレンス福岡2019 閉会式
 
PHPカンファレンス福岡2019 開会式
PHPカンファレンス福岡2019 開会式PHPカンファレンス福岡2019 開会式
PHPカンファレンス福岡2019 開会式
 
これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏
 
ASP.NET Core 2.x Identityについて
ASP.NET Core 2.x IdentityについてASP.NET Core 2.x Identityについて
ASP.NET Core 2.x Identityについて
 
C# runs anywhere, make anything
C# runs anywhere, make anythingC# runs anywhere, make anything
C# runs anywhere, make anything
 

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