本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
删除密钥对
此示例说明如何使用AWS SDK for .NET删除密钥对。应用程序获取一个密钥对的名称。它会删除密钥对,然后显示所有可用的密钥对。如果您不提供命令行参数,则应用程序仅显示所有可用的密钥对。
以下各节提供了此示例的片段。此后显示了该示例的完整代码,并且可以按原样构建和运行。
删除密钥对
以下代码片段删除了密钥对。
本主题末尾的示例显示了此片段的使用情况。
// // Method to delete a key pair private static async Task DeleteKeyPair(IAmazonEC2 ec2Client, string keyName) { await ec2Client.DeleteKeyPairAsync(new DeleteKeyPairRequest{ KeyName = keyName}); Console.WriteLine($"\nKey pair {keyName} has been deleted (if it existed)."); }
显示可用的密钥对
以下代码片段显示了可用密钥对的列表。
本主题末尾的示例显示了此片段的使用情况。
// // Method to show the key pairs that are available private static async Task EnumerateKeyPairs(IAmazonEC2 ec2Client) { DescribeKeyPairsResponse response = await ec2Client.DescribeKeyPairsAsync(); Console.WriteLine("Available key pairs:"); foreach (KeyPairInfo item in response.KeyPairs) Console.WriteLine($" {item.KeyName}"); }
完整代码
本部分显示了本示例的相关参考和完整代码。
NuGet 程序包:
编程元素:
using System; using System.Threading.Tasks; using Amazon.EC2; using Amazon.EC2.Model; namespace EC2DeleteKeyPair { class Program { static async Task Main(string[] args) { // Create the EC2 client var ec2Client = new AmazonEC2Client(); if(args.Length == 1) { // Delete a key pair (if it exists) await DeleteKeyPair(ec2Client, args[0]); // Display the key pairs that are left await EnumerateKeyPairs(ec2Client); } else { Console.WriteLine("\nUsage: EC2DeleteKeyPair keypair-name"); Console.WriteLine(" keypair-name - The name of the key pair you want to delete."); Console.WriteLine("\nNo arguments specified."); Console.Write( "Do you want to see a list of the existing key pairs? ((y) or n): "); string response = Console.ReadLine(); if((string.IsNullOrEmpty(response)) || (response.ToLower() == "y")) await EnumerateKeyPairs(ec2Client); } } // // Method to delete a key pair private static async Task DeleteKeyPair(IAmazonEC2 ec2Client, string keyName) { await ec2Client.DeleteKeyPairAsync(new DeleteKeyPairRequest{ KeyName = keyName}); Console.WriteLine($"\nKey pair {keyName} has been deleted (if it existed)."); } // // Method to show the key pairs that are available private static async Task EnumerateKeyPairs(IAmazonEC2 ec2Client) { DescribeKeyPairsResponse response = await ec2Client.DescribeKeyPairsAsync(); Console.WriteLine("Available key pairs:"); foreach (KeyPairInfo item in response.KeyPairs) Console.WriteLine($" {item.KeyName}"); } } }