获取.NET Azure Active Directory组中的所有者

时间:2017-06-29 16:10:33

标签: azure azure-active-directory azure-ad-graph-api

我有一个电子邮件帐户,这是一个安全组,其中的成员很少。我想弄清楚该群组所有者的电子邮件地址,但我无法弄明白。

以下是源代码

    ActiveDirectoryClient activeDirectoryClient = new ActiveDirectoryClient(serviceRoot, async () => await Task.FromResult(accessToken));
    var group = (Group)await activeDirectoryClient.Groups.Where(u => u.Mail == "email@domaincom").ExecuteSingleAsync();.
    var groupFetcher = activeDirectoryClient.Groups.GetByObjectId(group.ObjectId);
    var membersResult = groupFetcher.Members.ExecuteAsync().Result;
    var ownerResult = groupFetcher.Owners.ExecuteAsync().Result;

执行此代码后,我可以看到该组的成员,但是 hy ownerResult变量始终为空如何检索群组的所有者?

1 个答案:

答案 0 :(得分:2)

我正在使用下面的代码进行测试(Microsoft.Azure.ActiveDirectory.GraphClient版本为2.1.1),这对我来说效果很好。请确保该组已分配所有者。

var group = (Group) client.Groups.Where(u => u.Mail == "email@domain.onmicrosoft.com").ExecuteSingleAsync().Result;
var groupFetcher = client.Groups.GetByObjectId(group.ObjectId);
//var membersResult = groupFetcher.Members.ExecuteAsync().Result;
var ownerResult = groupFetcher.Owners.ExecuteAsync().Result;
foreach (var owner in ownerResult.CurrentPage)
    Console.WriteLine(((Microsoft.Azure.ActiveDirectory.GraphClient.User)owner).DisplayName);

您可以从Azure门户网站查看,如下图所示: enter image description here

如果所有者存在,我还建议您使用Fiddler捕获请求,以检查是否需要响应。