All Products
Search
Document Center

Elastic Compute Service:AttachKeyPair

Last Updated:Mar 13, 2024

Binds an SSH key pair to one or more Linux instances.

Operation description

Take note of the following items:

  • SSH key pairs are not supported on Windows instances.
  • If an SSH key pair is bound to an instance, authentication by using the username and password is disabled for the instance.
  • If you bind an SSH key pair to an instance in the running state, you must call the RebootInstance operation to restart the instance for the key pair to take effect.
  • If you bind an SSH key pair to an instance in the stopped state, you must call the StartInstance operation to start the instance for the key pair to take effect.
  • If an instance is already bound to an SSH key pair, the new SSH key pair will replace the original one.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer.

Authorization information

There is currently no authorization information disclosed in the API.

Request parameters

ParameterTypeRequiredDescriptionExample
RegionIdstringYes

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

cn-hangzhou
KeyPairNamestringYes

The name of the SSH key pair.

testKeyPairName
InstanceIdsstringYes

The IDs of instances to which you want to bind the SSH key pair. The value can be a JSON array that consists of up to 50 instance IDs. Separate multiple instance IDs with commas (,).

["i-bp1gtjxuuvwj17zr****", "i-bp17b7zrsbjwvmfy****", … "i-bp1h6jmbefj1ytos****"]

Response parameters

ParameterTypeDescriptionExample
object
KeyPairNamestring

The name of the SSH key pair.

testKeyPairName
RequestIdstring

The request ID.

473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E
TotalCountstring

The total number of instances to which the SSH key pair is bound.

2
FailCountstring

The number of instances to which the SSH key pair fails to be bound.

0
Resultsobject []

An array that contains the results of the operation.

Codestring

The operation status code returned. 200 indicates that the operation was successful.

200
Messagestring

The operation information returned. When the value of Code is 200, the value of Message is successful.

successful
InstanceIdstring

The instance ID.

i-m5eg7be9ndloji64****
Successstring

Indicates whether the request was successful.

true

Examples

Sample success responses

JSONformat

{
  "KeyPairName": "testKeyPairName",
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E",
  "TotalCount": "2",
  "FailCount": "0",
  "Results": {
    "Result": [
      {
        "Code": "200",
        "Message": "successful",
        "InstanceId": "i-m5eg7be9ndloji64****",
        "Success": "true"
      }
    ]
  }
}

Error codes

HTTP status codeError codeError messageDescription
400InvalidKeyPairName.NotFoundThe specified KeyPairName does not exist in our records.The specified KeyPairName parameter does not exist.
400InvalidInstanceIds.ValueNotSupportedThe specified parameter InstanceIds is not valid.The specified InstanceIds parameter is invalid.
400DependencyViolation.IoOptimizeThe specified parameter InstanceIds is not valid.The specified instance ID is invalid. The specified instance is not an I/O optimized instance.
403DependencyViolation.WindowsInstanceThe instance creating is windows, cannot use ssh key pair to loginThe specified instance is a Windows instance and does not support logons using SSH key pairs.
403InstanceKeyPairLimitExceededThe specified instances are beyond the permitted range.-

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2023-07-17The Error code has changedsee changesets
Change itemChange content
Error CodesThe Error code has changed.
    delete Error Codes: 400
    delete Error Codes: 403