我们有一个面向用户的 Web 应用程序和一个中间层 ASP.NET Core Web api,目前在 Azure Ad v1.0 端点上使用 OAuth 2.0 代表流 (OBO),仅对 AAD 帐户进行身份验证。我们还需要对 MSA(个人)帐户进行身份验证,因此将我们的解决方案迁移到 Azure AD v2.0 端点。
The 官方样本 https://github.com/Azure-Samples/active-directory-dotnet-native-aspnetcore-v2/tree/master/2.%20Web%20API%20now%20calls%20Microsoft%20Graph仅验证 AAD 帐户并显示:
"目前的限制:
目前,代表流程不适用于 Microsoft 个人帐户。”
有人可以证实这一点吗?
如果是这种情况,为 Microsoft 个人帐户和工作或学校帐户获取服务到服务令牌的替代方法是什么?
正如文档所述,常见的 OBO 模式不能用于同时登录个人和工作或学校帐户的客户。一般准则建议,如果可能,将中间层应用程序和前端 UI 合并到一个 AAD v2.0 应用程序中。当然,这只能在您有一个映射到中间层的前端时才能完成,并且不适用于多个前端共享同一中间层的情况。
This link https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#consent-for-azure-ad--microsoft-account-applications提供了有关这些限制的原因以及我上面描述的解决方法的信息。不幸的是,合并这两个应用程序是唯一的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)