【问题标题】:How to get total count of Active Directory users by using of Azure Mgmt SDK fluent如何使用 Azure Mgmt SDK fluent 获取 Active Directory 用户总数
【发布时间】:2020-07-07 11:27:22
【问题描述】:

我正在使用https://www.nuget.org/packages/Microsoft.Azure.Management.Fluent 以编程方式(C# .NET-Core Web 应用程序)在 Azure 中获取资源,并尝试通过提供如下服务主体来获取资源信息......

string subscriptionId="XXX"; 
   AzureCredentials cred = new 
             AzureCredentialsFactory().FromServicePrincipal(UIConstants.ClientID, 
             UIConstants.Secret, UIConstants.Tenant,AzureEnvironment.AzureGlobalCloud);                      
            
    var azure = Azure.Configure()
                     .WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic) 
                     .Authenticate(cred) 
                     .WithSubscription(subscriptionId);

当我试图获得这样的 Active Directory 用户总数时:

int identity = azure.AccessManagement.ActiveDirectoryUsers.List().ToArray().Length;

我在代码中遇到了这个异常:

操作返回无效的状态代码“禁止”

请帮我解决上述问题..

谢谢, 图图尔

【问题讨论】:

  • 为不完整的问题道歉。异常即将到来,因为“操作返回了无效的状态代码'禁止'”。
  • 表示你没有足够的访问权限来枚举所有AAD对象(另外请注意AAD不是AD)
  • 感谢@Dai 重播。但是,我可以访问其他 azure 资源信息,例如 vm、storages。您能否详细说明并提供更多详细信息..?谢谢,
  • 仅仅因为您的访问令牌/用户有权访问虚拟机和存储并不意味着您有权访问所有用户。检查您在进行身份验证时请求的权限,并在 Azure 门户中检查您的用户权限。

标签: c# azure .net-core azure-management-api


【解决方案1】:

Azure 资源(如 VM、存储)存储在订阅下。但是AAD用户存储在目录下。

您需要为服务主体分配Directory readers 角色。

转到 Azure 门户 -> Azure Active Directory -> 角色和管理员 -> 目录阅读器 - > +添加分配,输入服务主体的客户端ID。

现在服务主体应该可以访问 Azure AD 用户了。

【讨论】:

  • 非常感谢@Allen Wu。我在添加 Azure 订阅时作为“应用程序管理员”的角色,我检查了目录阅读器中的“添加分配”按钮是否被禁用。我无法做到这一点。我需要什么角色?请帮忙
  • @AnirbanGoswami 您应该请全局管理员为您执行此操作。
  • 知道了.. 现在可以使用了.. 非常感谢!!我也尝试如下获得警报,但它遇到了异常.. int alert = azure.AlertRules.MetricAlerts.List().ToArray().Length + azure.AlertRules.ActivityLogAlerts.List().ToArray().Length;任何建议或帮助,请
  • @AnirbanGoswami 如果我的回答对您有帮助,您可以接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为已填充。)。见meta.stackexchange.com/questions/5234/…。这对其他社区成员可能是有益的。谢谢你。对于您的新问题,您可以发布带有详细异常/错误消息的新帖子。
  • 非常感谢!!它有很多帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-12
相关资源
最近更新 更多