如何确定登录用户是否为O365管理员,能否使用(prompt = admin_consent)

时间:2017-01-22 22:51:24

标签: azure office365 azure-active-directory adal azure-ad-b2c

我想隐藏最终用户的管理门户/注册过程,并且如果用户不是管理员,还希望阻止此死端GUI出现。 (唯一可能的用户流程是回击几次......糟糕的用户体验)

  

AADSTS90093 :此操作只能由管理员执行。退出并以管理员身份登录或与您的组织管理员联系

enter image description here

要解决此UX问题,我希望用户

  1. 首先以组织管理员身份登录
  2. 登录正确的帐户后,我们会要求他们通过prompt=admin_consent属性提供同意
  3. 问题

    如何查看登录用户是否是某个组织的管理员,理想情况下,显示名称和OrgID(s)*是否为管理员。

    **我相信它可以成为多个AzureB2C或Azure AD目录的管理员。

1 个答案:

答案 0 :(得分:4)

要检查用户是否是该租户的管理员,我们可以使用Azure AD Graph REST。我们可以使用下面的REST来获取用户分配的所有角色/组。

GET: https://graph.windows.net/adfei.onmicrosoft.com/me/memberOf?api-version=1.6

如果用户被分配到租户的全局管理,我们可以获得如下所示的响应,我们可以使用值为roleTemplateId的{​​{1}}属性来检查此角色。 enter image description here

相关问题