azure - 如何使用graph api知道当前登录的用户是否是租户管理员

标签 azure azure-active-directory microsoft-graph-api odata

我需要检查登录用户是否是租户管理员或不使用 MS graph api。我尝试了下面https://graph.microsoft.com/v1.0/me/并得到以下响应,并且以下响应中没有任何与角色相关的内容。如何判断下面的“id”是否是租户管理员?

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
    "businessPhones": [],
    "displayName": "",
    "givenName": "",
    "jobTitle": null,
    "mail": "",
    "mobilePhone": null,
    "officeLocation": "",
    "preferredLanguage": ,
    "surname": "",
    "userPrincipalName": "",
    "id": "Guid"
}

最佳答案

您可以使用获取 https://graph.microsoft.com/v1.0/me/memberOf 来实现您的要求。

如果api响应数据中的value第一项为Company Administrator,则登录用户为admin。如果不是,则该用户不是管理员(如下图所示)。 enter image description here

关于azure - 如何使用graph api知道当前登录的用户是否是租户管理员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64962874/

相关文章:

python-3.x - 在一个 Azure Function 中运行多个 python 脚本

azure - 是否可以在特定的 Azure 功能上禁用 AAD Auth?

c# - 使用 Microsoft Graph .NET 客户端库分配经理

c# - 使用无人值守的用户/密码创建 Microsoft GraphServiceClient

json - 在 Teams 中通过一个请求 (webhook) 发送多条消息

azure - 如何使用WebJob处理IoT hub消息并将其保存到SQL数据库?

azure - 如何将 Xamarin 应用连接到 SQL Azure 数据库

azure - 如何为应用程序网关后面托管的站点显示 "Down for maintenance"

azure - 我无法使用 Microsoft Graph API 在 channel 或聊天中发送 chatMessage

azure - 如何解决无法查询服务端点 api : https://management. azure.com//subscriptions/Error- 远程服务器返回错误:(403)