Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Énumération des groupes de sécurité
Cet exemple montre comment utiliser le pour AWS SDK for .NET énumérer les groupes de sécurité. Si vous fournissez un Amazon Virtual Private Cloud ID, l'application énumère les groupes de sécurité correspondants. VPC Dans le cas contraire, l'application affiche simplement la liste de tous les groupes de sécurité disponibles.
Les sections suivantes fournissent des extraits de cet exemple. Le code complet de l'exemple est affiché ensuite et peut être créé et exécuté tel quel.
Énumérer les groupes de sécurité
L'extrait suivant répertorie vos groupes de sécurité. Il énumère tous les groupes ou les groupes d'un groupe particulier VPC s'il en est donné un.
L'exemple à la fin de cette rubrique montre cet extrait de code en cours d'utilisation.
// // Method to enumerate the security groups private static async Task EnumerateGroups(IAmazonEC2 ec2Client, string vpcID) { // A request object, in case we need it. var request = new DescribeSecurityGroupsRequest(); // Put together the properties, if needed if(!string.IsNullOrEmpty(vpcID)) { // We have a VPC ID. Find the security groups for just that VPC. Console.WriteLine($"\nGetting security groups for VPC {vpcID}...\n"); request.Filters.Add(new Filter { Name = "vpc-id", Values = new List<string>() { vpcID } }); } // Get the list of security groups DescribeSecurityGroupsResponse response = await ec2Client.DescribeSecurityGroupsAsync(request); // Display the list of security groups. foreach (SecurityGroup item in response.SecurityGroups) { Console.WriteLine("Security group: " + item.GroupId); Console.WriteLine("\tGroupId: " + item.GroupId); Console.WriteLine("\tGroupName: " + item.GroupName); Console.WriteLine("\tVpcId: " + item.VpcId); Console.WriteLine(); } }
Code complet
Cette section présente les références pertinentes et le code complet de cet exemple.
NuGet colis :
Éléments de programmation :
-
Espace de noms Amazon. EC2
Classe Amazon EC2Client
-
Espace de noms Amazon. EC2.Modèle
Classe DescribeSecurityGroupsRequest
Classe DescribeSecurityGroupsResponse
Filtre de classe
Classe SecurityGroup
using System; using System.Threading.Tasks; using System.Collections.Generic; using Amazon.EC2; using Amazon.EC2.Model; namespace EC2EnumerateSecGroups { class Program { static async Task Main(string[] args) { // Parse the command line string vpcID = string.Empty; if(args.Length == 0) { Console.WriteLine("\nEC2EnumerateSecGroups [vpc_id]"); Console.WriteLine(" vpc_id - The ID of the VPC for which you want to see security groups."); Console.WriteLine("\nSince you specified no arguments, showing all available security groups."); } else { vpcID = args[0]; } if(vpcID.StartsWith("vpc-") || string.IsNullOrEmpty(vpcID)) { // Create an EC2 client object var ec2Client = new AmazonEC2Client(); // Enumerate the security groups await EnumerateGroups(ec2Client, vpcID); } else { Console.WriteLine("Could not find a valid VPC ID in the command-line arguments:"); Console.WriteLine($"{args[0]}"); } } // // Method to enumerate the security groups private static async Task EnumerateGroups(IAmazonEC2 ec2Client, string vpcID) { // A request object, in case we need it. var request = new DescribeSecurityGroupsRequest(); // Put together the properties, if needed if(!string.IsNullOrEmpty(vpcID)) { // We have a VPC ID. Find the security groups for just that VPC. Console.WriteLine($"\nGetting security groups for VPC {vpcID}...\n"); request.Filters.Add(new Filter { Name = "vpc-id", Values = new List<string>() { vpcID } }); } // Get the list of security groups DescribeSecurityGroupsResponse response = await ec2Client.DescribeSecurityGroupsAsync(request); // Display the list of security groups. foreach (SecurityGroup item in response.SecurityGroups) { Console.WriteLine("Security group: " + item.GroupId); Console.WriteLine("\tGroupId: " + item.GroupId); Console.WriteLine("\tGroupName: " + item.GroupName); Console.WriteLine("\tVpcId: " + item.VpcId); Console.WriteLine(); } } } }
Considérations supplémentaires
-
Notez que le VPC filtre est construit avec la
Name
partie de la paire nom-valeur définie sur « vpc-id ». Ce nom provient de la description de laFilters
propriété de la DescribeSecurityGroupsRequestclasse.
-
Pour obtenir la liste complète de vos groupes de sécurité, vous pouvez également utiliser DescribeSecurityGroupsAsync sans paramètres.
-
Vous pouvez vérifier les résultats en consultant la liste des groupes de sécurité dans la EC2console Amazon
.