azure免费试用帐户无法通过java sdk进行身份validation

我使用简单的java sdk代码来validationazure基本连接。 我已在azure色门户网站的设置中上传了管理证书。 但是每当我尝试进行身份validation时,我都会收到以下exception:

线程“main”中的exceptioncom.microsoft.windowsazure.exception.ServiceException:ForbiddenError:服务器无法validation请求。 validation证书是否有效并与此订阅相关联。 at com.microsoft.windowsazure.exception.ServiceException.createFromXml(ServiceException.java:206)at com.microsoft.windowsazure.management.LocationOperationsImpl.list(LocationOperationsImpl.java:162)at com.mycompany.testproj1.test1.main(test1)的.java:46)

当我尝试使用azure cli下载证书时

$ azure帐户证书导出信息:执行命令帐户证书导出错误:此订阅不使用管理证书信息:错误信息已记录到/Users/tt/.azure/azure.err错误:帐户证书导出命令失败

这与我使用免费试用有关吗?

这些问题与免费试用无关,请参阅https://azure.microsoft.com/en-us/pricing/free-trial-faq/的第一个常见问题解答。

在此处输入图像描述

有关Azure订阅的限制,请参阅https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/ 。

在Azure门户设置中上载管理证书后,似乎无法使用管理证书成功管理Azure服务。

Java中有部分示例代码用于validationAzure服务管理。

import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import com.microsoft.windowsazure.Configuration; import com.microsoft.windowsazure.core.utils.KeyStoreType; import com.microsoft.windowsazure.management.configuration.ManagementConfiguration; import com.microsoft.windowsazure.management.compute.ComputeManagementService; import com.microsoft.windowsazure.management.compute.ComputeManagementClient; import com.microsoft.windowsazure.management.network.NetworkManagementService; import com.microsoft.windowsazure.management.network.NetworkManagementClient; String uri = "https://management.core.windows.net/"; String subscriptionId = ""; String keyStoreLocation = ""; String keyStorePassword = ""; Configuration config = ManagementConfiguration.configure( new URI(uri), subscriptionId, keyStoreLocation, // the file path to the JKS keyStorePassword, // the password for the JKS KeyStoreType.jks // flags that I'm using a JKS keystore ); // For Compute Management ComputeManagementClient computeManagementClient = ComputeManagementService.create(config); //For Networing Management NetworkManagementClient client = NetworkManagementService.create(config); // Others like above 

该代码依赖于下面pom.xml中的一些maven存储库,您需要在项目中添加这些存储库。

  com.microsoft.azure azure-svc-mgmt 0.8.3   com.microsoft.azure azure-svc-mgmt-compute 0.8.3   com.microsoft.azure azure-svc-mgmt-network 0.8.3  

对于Azure CLI的错误,我认为您错过了一些必要的步骤,如下所示。

首先,使用命令login和Azure用户名和密码连接Azure订阅。

 $ azure login -u  

其次,切换Azure服务管理模式以获取导出证书。

 $ azure config mode asm 

最后,下载certiticate。

 $ azure account cert export 

然后,您可以在当前路径中找到名为.pem的证书文件。

有关详细信息,请参阅https://azure.microsoft.com/en-us/documentation/articles/xplat-cli-connect/ 。

对此主题有任何疑虑,请随时告诉我。