簡體   English   中英

Azure AD 認證僅適用於部分應用程序

[英]Azure AD authentication for only a part of the application

是否可以僅對部分應用程序使用 Azure AD 身份驗證?

我在一所學校工作,我們的團隊正在創建一個 web 應用程序,其中一些用戶需要使用他們的工作/學校帳戶登錄。 其他用戶可以創建個人帳戶並使用該帳戶登錄。 他們將使用應用程序的不同部分。

用戶應該看到的第一件事是一個頁面,他可以在其中選擇他是什么類型的用戶。 如果用戶是“外部用戶”,他可以使用他的個人帳戶登錄。 如果用戶是“老師”或“學生”,他可以通過 Azure AD 使用他的工作/學校帳戶登錄。

像這樣的東西。

在此處輸入圖像描述

這就是品牌下 Azure 門戶網站上的“主頁 URL”嗎? 當我填寫此信息時,該應用程序仍會立即顯示 Azure AD 登錄頁面。

還是我們需要使用 Azure AD B2C? 還是僅適用於 Google、Facebook 等社交身份?

您可以使用 Azure AD 和 OpenID 身份驗證流程來實現此目的。

此問題中的更多詳細信息Mixing Azure AD 身份驗證與 Forms 身份驗證

這就是品牌下 Azure 門戶網站上的“主頁 URL”嗎?

您可以在您的應用程序中注冊多種身份驗證方案,一種是使用本地數據庫進行身份驗證,一種是使用 Azure AD 進行身份驗證。 您應該在您的應用程序中使登錄頁面不在 Azure 側,並具有觸發不同方案的按鈕,例如 AAD 方案:

if (!User.Identity.IsAuthenticated)
{
     return Challenge(new AuthenticationProperties() { RedirectUri = "/" } , AzureADDefaults.AuthenticationScheme);
 }   

最簡單的方法是使用 ASP.NET Core Identity 並添加 Azure AD 身份驗證作為外部登錄。 是代碼示例。

對於授權部分,您可以在本地數據庫中管理用戶和角色,因為默認情況下,在 AAD 登錄后,身份框架將幫助在數據庫中創建本地用戶,但也可以根據您的要求進行自定義。 或者您可以直接創建策略並檢查用戶的聲明,從 AAD 或本地數據庫登錄的用戶應該有不同的聲明。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM