我们有一个多租户单页应用(和后端),它使用Azure AD对用户进行身份验证。我们希望对客户的Azure AD进行查询以检索群组,但将其作为客户(租户)的选择加入行为。其背后的原因是,并非所有客户都需要这些功能,而是不会让我们不必要地访问他们的AAD。
是否有某种方法可以使用Azure AD实现此功能?
我一直在尝试使用资源ID和范围对不同的OAuth /授权调用进行测试,但大多数情况下我最终会使用" AADSTS65001:用户或管理员未同意使用该应用程序ID''。发送此用户和资源的交互式授权请求。"错误。配置Web应用程序或后端以获得权限肯定会修复错误,但这也将使应用程序的所有用户都必须批准它。
是否有办法使用授权/同意API按需请求访问新应用程序?
一个应该工作的丑陋的解决办法是拥有2个客户端ID和2个具有不同权限的后端ID,但ADAL.js似乎并不适合使用多个客户端ID(它的工作原理)单身人士,首发)。此外,应用程序权限当然也可以使用,但我不确定搜索组需要多少。
答案 0 :(得分:1)
是否有办法使用授权/同意API来请求访问权限 一个新的按需应用程序?
请查看Azure AD v2.0
。使用incremental & dynamic consent model
,虽然我不确定这个特定功能(管理组)是否可用,但仍可以这样做。
我最近与Azure AD团队成员就此进行了讨论(因为我们也遇到了同样的问题),他建议我们看看这个。
基本上,Azure AD v2.0中的工作方式是您从基本权限集开始(如登录,阅读配置文件等)。然后,当某个租户需要特定权限时,您基本上要求他们仅在当时将这些权限授予您的应用程序。这意味着您的应用程序中的不同用户已授予您的应用程序不同的权限。