我在 Azure 应用程序注册中遇到一个问题,因为我希望有 2 个不同的重定向 URI。我已在 Azure 中将平台注册为 Web 应用程序,并使用 Auth0 进行身份验证。
为此,我添加了 Auth0 回调 URI:https://dev-xxxxxxxxx.us.auth0.com/login/callback
来处理 Auth0 要求。
我还在我的应用程序中集成了 MS Onedrive Filepicker。我使用的是 OneDrive js SDK 8.0。为此,我需要再次使用重定向 URI。但在本例中,它必须是我的应用程序 URL,即 https://{my-domain}.io/detail
我很矛盾,因为当我尝试添加自己的域时,MS Azure 抛出此错误:错误详细信息:重定向 URI 必须具有公共(public)根域。
如果不允许在单个应用注册下拥有不同的根域,我如何继续支持 Auth0 和 Onedrive filepicker?
最佳答案
在我的例子中尝试了具有不同域的不同重定向网址;
https://login.microsoftonline.com/1xx0/oauth2/v2.0/authorize?client_id=xx&client_secret=x1&redirect_uri= xxxhttps://www.example.com/auth/callback&scope=api://x/.default&response_type=code
当我给出不同的根域时:
https://example.com/auth/callback
`https://www.example.com/auth/callback
我收到重定向 uri 不匹配的错误
如果您有多个子域,并且您的方案要求在成功进行身份验证后将用户重定向到他们启动的同一页面,则使用状态参数可能会有所帮助。
请查看Redirect URI (reply URL) restrictions - Microsoft Entra | Microsoft Learn
如果我们将 example1.csdom.com 和 example2.csdom.com 作为重定向 URI,则应添加第一个域“https://csdom.com
”作为重定向 URI,然后添加子域,例如:
https://csdom.com
https://example1.csdom.com
https://example2.csdom.com
然后就可以认证成功
确保为重定向 Uris 提供共同的根域。
引用: Add two Redirect URIs with same root domain (microsoft.com)
关于azure - Azure 应用程序注册中具有不同根域的重定向 uri 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75884569/