我已经设置了一个多租户身份验证 Web 应用程序,该应用程序使用 openid 通过/common 颁发者。我可以从不同的租户登录。但是,以这种方式进行身份验证时,不会在 id 令牌中发送用户角色声明。
我用过 https://learn.microsoft.com/en-us/azure/active-directory/develop/howto-convert-app-to-be-multi-tenant 和 https://learn.microsoft.com/en-us/azure/active-directory/develop/howto-add-app-roles-in-azure-ad-apps 作为完成此操作的主要参考,但在尝试执行所有步骤后,角色仍然没有显示。
如果我将应用程序切换为使用单个租户,并使用特定于租户的颁发者,则角色确实如我预期的那样显示在声明令牌中,因此我认为在设置角色时这不是配置问题。如何在使用/common 时显示角色,或者在执行多租户应用程序时是否需要完全不同的方法来访问角色?
我假设你在清单中设置了应用角色,并将用户分配给你在清单中放置的应用角色之一? 并与该用户一起测试? 因为它应该工作。 在这里阅读:关于它的非常好的文章。 https://goodworkaround.com/2019/12/06/building-a-multi-tenant-azure-ad-application-with-roles/