Updated on 2022-10-27 GMT+08:00

Bind an SSH key pair

Function

This API is used to bind an SSH key pair to a specified VM. (The private key of the SSH key pair for the VM is required if you want to replace the key pair, but not required if you want to reset the key pair.)

URI

POST /v3/{project_id}/keypairs/associate

Table 1 Path parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token. The token can be obtained by calling the IAM API (value of X-Subject-Token in the response header).

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

keypair_name

Yes

String

SSH key pair name.

server

Yes

EcsServerInfo object

Information about the VM to which the key pair is to be bound.

Table 4 EcsServerInfo

Parameter

Mandatory

Type

Description

id

Yes

String

ID of the VM to which the SSH key pair is to be bound (in order to replace or reset the original key pair).

auth

No

Auth object

(Optional) Authentication type. This parameter is required for key pair replacement but not required for key pair reset.

disable_password

No

Boolean

  • true: SSH login is disabled on the VM.

  • false: SSH login is enabled on the VM.

Table 5 Auth

Parameter

Mandatory

Type

Description

type

No

String

An enumerated value.

key

No

String

  • If type is set to password, this parameter indicates the password.

  • If type is set to keypair, this parameter indicates the private key.

Response Parameters

Status code: 200

Table 6 Response body parameters

Parameter

Type

Description

task_id

String

ID returned when a task is successfully delivered.

Status code: 400

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Example Requests

  • {
      "keypair_name" : "newkeypair",
      "server" : {
        "id" : "d76baba7-ef09-40a2-87ff-3eafec0696e7",
        "authentication" : {
          "type" : "keypair",
          "key" : "-----BEGINRSAPRIVATEKEY-----\nM..."
        }
      }
    }
  • {
      "keypair_name" : "newkeypair",
      "server" : {
        "id" : "d76baba7-ef09-40a2-87ff-3eafec0696e7"
      }
    }

Example Responses

Status code: 200

OK.

{
  "task_id" : "aee8d2fe-5484-4753-9177-5a38dc15546c"
}

Status code: 400

Error occurred.

{
  "error_code" : "KPS.XXX",
  "error_msg" : "XXX"
}

Status Codes

Status Code

Description

200

OK.

400

Error occurred.

Error Codes

See Error Codes.