Binding SSH Key Pairs in Batches
Function
This interface is used to bind new SSH key pairs to specified VMs in batches.
Calling Method
For details, see Calling APIs.
Authorization Information
Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.
- If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
 - If you are using identity policy-based authorization, the following identity policy-based permissions are required. 
     
Action
Access Level
Resource Type (*: required)
Condition Key
Alias
Dependencies
kps:SSHKeyPair:bind
Write
SSHKeyPair *
-
- kps:domainKeypairs:bind
 
- ecs:cloudServers:createServers
 - ecs:cloudServers:deleteServers
 - ecs:cloudServers:showServer
 - ecs:cloudServers:attach
 - ecs:cloudServers:listServerBlockDevices
 - ecs:cloudServers:showServerBlockDevice
 - ecs:cloudServers:detachVolume
 - ecs:cloudServers:listServerInterfaces
 - ecs:cloudServers:listServersDetails
 - ecs:cloudServerFlavors:get
 - ecs:cloudServerQuotas:get
 - evs:types:get
 - evs:volumes:use
 - ims:images:get
 - vpc:subnets:list
 
 
URI
POST /v3/{project_id}/keypairs/batch-associate
| 
         Parameter  | 
       
         Mandatory  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|---|
| 
         project_id  | 
       
         Yes  | 
       
         String  | 
       
         Project ID  | 
      
Request Parameters
| 
         Parameter  | 
       
         Mandatory  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|---|
| 
         X-Auth-Token  | 
       
         Yes  | 
       
         String  | 
       
         User token. Can be obtained by calling the IAM API for obtaining the user token (the value of X-Subject-Token in the response header).  | 
      
| 
         Parameter  | 
       
         Mandatory  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|---|
| 
         batch_keypairs  | 
       
         Yes  | 
       
         Array of AssociateKeypairRequestBody objects  | 
       
         You can select a maximum of 10 ECSs to bind key pairs at a time. Constraints: Only the same key pair can be selected. The ECS is in the Running state and has not been bound to any key pair.  | 
      
| 
         Parameter  | 
       
         Mandatory  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|---|
| 
         keypair_name  | 
       
         Yes  | 
       
         String  | 
       
         SSH key pair name  | 
      
| 
         server  | 
       
         Yes  | 
       
         EcsServerInfo object  | 
       
         Information about the VM that the key pair is to be bound to  | 
      
| 
         Parameter  | 
       
         Mandatory  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|---|
| 
         id  | 
       
         Yes  | 
       
         String  | 
       
         ID of the VM that the SSH key pair is to be bound to (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  | 
       
        
 - false: SSH login is enabled on the VM.  | 
      
| 
         port  | 
       
         No  | 
       
         Long  | 
       
         SSH listening port.  | 
      
Response Parameters
Status code: 202
| 
         Parameter  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|
| 
         tasks  | 
       
         Array of TaskResponseBody objects  | 
       
         Bind key pairs in batches.  | 
      
| 
         Parameter  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|
| 
         task_id  | 
       
         String  | 
       
         ID returned when a task is delivered  | 
      
| 
         server_id  | 
       
         String  | 
       
         Specifies the ID of the bound VM.  | 
      
| 
         status  | 
       
         String  | 
       
         Indicates the delivery status of a task. SUCCESS or FAILED.  | 
      
| 
         error_code  | 
       
         String  | 
       
         Error code returned when a task fails to be delivered.  | 
      
| 
         error_msg  | 
       
         String  | 
       
         Error information returned when a task fails to be delivered.  | 
      
Status code: 400
| 
         Parameter  | 
       
         Type  | 
       
         Description  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         Error Codes  | 
      
| 
         error_msg  | 
       
         String  | 
       
         Description  | 
      
Example Requests
{
  "batch_keypairs" : [ {
    "keypair_name" : "1",
    "server" : {
      "id" : "fxxx16e3-74b8-4025-9852-1f451932c20c",
      "disable_password" : false,
      "auth" : {
        "type" : "password",
        "key" : "password"
      }
    }
  }, {
    "keypair_name" : "1",
    "server" : {
      "id" : "4xxxxfc4-b4bf-49c2-b983-a1811c9760c1",
      "disable_password" : false,
      "auth" : {
        "type" : "password",
        "key" : "password"
      }
    }
  } ]
}
  Example Responses
Status code: 202
Request succeeded.
{
  "tasks" : [ {
    "server_id" : "xxx",
    "task_id" : "xxx",
    "status" : "SUCCESS"
  }, {
    "server_id" : "xxx",
    "status" : "Failed",
    "error_code" : "xxxx",
    "error_msg" : "xxxx"
  } ]
}
   Status code: 400
Error response
{
  "error_code" : "KPS.XXX",
  "error_msg" : "XXX"
}
  Status Codes
| 
         Status Code  | 
       
         Description  | 
      
|---|---|
| 
         202  | 
       
         Request succeeded.  | 
      
| 
         400  | 
       
         Error response  | 
      
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot