【问题标题】:Azure AD Authorization issue with c# codec# 代码的 Azure AD 授权问题
【发布时间】:2017-04-16 09:59:47
【问题描述】:

我想通过 C# 代码创建 Azure 资源组。

我已按照此链接创建服务主体的所有步骤进行操作,但仍然出现错误

我正在关注这些链接

https://docs.microsoft.com/en-us/azure/virtual-machines/windows/csharp https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal

下面是错误

发生 Microsoft.Rest.Azure.CloudException H结果=0x80131500 消息=对象 ID 为“XXXXXXXXXXXX”的客户端“XXXXXXXXXXXXXXX”无权在范围“/subscriptions/XXXXXXXXXX/resourcegroups/Zimmergren.ARM.ResourceGroupDemo-123”上执行操作“Microsoft.Resources/subscriptions/resourcegroups/write”。 源=Microsoft.Azure.Management.ResourceManager 堆栈跟踪: 在 Microsoft.Azure.Management.ResourceManager.ResourceGroupsOperations.d__7.MoveNext() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在 Microsoft.Azure.Management.ResourceManager.ResourceGroupsOperationsExtensions.d__5.MoveNext() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在 Microsoft.Azure.Management.ResourceManager.ResourceGroupsOperationsExtensions.CreateOrUpdate(IResourceGroupsOperations 操作,字符串 resourceGroupName,ResourceGroup 参数) 在 C:\Users\nitin\Downloads\AzureAD\AzureAD\AzureAD\Program.cs:line 48 中的 AzureAD.Program.Main(String[] args) 处

【问题讨论】:

    标签: c# azure azure-active-directory


    【解决方案1】:

    Message=对象 id 为 'XXXXXXXXXXXX' 的客户端 'XXXXXXXXXXXXXXX' 无权执行操作 'Microsoft.Resources/subscriptions/resourcegroups/write' 超出范围 '/subscriptions/XXXXXXXXXX/resourcegroups/Zimmergren.ARM.ResourceGroupDemo-123'.

    您收到此错误的原因是您创建的 Service Pricipal 无权在您的 Azure 订阅中执行 Create Resource Group 操作。

    您需要做的是为该Service Principal 分配一个角色,该角色有权执行此操作。首先,您可以将Subscription 级别的Contributor 角色分配给此Service Principal

    您可以通过Azure PortalPowerShell CmdletsCLI Tools 进行操作。您可能会发现此链接有助于通过 Azure 门户执行此操作:https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal#assign-application-to-role

    【讨论】:

    • 感谢您的回复。但是我已经添加了贡献者角色..仍然面临同样的问题
    • 您是否将此服务主体设为订阅级别的贡献者?
    • 是的。一旦我单击 Azure AD -> 查找用户 -> 由同一用户搜索 -> Azure 资源。然后我可以将我的订阅视为贡献者角色。我还能做什么?
    • 改为将角色分配给用户,您需要将相应的角色分配给服务主体,请查看GauravMantri提到的链接
    猜你喜欢
    • 2017-04-20
    • 2019-12-10
    • 1970-01-01
    • 2017-07-02
    • 1970-01-01
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 2014-10-14
    相关资源
    最近更新 更多