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
然后,您可以在当前路径中找到名为
的证书文件。
有关详细信息,请参阅https://azure.microsoft.com/en-us/documentation/articles/xplat-cli-connect/ 。
对此主题有任何疑虑,请随时告诉我。