适用于 Java 的 Amazon SDK 1.x 版本自 2024 年 7 月 31 日起已进入维护模式,并将于 2025 年 12 月 31 日终止支持
使用 Amazon EC2 密钥对
创建密钥对
要创建密钥对,请使用包含密钥名称的 CreateKeyPairRequest 调用 AmazonEC2Client 的 createKeyPair 方法。
导入。
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.CreateKeyPairRequest; import com.amazonaws.services.ec2.model.CreateKeyPairResult;
代码
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); CreateKeyPairRequest request = new CreateKeyPairRequest() .withKeyName(key_name); CreateKeyPairResult response = ec2.createKeyPair(request);
请参阅完整示例
描述密钥对
要列出密钥对或获取相关信息,请调用 AmazonEC2Client 的 describeKeyPairs 方法。它返回 DescribeKeyPairsResult,您可以通过调用其 getKeyPairs 方法来访问密钥对的列表,该方法返回一个 KeyPairInfo 对象的列表。
导入。
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DescribeKeyPairsResult; import com.amazonaws.services.ec2.model.KeyPairInfo;
代码
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); DescribeKeyPairsResult response = ec2.describeKeyPairs(); for(KeyPairInfo key_pair : response.getKeyPairs()) { System.out.printf( "Found key pair with name %s " + "and fingerprint %s", key_pair.getKeyName(), key_pair.getKeyFingerprint()); }
请参阅完整示例
删除密钥对
要删除密钥对,请调用 AmazonEC2Client 的 deleteKeyPair 方法,将其传递给一个包含要删除密钥对名称的 DeleteKeyPairRequest。
导入。
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DeleteKeyPairRequest; import com.amazonaws.services.ec2.model.DeleteKeyPairResult;
代码
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); DeleteKeyPairRequest request = new DeleteKeyPairRequest() .withKeyName(key_name); DeleteKeyPairResult response = ec2.deleteKeyPair(request);
请参阅完整示例
更多信息
-
《Amazon EC2 用户指南(适用于 Linux 实例)》中的 Amazon EC2 密钥对
-
《Amazon EC2 API Reference》中的 CreateKeyPair
-
《Amazon EC2 API Reference》中的 DescribeKeyPairs
-
《Amazon EC2 API Reference》中的 DeleteKeyPair