Create a Key Pair - Amazon SDK for Java 1.x
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

The Amazon SDK for Java 1.x has entered maintenance mode as of July 31, 2024, and will reach end-of-support on December 31, 2025. We recommend that you migrate to the Amazon SDK for Java 2.x to continue receiving new features, availability improvements, and security updates.

Create a Key Pair

You must specify a key pair when you launch an EC2 instance and then specify the private key of the key pair when you connect to the instance. You can create a key pair or use an existing key pair that you’ve used when launching other instances. For more information, see Amazon EC2 Key Pairs in the Amazon EC2 User Guide for Linux Instances.

  1. Create and initialize a CreateKeyPairRequest instance. Use the withKeyName method to set the key pair name, as follows:

    CreateKeyPairRequest createKeyPairRequest = new CreateKeyPairRequest(); createKeyPairRequest.withKeyName(keyName);
    Important

    Key pair names must be unique. If you attempt to create a key pair with the same key name as an existing key pair, you’ll get an exception.

  2. Pass the request object to the createKeyPair method. The method returns a CreateKeyPairResult instance, as follows:

    CreateKeyPairResult createKeyPairResult = amazonEC2Client.createKeyPair(createKeyPairRequest);
  3. Call the result object’s getKeyPair method to obtain a KeyPair object. Call the KeyPair object’s getKeyMaterial method to obtain the unencrypted PEM-encoded private key, as follows:

    KeyPair keyPair = new KeyPair(); keyPair = createKeyPairResult.getKeyPair(); String privateKey = keyPair.getKeyMaterial();