删除密钥对 - Amazon SDK for .NET
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

删除密钥对

此示例说明如何使用Amazon 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}"); } } }