Java 在active directory中找不到Azure VM
我正在通过在Active Directory中创建的应用程序访问VM。此应用程序可以完全访问我尝试访问的所有资源 问题是找不到虚拟机。我可以访问虚拟机的资源组,但Azure报告内部没有虚拟机。知道为什么会这样吗 我的代码:Java 在active directory中找不到Azure VM,java,azure,azure-active-directory,azure-resource-manager,Java,Azure,Azure Active Directory,Azure Resource Manager,我正在通过在Active Directory中创建的应用程序访问VM。此应用程序可以完全访问我尝试访问的所有资源 问题是找不到虚拟机。我可以访问虚拟机的资源组,但Azure报告内部没有虚拟机。知道为什么会这样吗 我的代码: ApplicationTokenCredentials credentials = new ApplicationTokenCredentials(client, tenant, key, AzureEnvironment.AZURE); Azure azure = Azur
ApplicationTokenCredentials credentials = new ApplicationTokenCredentials(client, tenant, key, AzureEnvironment.AZURE);
Azure azure = Azure.configure()
.withLogLevel(LogLevel.NONE)
.authenticate(credentials)
.withSubscription(subscription);
VirtualMachine vm = azure.virtualMachines().getByResourceGroup(resourceGroup, vmName);
vm.start();
您是否确保您的订阅是正确的?我建议您打印您的订阅并检查它。下面的代码适合我
ApplicationTokenCredentials credentials = new ApplicationTokenCredentials(client, tenant, key, AzureEnvironment.AZURE);
Azure.Authenticated azureAuth = Azure.authenticate(credentials);
Azure azure = azureAuth.withSubscription(subscriptionid);
System.out.println("Selected subscription: " + azure.subscriptionId());
VirtualMachine vm = azure.virtualMachines().getByResourceGroup(resourceGroup, vmName);
System.out.println("Now VM is"+vm);
vm.start();
更新:
请确保您的虚拟机是ARM模式虚拟机,代码无法列出经典虚拟机。您是否确保您的订阅正确?我建议您打印您的订阅并检查它。下面的代码适合我
ApplicationTokenCredentials credentials = new ApplicationTokenCredentials(client, tenant, key, AzureEnvironment.AZURE);
Azure.Authenticated azureAuth = Azure.authenticate(credentials);
Azure azure = azureAuth.withSubscription(subscriptionid);
System.out.println("Selected subscription: " + azure.subscriptionId());
VirtualMachine vm = azure.virtualMachines().getByResourceGroup(resourceGroup, vmName);
System.out.println("Now VM is"+vm);
vm.start();
更新:
请确保您的虚拟机是ARM模式虚拟机,代码无法列出经典虚拟机。请确保您的虚拟机是在资源组中创建的,并且订阅正确。您可以在Azure Portal上检查它们。请确保您的VM是在资源组中创建的,并且订阅正确。您可以在Azure Portal上检查它们。vm位于正确的资源组中。我发现问题是因为vm是在ASM中创建的,而我使用的SDK仅适用于ARM vm。vm位于正确的资源组中。我发现问题是因为虚拟机是在ASM中创建的,而我使用的SDK只适用于ARM虚拟机。