【发布时间】:2015-10-28 04:19:03
【问题描述】:
我在活动目录中创建了一个应用程序,并在资源组级别授予了对它的访问权限,并且我能够访问资源组内的资源。但我在预览门户中没有看到任何选项可以在订阅级别授予对应用程序的访问权限。
当我运行以下代码时
ResourceManagementClient client =
testMain.createResourceManagementClient();
ResourceGroupOperations gpoperations = client.getResourceGroupsOperations();
ResourceGroup gp1 = new ResourceGroup("West US");
ResourceGroupCreateOrUpdateResult res = gpoperations.createOrUpdate("test123", gp1);
System.out.println("Resource group creation result" + res.getRequestId()+res.toString());
我收到以下异常
线程“main”中的异常 com.microsoft.windowsazure.exception.ServiceException: 授权失败:客户端“2e027029-1019-46dc-b540-cbfe4a761647” 对象 ID '2e027029-1019-46dc-b540-cbfe4a761647' 没有 执行行动的授权 'Microsoft.Resources/subscriptions/resourcegroups/write' 超出范围 '/subscriptions/88335ad5-6fe2-4532-b3d5-1af946310f85/resourcegroups/test123'。 在 com.microsoft.windowsazure.exception.ServiceException.createFromJson(ServiceException.java:292) 在 com.microsoft.azure.management.resources.ResourceGroupOperationsImpl.createOrUpdate(ResourceGroupOperationsImpl.java:495) 在 com.mycompany.resourcegroup.testMain.main(testMain.java:70)
我如何授予对应用程序的访问权限,以便它可以在我的订阅中创建和管理任何资源组?
【问题讨论】:
-
我应该在几天前回复您在其他问题中的评论(对此感到抱歉)。我在答案 (stackoverflow.com/questions/33313950/…) 中包含的屏幕截图是为订阅中的应用程序分配权限。您需要为应用程序分配“贡献者”角色。完成此操作后,您的应用程序应该能够在您的 Azure 订阅中创建资源组。 HTH。
-
您的Java代码请参考官方示例代码github.com/Azure/azure-sdk-for-java/blob/master/…,并按照验证Azure资源请求的文档msdn.microsoft.com/en-us/library/azure/dn790557.aspx#bk_portal进行操作。
-
谢谢,我能够在预览门户中找到提供订阅级别权限的选项,并且资源组创建工作正常。
标签: java azure azure-resource-manager