2017-03-04 308 views
0

我正在創建一個web api應用程序,該應用程序將使用Oauth進行身份驗證。我可以將驗證設置爲個人帳戶和組織帳戶的混合嗎?Azure/.NET Web API/Office 365-身份驗證

場景:一組用戶屬於使用Office 365的組織。另一組用戶可能不是。最終目標是允許所有用戶登錄,但就組織用戶而言,我還希望允許他們與與其組織綁定的Office 365 apis集成。

是否有解決方案設計可以讓我選擇認證用戶的位置 - 使用應用程序的Azure AD還是訂閱組織的AD?

回答

0

對於僅對MSA和AAD組織進行身份驗證,您可以使用新的Microsoft Graph(http://graph.microsoft.io) - 它是所有Microsoft身份和請求訪問郵件,日曆等內容的統一終端。它使用v2 AAD端點(下文提及)和應用程序註冊是通用的,因此您可以使用組織或個人帳戶登錄。

您可以將Azure B2C擴展爲擁有目錄。

  • 加入微軟帳戶身份提供商,並
  • 使用V2端點

此時用戶可以與消費者帳戶(在Facebook,微軟,谷歌,等等)登錄。通過擴展,因爲對於MSA它使用新的v2端點,您可以提示用戶使用MSA或組織cccount登錄 - 用戶將得到如下所示的提示。請注意「工作或學校,或個人微軟賬戶」。

v2有一些限制,但是:https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-compare因此請確保您可以在潛入之前完成您想要的任何操作。某些回覆URL和代表流(如您在API中看到的)有一些域/受衆限制。

Work or school, or personal Microsoft account