簡體   English   中英

Azure AD B2C社交注冊失敗

[英]Azure AD B2C Social Signups Failing

我正在嘗試獲取一個AspNet Core 2.1網站以通過Azure AD B2C進行身份驗證。 我已根據我發現的在線說明(例如, 針對Google )在租戶中配置了Google和Microsoft帳戶注冊。

但是注冊/登錄選項均無效。 指向它們的鏈接顯示在默認的Azure AD B2C登錄頁面上,但是單擊鏈接會觸發錯誤:

  • 對於Google,它會導致redirect_uri_mismatch錯誤

  • 對於Microsoft帳戶,它會返回“我們遇到技術難題”錯誤頁面,該頁面持續存在超過24小時,因此我懷疑是否存在任何中斷

這都是在開發環境中發生的,因此我沒有使用公共注冊的域(例如,答復uris全部指向本地主機)。 那可能是問題嗎? 如果是這樣,如何正確設置開發環境?

附加信息

我用Google身份提供商解決了問題。

但是我仍然遇到與Microsoft帳戶提供程序相同的錯誤。 但是,我只是注意到錯誤頁面的URL中埋有一條錯誤消息,該錯誤消息並未顯示在頁面本身上:

error = invalid_request&error_description =為+輸入+參數+ redirect_uri提供的+值+是+無效++預期+值+為+' https://login.live.com/oauth20_desktop.srf ' +或+網址+該+客戶端+應用程序的+重定向+ URI +注冊的+匹配。

錯誤消息中的第一個建議-針對login.live.com-不起作用。 Microsoft應用程序門戶網站抱怨域不匹配。

但是我看不到如何應用第二個建議,因為我不知道redirect_uri在Web應用程序中生成/存儲在哪里(即,我在Microsoft Application Portal中定義了重定向uri,但是我不知道請參閱我的webapp中的相應配置參數)。

確保您在社交服務提供商中注冊了相同的基本回復URL,並且您的應用程序是從B2C調用的。

例如:如果您的應用程序調用https://contoso.b2clogin.com/contoso.onmicrosoft.com/oauth2/v2.0/authorize,則社交提供程序中的回復URL應為https://contoso.b2clogin.com /contoso.onmicrosoft.com/oauth2/authresp

但是,某些應用程序示例調用https://contoso.b2clogin.com/te/contoso.onmicrosoft.com/oauth2/v2.0/authorize (注意“ te”),因此您需要添加https的回復URL : //contoso.b2clogin.com/te/contoso.onmicrosoft.com/oauth2/authresp

我通常將兩者都添加。

您首先可以使用本地電子郵件帳戶注冊嗎?如果沒有,則此鏈接https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-tutorials-網絡應用程序將很有幫助,其中包含一個示例網絡應用程序和步驟,一旦您能夠唱歌並進行身份驗證,就可以將身份提供者添加為Google,Microsoft,Facebook等,然后您可以編輯注冊或登錄政策,並添加Google,Microsoft等的身份提供商,

我希望這會有所幫助,加油! 如果您遇到任何問題,請告訴我

蘇拉傑·雷萬卡(Suraj Revankar)

原來我用來設置MicrosoftAccount身份應用程序所遵循的文檔不正確,或者我遵循了錯誤的說明。

基本上,您需要重定向到

https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp

https:// localhost:[端口號] / signin-oidc

就像我最初建議的文檔一樣。

請查看此問題和答案以獲取更多詳細信息。

暫無
暫無

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

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