我试图通过调用Graph API一次来查询用户的角色(目录角色)(我有ObjectId和用户的UPN)!
我能够查询用户然后使用该用户获取DirectoryRoles,但出于性能原因,我需要删除第一个GET用户调用。
我看过这个端点,但这似乎适用于安全组而不是目录角色(如公司管理员等)
https://graph.windows.net/myorganization/{resource_collection}/{resource_id}/checkMemberGroups?api-version
还有端点返回所有组(目录角色和组),但对于大租户来说,它将无法正常运行,因为它返回我不需要的数据。
https://graph.windows.net/myorganization/{resource_collection}/{resource_id}/getMemberObjects?api-version
任何想法?
答案 0 :(得分:1)
我能够使用2.1.0 .Net Azure Graph SDK解决如何在一次通话中获取用户及其会员资格的问题:
以下是执行此操作的代码:
var client = _tokenHelper.GetActiveDirectoryClient(user.User.DomainName);
var memberof = await client.Users.GetByObjectId(user.User.UserKey).MemberOf.ExecuteAsync();