簡體   English   中英

Azure AD登錄-如果我的應用程序的緩存帳戶錯誤,如何允許用戶更改Azure帳戶

[英]Azure AD login - how to allow user to change Azure account if cached account is wrong for my application

基本方案:Azure AD僅用作Web應用程序的身份驗證提供程序,從Azure中檢索到的身份通過電子郵件與本地身份進行匹配,並且針對該應用程序的Webapi發出用於API授權的表單身份驗證cookie。

問題:如果一個用戶有多個Azure帳戶,則當它們進入我的應用程序時可能會預先經過身份驗證。 在這種情況下,當重定向回我的應用程序時,可能沒有匹配的用戶,並且登錄無法完成。

所需的解決方案:如果緩存的Azure帳戶對我的應用程序無效,我想將用戶引導回microsoft登錄頁面,並有機會手動輸入其憑據

我如何實現這一目標,此流程有什么問題嗎? 目前看來,用戶進入我的應用程序的唯一方法是進入azure並注銷不良帳戶。 還有哪些其他方法可以實現更好的用戶體驗? 我是否應該使用Azure的auth令牌並以編程方式將用戶注銷,然后再回到Azure進行其他處理? 我可以提示azure提示用戶,即使他們已經登錄了嗎?

我發現我真的很想在重定向到azure時使用提示= select_account標志,但是我正在使用的庫很難確定如何設置它。 我正在使用ms-adal-angular6庫,該庫是azure-activedirectory-library-for-js的包裝。

仔細研究代碼后,我發現一個未記錄的配置屬性,稱為ExtraQueryParameter,當我將其設置為“ prompt = select_account”時,該行為就足夠接近所需的行為。

最終,用戶必須每次都選擇他們的帳戶,而不是僅在錯誤帳戶時選擇。 我很可能會因錯誤響應而變得棘手,並使用提示符= select_account再次重定向回第二次以獲取所需的行為,盡管該庫也無法輕松地即時更改它,因此我可能會堅持使用它總是在。

暫無
暫無

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

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