MissingSubscriptionRegistration:订阅未注册使用命名空间'Microsoft.Storage'

时间:2015-10-13 20:11:10

标签: java azure azure-storage azure-virtual-machine azure-java-sdk

尝试从Azure-Java-SDK

运行CreateVMExample.java
   VirtualMachine vm = ComputeHelper.createVM(
                        resourceManagementClient, computeManagementClient, networkResourceProviderClient, storageManagementClient,
                        context, "javaSampleVM", "Foo12", "BaR@123rgababaab")
                        .getVirtualMachine();

                System.out.println(vm.getName() + " is created");

并收到以下错误。

Exception in thread "main" java.util.concurrent.ExecutionException: com.microsoft.windowsazure.exception.ServiceException: MissingSubscriptionRegistration: The subscription is not registered to use namespace 'Microsoft.Storage'.
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:188)
    at com.microsoft.azure.management.storage.StorageAccountOperationsImpl.create(StorageAccountOperationsImpl.java:737)
    at com.microsoft.azure.utility.StorageHelper.createStorageAccount(StorageHelper.java:71)
    at com.microsoft.azure.utility.StorageHelper.createStorageAccount(StorageHelper.java:53)
    at com.microsoft.azure.utility.ComputeHelper.createVM(ComputeHelper.java:246)
    at com.microsoft.azure.utility.ComputeHelper.createVM(ComputeHelper.java:213)
    at com.microsoft.azure.auth.CreateVMExample.main(CreateVMExample.java:74)

由于我是AWS的新手,无法理解从哪里开始。看到同样的错误泄漏到Azure PS。但没有多大帮助。请提出建议。我正在使用Azure Active Directory身份验证。感谢。

2 个答案:

答案 0 :(得分:1)

您引用的存储帐户名是否可能是旧存储帐户?如果你去portal.azure.com存储帐户将分为两类:存储帐户(经典)和存储帐户。如果您引用的帐户位于经典列表中,请尝试创建新的存储帐户,然后引用该帐户吗?

答案 1 :(得分:1)

此问题是由Azure AD身份验证引起的。 文档"验证Azure资源管理请求"(https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx)表示"您使用Azure资源管理器对资源执行的所有任务都必须使用Azure Active Directory进行身份验证。 &#34 ;.因此,使用类ComputeHelper的Azure资源管理API必须使用AAD进行身份验证。

首先,您需要使用管理门户在Azure AD上设置身份验证。有关详细信息,请参阅https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx#bk_portalhttps://azure.microsoft.com/en-us/documentation/articles/resource-group-create-service-principal-portal/

有一个示例项目(https://github.com/Azure-Samples/active-directory-java-graphapi-web)用于在Java中调用Azure AD,它可以为您提供帮助。