SlideShare a Scribd company logo
ROOM
I
API Service
Client Type Access Pattern
Public Client refresh token によるログイン状態の保持
Confidential Client client secret を使用した「なりすまし」抑制
Single Page Web Client refresh token / client secret 不使用 (hidden iframe を使用)
Text Client Device コードの使用 (device profile flow)
Daemon / Service Client App-only context (Login UI 不要)
Senario Access Pattern
オフライン接続 refresh token を使用した access token の取り直し
(別 resource も指定可能)複数リソースの使用
Impersonation (偽装)
access token を使用した access token の取り直し
(on_behalf_of パラメーターを使用)
Message
Calendar
File
People
Directory
Communication
Item
Conversation
Insight
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
Your
Client App
Microsoft Account
Outlook.com
Your
Client App
Azure AD
Exchange Online
Your
Client App
Unified AuthN/Z endpoint
(https://login.microsoftonline.com/common/oauth2/v2.0)
Unified API endpoint
(OneDrive, Outlook, etc)
v2.0 endpoint
Microsoft Graph
https://api.office.com/discovery/me/FirstSignIn
?redirect_uri={redirect uri}&scope={scope}
https://api.office.com/discovery/
・・・
{
"@odata.context":"https://api.office.com/...",
"value":[
{
"capability":"MyFiles",
"serviceEndpointUri":"https://o365demo01-
my.sharepoint.com/_api/v1.0/me",
"serviceResourceId":"https://o365demo01-my.sharepoint.com/"
...
},
{
"capability":"Calendar",
"serviceEndpointUri":"https://outlook.office365.com/api/v1.0",
"serviceResourceId":"https://outlook.office365.com/"
...
},
...
]
}
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
Client Type Access Pattern
Public Client refresh token によるログイン状態の保持
Confidential Client client secret を使用した「なりすまし」抑制
Single Page Web Client refresh token / client secret 不使用 (hidden iframe を使用)
Text Client Device コードの使用 (device profile flow)
Daemon / Service Client App-only context (Login UI 不要)
Senario Access Pattern
オフライン接続 refresh token を使用した access token の取り直し
(別 resource も指定可能)複数リソースの使用
Impersonation (偽装)
access token を使用した access token の取り直し
(on_behalf_of パラメーターを使用)
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
アプリ
O365
API
https://dummy.com/callback
https://dummy.com/callback
...
アプリ
O365
API
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
単一のキャンバス:
グループの会話の一部として
外部コンテンツの表示や編集
Office 365 Connectors
プロジェクト、
生産性向上
顧客管理
ニュース、
ソーシャル
開発ツール
Trello Asana Wunderlist
Salesforce MSFT Dynamics
Bing News Twitter RSS
Zendesk
Github Visual Studio Webhook
Windows Hello
IDP
Active Directory
Azure AD
Microsoft
Account
Other IDP’s
1
User
2
Windows
10
3Intranet
Resource
4
4Intranet
Resource
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
// get Microsoft Web Account Manager Provider
var provider =
await WebAuthenticationCoreManager.FindAccountProviderAsync(
"https://login.microsoft.com", "organizations");
// request result token to Web Account Manager
WebTokenRequest webTokenRequest = new WebTokenRequest(
provider, "", "553bd5ae-0b5c-40b3-abeb-4ffa34eca2d3");
webTokenRequest.Properties.Add(
"resource", "https://graph.windows.net");
WebTokenRequestResult webTokenResult =
await WebAuthenticationCoreManager.RequestTokenAsync(
webTokenRequest);
// retrieve access token
// webTokenResult.ResponseData[0].Token に入っている
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
// Create the credential
KeyCredentialRetrievalResult createRes =
await KeyCredentialManager.RequestCreateAsync("key1",
KeyCredentialCreationOption.ReplaceExisting);
// if the status is success, retrieve the public key.
var pubKey = createRes.Credential.RetrievePublicKey();
// convert string to binary buffer
var inputbuf = CryptographicBuffer.ConvertStringToBinary(
"Test Data 1", BinaryStringEncoding.Utf8);
// sign using retrieved private key
KeyCredentialOperationResult signRes =
await res.Credential.RequestSignAsync(inputbuf);
// get the base64 encoded data to cryptographically sign
string base64encSignature =
CryptographicBuffer.EncodeToBase64String(signRes.Result);
アンケートにご協力ください。
●アンケートに 上記の Session ID のブレイクアウトセッションに
チェックを入れて下さい。
●アンケートはお帰りの際に、受付でご提出ください。
マイクロソフトスペシャルグッズと引換えさせていただきます。
ROOM I
Ask the Speaker のご案内
●本セッションの詳細は、EXPO 会場内
『Ask the Speaker』コーナー
Room I カウンタにてご説明させて
いただきます。是非、お立ち寄りください。

More Related Content

PDF
Introduction of OAuth 2.0 vol.1
Ryo Ito
 
PDF
About Chrome web store
knj77
 
PPTX
Azure ad saas integration tips and tricks 20180227
Yusuke Kodama
 
PDF
PRD-005_Skype Developer Platform によるアプリケーション開発の最新情報
decode2016
 
PDF
次期Office製品群の新しい開発モデルの解説
kumo2010
 
PPTX
SharePoint 2010 を使ったクラウドアプリ開発
Tusyoshi Matsuzaki
 
PDF
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
de:code 2017
 
PDF
Share point における id管理と認証・認可
Naohiro Fujie
 
Introduction of OAuth 2.0 vol.1
Ryo Ito
 
About Chrome web store
knj77
 
Azure ad saas integration tips and tricks 20180227
Yusuke Kodama
 
PRD-005_Skype Developer Platform によるアプリケーション開発の最新情報
decode2016
 
次期Office製品群の新しい開発モデルの解説
kumo2010
 
SharePoint 2010 を使ったクラウドアプリ開発
Tusyoshi Matsuzaki
 
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
de:code 2017
 
Share point における id管理と認証・認可
Naohiro Fujie
 

Similar to PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法 (20)

PDF
PRD-002_SharePoint Server 2016 & Online ハイブリッド環境での業務活用
decode2016
 
PDF
20101110 Tech 01 クライアントとネットワークの計画
kumo2010
 
PDF
Azure ADとIdentity管理
Naohiro Fujie
 
PDF
OAuth2.0によるWeb APIの保護
Naohiro Fujie
 
PDF
BYOD_Policy_JP-1.0.pdf
Hisaho Nakata
 
PDF
00_O365_SecureConfigurationAlignment_JP_v1.0.pdf
Hisaho Nakata
 
PDF
20101111 Tech 05 Exchange Online/OCS および Live Meetingの展開計画と実装
kumo2010
 
PDF
管理者のための次期Office 365 Enterprise入門
kumo2010
 
PDF
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Genki WATANABE
 
PDF
Microsoft Graph APIを活用した社内アプリケーション開発
Yuki Hattori
 
PDF
Microsoft Project Online 活用ガイド
kumo2010
 
PDF
Sec012 windows 10_があなたの情報
Tech Summit 2016
 
PDF
Sec016 詳説 -_rights_management_services__azure_information_protection
Tech Summit 2016
 
PDF
Active Directory 最新情報 2012.8.31 暫定版
junichi anno
 
PDF
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
Hamamatsu-cho Mobile Club(浜松町モバイル愛好会)
 
PDF
働き方改革を後押しする Office 365 + リモートワークソリューション ~Azure Active Directoryとの組み合わせで実現する~リ...
NHN テコラス株式会社
 
PPTX
Office 365 のセキュリティ対策(情報管理) 8つのポイント
Kazuhiko Nakamura
 
PPTX
Windows Phone で Active Directory 認証 2011.12.1版
junichi anno
 
PDF
Office 365 勉強会 #4
skomeda
 
PPTX
Azure ad の導入を検討している方へ ~ active directory の構成パターンと正しい認証方式の選択~
junichi anno
 
PRD-002_SharePoint Server 2016 & Online ハイブリッド環境での業務活用
decode2016
 
20101110 Tech 01 クライアントとネットワークの計画
kumo2010
 
Azure ADとIdentity管理
Naohiro Fujie
 
OAuth2.0によるWeb APIの保護
Naohiro Fujie
 
BYOD_Policy_JP-1.0.pdf
Hisaho Nakata
 
00_O365_SecureConfigurationAlignment_JP_v1.0.pdf
Hisaho Nakata
 
20101111 Tech 05 Exchange Online/OCS および Live Meetingの展開計画と実装
kumo2010
 
管理者のための次期Office 365 Enterprise入門
kumo2010
 
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Genki WATANABE
 
Microsoft Graph APIを活用した社内アプリケーション開発
Yuki Hattori
 
Microsoft Project Online 活用ガイド
kumo2010
 
Sec012 windows 10_があなたの情報
Tech Summit 2016
 
Sec016 詳説 -_rights_management_services__azure_information_protection
Tech Summit 2016
 
Active Directory 最新情報 2012.8.31 暫定版
junichi anno
 
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
Hamamatsu-cho Mobile Club(浜松町モバイル愛好会)
 
働き方改革を後押しする Office 365 + リモートワークソリューション ~Azure Active Directoryとの組み合わせで実現する~リ...
NHN テコラス株式会社
 
Office 365 のセキュリティ対策(情報管理) 8つのポイント
Kazuhiko Nakamura
 
Windows Phone で Active Directory 認証 2011.12.1版
junichi anno
 
Office 365 勉強会 #4
skomeda
 
Azure ad の導入を検討している方へ ~ active directory の構成パターンと正しい認証方式の選択~
junichi anno
 
Ad

More from decode2016 (20)

PDF
SPL-005_オープンソースから見たマイクロソフト
decode2016
 
PDF
SPL-004_Windows 10 開発の舞台裏から学ぶエンジニアの未来
decode2016
 
PDF
SPL-003_黒船襲来! 世界DevOps トップ企業 x マイクロソフトによるトークバトル セッション
decode2016
 
PDF
SPL-002_クラウド心配性な上司を説得するコツを伝授します ~本当に信頼できるクラウドの構築/運用とは? マイクロソフト クラウド成長の軌跡~
decode2016
 
PDF
PRD-009_クラウドの ERP による業務システム開発 ~OData エンド ポイントから Power BI 連携~
decode2016
 
PDF
PRD-008_クラウド ネイティブ ERP ~Dynamics AX のアーキテクチャ/環境構築から開発/運用まで~
decode2016
 
PDF
PRD-006_機械学習で顧客対応はこう変わる! Azure ML と Dynamics で造る次世代 CRM
decode2016
 
PDF
INF-028_そのエラーやお困りごと、ツールを使えば解決できるかも! ~Sysinternals や OS 標準ツールの徹底活用術~
decode2016
 
PDF
INF-027_セキュリティ マニアックス -サイバー攻撃の手口と防御手法- ~敵を知り、己を知れば百戦危うからず~
decode2016
 
PDF
INF-026_真のクラウドベース EMM ~マイクロソフトのモビリティ戦略はいかにユニークか~
decode2016
 
PDF
INF-025_企業で使える Windows 10 ~現実的なアプリ & デバイス管理~
decode2016
 
PDF
INF-024_Windows 10 の展開 ~プロビジョニング? いやワイプ & ロードでしょ!~
decode2016
 
PDF
INF-023_マイクロソフトの特権管理ソリューションの全貌 ~永続的な管理者特権の廃止への道~
decode2016
 
PDF
INF-022_情報漏えいを責めるべからず。今必要な対策とは? ~Windows 10 セキュリティ機能徹底解説~
decode2016
 
PDF
INF-021_実践! Windows as a Service との上手な付き合い方 ~新しい OS 更新管理の徹底解説~
decode2016
 
PDF
INF-020_メーカーがおしえてくれない正しいクラウドについて
decode2016
 
PDF
INF-019_Nano Server だけでここまでできる! ~極小サーバーの使い方~
decode2016
 
PDF
INF-018_OS の中で SDN 抗争勃発!? ~主役を争う VXLAN vs NVGRE~
decode2016
 
PDF
INF-017_Windows Server 2016 の Software Defined Storage のしくみと活用
decode2016
 
PDF
INF-016_比べて納得! Windows Server 2016 Hyper-V の新機能すべて見せます!
decode2016
 
SPL-005_オープンソースから見たマイクロソフト
decode2016
 
SPL-004_Windows 10 開発の舞台裏から学ぶエンジニアの未来
decode2016
 
SPL-003_黒船襲来! 世界DevOps トップ企業 x マイクロソフトによるトークバトル セッション
decode2016
 
SPL-002_クラウド心配性な上司を説得するコツを伝授します ~本当に信頼できるクラウドの構築/運用とは? マイクロソフト クラウド成長の軌跡~
decode2016
 
PRD-009_クラウドの ERP による業務システム開発 ~OData エンド ポイントから Power BI 連携~
decode2016
 
PRD-008_クラウド ネイティブ ERP ~Dynamics AX のアーキテクチャ/環境構築から開発/運用まで~
decode2016
 
PRD-006_機械学習で顧客対応はこう変わる! Azure ML と Dynamics で造る次世代 CRM
decode2016
 
INF-028_そのエラーやお困りごと、ツールを使えば解決できるかも! ~Sysinternals や OS 標準ツールの徹底活用術~
decode2016
 
INF-027_セキュリティ マニアックス -サイバー攻撃の手口と防御手法- ~敵を知り、己を知れば百戦危うからず~
decode2016
 
INF-026_真のクラウドベース EMM ~マイクロソフトのモビリティ戦略はいかにユニークか~
decode2016
 
INF-025_企業で使える Windows 10 ~現実的なアプリ & デバイス管理~
decode2016
 
INF-024_Windows 10 の展開 ~プロビジョニング? いやワイプ & ロードでしょ!~
decode2016
 
INF-023_マイクロソフトの特権管理ソリューションの全貌 ~永続的な管理者特権の廃止への道~
decode2016
 
INF-022_情報漏えいを責めるべからず。今必要な対策とは? ~Windows 10 セキュリティ機能徹底解説~
decode2016
 
INF-021_実践! Windows as a Service との上手な付き合い方 ~新しい OS 更新管理の徹底解説~
decode2016
 
INF-020_メーカーがおしえてくれない正しいクラウドについて
decode2016
 
INF-019_Nano Server だけでここまでできる! ~極小サーバーの使い方~
decode2016
 
INF-018_OS の中で SDN 抗争勃発!? ~主役を争う VXLAN vs NVGRE~
decode2016
 
INF-017_Windows Server 2016 の Software Defined Storage のしくみと活用
decode2016
 
INF-016_比べて納得! Windows Server 2016 Hyper-V の新機能すべて見せます!
decode2016
 
Ad

Recently uploaded (10)

PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
PDF
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
PPTX
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 

PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法