Получить экземпляры из группы безопасности Azure SDK
Я хочу перечислить все свои группы безопасности, но я хочу проверить, есть ли экземпляры в какой-либо группе безопасности или нет, если да, я хочу получить эти экземпляры. Как я могу сделать это в коде? Я просто строю функцию, чтобы получить все группы безопасности.
@Override
public List<LocalSecurityGroupV2> getSecurityGroups(final List<String> securityGroupIds) {
return securityGroupIds
.stream()
.map(this::findSecurityGroupById)
.collect(Collectors.toList());
}
2 ответа
Мы могли бы сделать это с помощью Azure Java SDK. Для проверки подлинности обратитесь к разделу Аутентификация с помощью библиотек управления Azure для Java.
Ниже приведен демонстрационный код, который я тестировал на своей стороне.
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());
}
}
}
}
Не могли бы вы уточнить, что вы подразумеваете под примерами? Это вы ищете?
Получает все группы безопасности сети в подписке: https://docs.microsoft.com/en-us/rest/api/virtualnetwork/networksecuritygroups/listall
Получает все группы безопасности сети в группе ресурсов: https://docs.microsoft.com/en-us/rest/api/virtualnetwork/networksecuritygroups/list