【发布时间】:2017-06-13 02:18:34
【问题描述】:
我有一个 ASP.NET Web 表单站点,用户将使用 Azure Active Directory 登录。作为客户端,它调用 Asp.Net Core Web Api 站点,该站点将根据客户角色返回一些信息。 该方法类似于https://github.com/Azure-Samples/active-directory-dotnet-webapp-webapi-openidconnect-aspnetcore 示例。
示例中的每个应用程序都有自己的 Azure Active Directory 应用程序。我的应用程序有很多应用程序角色,在两个应用程序中维护它们可能很烦人且容易出错。我希望客户端和服务使用相同的 AAD 应用程序,以避免在 2 个 AAD 应用程序中保持相同的角色。
我没有在示例中看到过这样的架构,这种方法有什么问题?
我尝试实现它并收到一个“有希望的”错误,即“支持场景”。
AADSTS90009:应用程序正在为自己请求令牌。这 仅当使用 GUID 指定资源时才支持方案 基于应用标识符。
不幸的是,我不明白如何“使用基于 GUID 的应用标识符”指定资源。在我已经使用 GUID 的请求中 资源=https%3A%2F%2FMyDomain.onmicrosoft.com%2Fe0a25761-XXXX-XXXX-XXXX-2aefc7e3134d
关于更改 MS 论坛线程 https://social.msdn.microsoft.com/Forums/azure/en-US/3de0c14d-808f-47c3-bdd6-c29758045de9/azure-ad-authentication-issue-aadsts90009?forum=WindowsAzureAD#cf3986f5-3422-44d1-bcb7-3a4201f68fa2(I 上的一些 GUID 的建议要求澄清)也不清楚。
所以我的问题是:我可以在客户端和服务之间共享同一个 AAD 应用程序吗?如果可以,该怎么做?
【问题讨论】:
标签: asp.net webforms azure-active-directory openid-connect adal