2 回答
![?](http://img1.sycdn.imooc.com/545862e700016daa02200220-100-100.jpg)
TA贡献1789条经验 获得超10个赞
你能详细说明一下你所说的实例是什么意思吗?这是您要找的吗?
获取订阅中的所有网络安全组:https : //docs.microsoft.com/en-us/rest/api/virtualnetwork/networksecuritygroups/listall
获取资源组中的所有网络安全组:https : //docs.microsoft.com/en-us/rest/api/virtualnetwork/networksecuritygroups/list
![?](http://img1.sycdn.imooc.com/5333a2320001acdd02000200-100-100.jpg)
TA贡献1818条经验 获得超3个赞
我们可以使用Azure Java SDK做到这一点。有关身份验证,请参阅使用 Java 的 Azure 管理库进行身份验证。
以下是演示代码,我在我这边测试过。
String client = "clientId";
String tenant = "tenantId";
String key = "scret key";
ApplicationTokenCredentials credentials = new ApplicationTokenCredentials(client,
tenant,
key,
AzureEnvironment.AZURE);
Azure azure = Azure.configure().authenticate(credentials).withDefaultSubscription();
List <VirtualMachine> vmlist = azure.virtualMachines().list();
List<String> networkInterfaceList = new ArrayList<String>();
PagedList<NetworkSecurityGroup> list = azure.networkSecurityGroups().listByResourceGroup("resourceGroupName");
//add the networkinterface to the list
for (NetworkSecurityGroup nsg :list
) {
for (String networkInterface :nsg.networkInterfaceIds()
) {
networkInterfaceList.add(networkInterface);
}
};
List<VirtualMachine> virtualMachineList = new ArrayList<VirtualMachine>();
for (VirtualMachine vm :vmlist
) {
for (String vmInterface:vm.networkInterfaceIds()
) {
if(networkInterfaceList.contains(vmInterface))
{
if(!virtualMachineList.contains(vm))
{
virtualMachineList.add(vm);
System.out.println(vm.computerName());
}
}
}
}
添加回答
举报