You can call this operation to import the public key of an RSA-encrypted key pair that is generated by a third-party tool. After the key pair is imported, the public key is stored in Alibaba Cloud. You must store the private key on your own and keep it confidential.

Description

When you call this operation, take note of the following items:

  • A maximum of 500 key pairs can be created in each region.
  • The key pair to be imported must support one of the following encryption methods:
    • rsa
    • dsa
    • ssh-rsa
    • ssh-dss
    • ecdsa
    • ssh-rsa-cert-v00@openssh.com
    • ssh-dss-cert-v00@openssh.com
    • ssh-rsa-cert-v01@openssh.com
    • ssh-dss-cert-v01@openssh.com
    • ecdsa-sha2-nistp256-cert-v01@openssh.com
    • ecdsa-sha2-nistp384-cert-v01@openssh.com
    • ecdsa-sha2-nistp521-cert-v01@openssh.com

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes ImportKeyPair

The operation that you want to perform. Set the value to ImportKeyPair.

KeyPairName String Yes testKeyPairName

The name of the key pair. The name must be globally unique. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).

PublicKeyBody String Yes ABC1234567

The public key of the key pair.

RegionId String Yes cn-hangzhou

The region ID of the key pair. You can call the DescribeRegions operation to query the most recent region list.

Tag.N.Key String No TestKey

The key of tag N to be bound to the key pair. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 128 characters in length. It cannot start with acs: or aliyun, or contain http:// or https://.

Tag.N.Value String No TestValue

The value of tag N to be bound to the key pair. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot start with acs: or contain http:// or https://.

ResourceGroupId String No rg-bp67acfmxazb4p****

The ID of the resource group to which to assign the key pair.

Response parameters

Parameter Type Example Description
KeyPairFingerPrint String 89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**

The fingerprint of the key pair. The message-digest algorithm 5 (MD5) is used based on the public key fingerprint format defined in RFC 4716.

KeyPairName String testKeyPairName

The name of the key pair.

RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

The ID of the request.

Examples

Sample requests

https://ecs.aliyuncs.com/?Action=ImportKeyPair
&RegionId=cn-qingdao
&PublicKeyBody=ABC1234567
&KeyPairName=testKeyPairName
&<Common request parameters>

Sample success responses

XML format

<ImportKeyPairResponse>
      <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>
      <KeyPairName>testKeyPairName</KeyPairName>
      <KeyPairFingerPrint>89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**</KeyPairFingerPrint>
</ImportKeyPairResponse>

JSON format

{
    "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E",
    "KeyPairName": "testKeyPairName",
    "KeyPairFingerPrint": "89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**"
}

Error codes

HTTP status code Error code Error message Description
400 InvalidKeyPairName.Malformed Specified Key Pair name is not valid. The error message returned because the specified KeyPairName parameter is invalid.
403 QuotaExceed.KeyPair The key pair quota exceeds. The error message returned because the maximum number of key pairs has been reached.
400 InvalidPublicKeyBody.Malformed The PublicKeyBody format is not supported. The error message returned because the public key format is not supported.
400 MissingParameter The input parameter "PublicKeyBody" that is mandatory for processing this request is not supplied. The error message returned because the required PublicKeyBody parameter is not specified.
400 KeyPair.AlreadyExist The key pair already exist. The error message returned because a key pair with the same name already exists. Key pair names must be unique.
500 InternalError The request processing has failed due to some unknown error. The error message returned because an internal error has occurred. Try again later. If the problem persists, submit a ticket.
404 InvalidResourceGroup.NotFound The ResourceGroup provided does not exist in our records. The error message returned because the specified ResourceGroupId parameter does not exist.

For a list of error codes, visit the API Error Center.