簡體   English   中英

當提示=同意並且用戶是真實帳戶時,Azure SSO錯誤:AADSTS50020

[英]Azure SSO Error: AADSTS50020 when prompt=consent and user is a live account

我在Azure ActiveDirectory上有一個MUTITENAT應用程序。 我正在使用它來登錄我的網站上的用戶。

重定向用戶時,我們沒有使用“提示”參數。 我們不喜歡這樣,因為如果用戶已經登錄了azure,然后單擊鏈接:重定向到azure,然后自動重定向到我的網站,而不接受任何內容。

所以現在,我們希望用戶接受權限。 因此,我們在重定向用戶時添加了'prompt = consent'參數。

問題在於,現在每個嘗試登錄的真實帳戶都會收到帶有以下錯誤消息的Azure錯誤頁面:

AADSTS50020:來自身份提供者“ live.com”的用戶帳戶“ xxx@outlook.com”在租戶“ XXX”中不存在,並且無法訪問該租戶中的應用程序“ xxx”。 首先需要將該帳戶作為外部用戶添加到租戶中。 注銷並使用其他Azure Active Directory用戶帳戶再次登錄。

有關錯誤和我的實際配置的更多詳細信息:

  • 我正在使用公共端點來調用api(/ common / oauth2 / authorize和/ common / oauth2 / token)
  • 即使租戶上有真實賬戶,我也嘗試登錄。 也失敗了
  • 另外,當我嘗試使用Azure帳戶(無論是在我的租戶上還是在其他租戶上)登錄時,都可以正常工作(使用代碼參數將用戶重定向到我的網站)。

僅在v2端點中提供對LiveID的支持。

根據您發布的內容,您將到達v1端點。 為了移至v2,您需要打電話

/common/oauth2/v2.0/authorize
/common/oauth2/v2.0/token

或者,如果您正在使用元數據端點來發現身份驗證端點:

https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration

在使用v2端點時,您還需要進行其他一些調整,例如使用范圍而不是資源。 另外,v2端點尚不支持所有流。

您可以在Azure AD App Model V2文檔中找到更多信息。

暫無
暫無

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

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