Skip to content

7.密钥对

1. 导入密钥对

接口地址: /v1/keystore/loadAdbKey

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*,application/json

支持版本:v1.4.0

接口描述:

进行密钥对的导入

请求参数:

参数名称 参数说明 位置 是否必须 数据类型 描述
projectId 项目Id body false string 默认当前用户的默认项目
name 密钥对名称 body true string
type 类型 body true string 固定填 [ 2 ]
publicKey 公钥 body true string
remark 备注 body false string

请求示例,实际请求请替换参数值:

POST "/openapi/v1/keystore/loadAdbKey"
body:
{
    "name": "btnt1",
    "projectId": "project_admin",
    "publicKey": "QAAAAJMd+fRldygaF366zSFm26/pqYq9biFDO85oQtRBIlCHtXPxlVMVL0gAYP9JcZFqmDpdfBHi19zAl29l2+CW5Smy9py7YT3y09x/3aTaliXd4GK9LtR0UQdDtH3nR/e0dYLG3PtUP1T+t0w3t8Mcyad+Q7VvJmtDAcggKp9e0wcXSJSqUFXAP5J4TtnOtaud4RHcqKeGZ8t1f36qhlSG8NPUDr9vjrQhKoS8d803KfvF/WEzCf+5VspPtB7U0JuBsFzBtPiSrDAAkDedX//6pFehVbya58lmwkv6quXwZ9TdGzKXAkzx+KjxD421ZOoRvH6J4pDX1GLfbhJogh6j95O5h7/cZGLsOTfNQjn929660+Wtjn/v0WjjrPmM6/1WqEtpL8H4n9WmFHbtJPQBV8SSj420fEa5UlojEGWg3bWccI6wRjyyT1GFQe3R6gT6t9vdRL3EvPKFl4YgE9N9wKAsVqWzFEN6tO1YfRQSGnEf+6PQeYFB3iRNllbq8ZU3d+n5GX1LOQWqlxuG+bGbrqL4y6JPbcRdGJYQtjZuqWDdrMgrExt5Glo+v8XvSod7vaIdia79G5LL8T/u5Wi+uKHb35seJssYv4Imjw6jxiFnsqhEiQDRCHs9A2OhQMg1xT0agP4l95LoFCrLL53wr9OV4MGsbu+TcgPyC/zxFyVbRZ22ugEAAQA= root@docker-swarm-3",
    "type": 2
}

响应参数:

参数名称 参数说明 类型 描述
code 返回代码 integer(int32)
message 返回处理消息 string
result 返回数据对象 object
  jobId 任务ID string
  uuid 容器uuid string
  status 任务状态码 integer 0:失败 2:成功
  beginTime 开始时间 string
  endTime 结束时间 string
timestamp 时间戳 integer(int64)
traceId 请求处理ID string

响应示例:

{
    "message": "操作成功!",
    "code": 200,
    "result": {
        "uuid": "47b78ac884fb44ec8ac5843d54060be0",
        "jobId": "4730ee885e6845ec8a4f026fe90e7920",
        "status": 2,
        "beginTime": "2024-01-17 16:14:21",
        "endTime": "2024-01-17 16:14:22"
    },
    "timestamp": 1705479262853,
    "traceId": "C20240117161421507001"
}

2. 容器绑定密钥对

接口地址: /v1/keystore/bindInstancesAdbKey

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*,application/json

支持版本:v1.4.0

callbackUrl 由 v1.7.4 版本提供

接口描述:

对容器进行密钥对的绑定

请求参数:

参数名称 参数说明 位置 是否必须 数据类型 描述
secretKeyId 密钥对id body true string 创建密钥接口返回的 uuid
instanceUuids 容器 uuid 列表 body true list 单条或多条数据
callbackUrl 通知回调地址 body false string POST请求

请求示例,实际请求请替换参数值:

POST "/openapi/v1/keystore/bindInstancesAdbKey"
body:
{
    "instanceIds": [
        "i-236a0f378e9f109584d13c3591c42dff",
        "i-39757fe1833c29fd0ef8263b8d2f46d3"
    ],
    "secretKeyId": "9b6a005ee876312e0bdf2b7a3de2c4e6"
}

响应参数:

参数名称 参数说明 类型 描述
code 返回代码 integer(int32)
message 返回处理消息 string
result 返回数据对象 object
  jobId 任务ID string
  code 任务提交状态码 integer 任务提交成功时为200,其他为任务提交失败
  message 任务描述 string
  uuid 容器uuid string
traceId 请求处理ID string
timestamp 时间戳 integer(int64)

响应示例:

{
    "message": "操作成功!",
    "code": 200,
    "result": [
        {
            "uuid": "i-236a0f378e9f109584d13c3591c42dff",
            "jobId": "ff3144359ef54e4eb18f295b3f45f9e2",
            "code": 200,
            "message": "SUCCESS"
        },
        {
            "uuid": "i-39757fe1833c29fd0ef8263b8d2f46d3",
            "jobId": "c152d74720c64228b8b14e52e754fe1d",
            "code": 200,
            "message": "SUCCESS"
        }
    ],
    "timestamp": 1705482616364,
    "traceId": "C20240117171016046003"
}

3. 容器解绑密钥对

接口地址: /v1/keystore/unbindInstancesAdbKey

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*,application/json

支持版本:v1.4.0

callbackUrl 由 v1.7.4 版本提供

接口描述:

对容器进行密钥对的解绑

请求参数:

参数名称 参数说明 位置 是否必须 数据类型 描述
secretKeyId 密钥对 id body true string 创建密钥接口返回的 uuid
instanceUuids 容器 uuid 列表 body true list 单条或多条数据
callbackUrl 通知回调地址 body false string POST请求

请求示例,实际请求请替换参数值:

POST "/openapi/v1/keystore/unbindInstancesAdbKey"
body:
{
    "instanceIds": [
        "i-236a0f378e9f109584d13c3591c42dff",
        "i-39757fe1833c29fd0ef8263b8d2f46d3"
    ],
    "secretKeyId": "9b6a005ee876312e0bdf2b7a3de2c4e6"
}

响应参数:

参数名称 参数说明 类型 描述
code 返回代码 integer(int32)
message 返回处理消息 string
result 返回数据对象 object
  jobId 任务ID string
  code 任务提交状态码 integer 任务提交成功时为200,其他为任务提交失败
  message 任务描述 string
  uuid 容器uuid string
traceId 请求处理ID string
timestamp 时间戳 integer(int64)

响应示例:

{
    "message": "操作成功!",
    "code": 200,
    "result": [
        {
            "uuid": "i-236a0f378e9f109584d13c3591c42dff",
            "jobId": "ff3144359ef54e4eb18f295b3f45f9e2",
            "code": 200,
            "message": "SUCCESS"
        },
        {
            "uuid": "i-39757fe1833c29fd0ef8263b8d2f46d3",
            "jobId": "c152d74720c64228b8b14e52e754fe1d",
            "code": 200,
            "message": "SUCCESS"
        }
    ],
    "timestamp": 1705482616364,
    "traceId": "C20240117171016046003"
}

4. 密钥对列表

接口地址: /v1/keystore/listAdbKey

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*,application/json

支持版本:v1.4.0

接口描述:

分页获取系统内的 ADB 密钥对

请求参数:

参数名称 参数说明 位置 是否必须 数据类型 描述
projectId 项目Id body false string 默认当前用户的默认项目
pageNum 当前页码 false integer 默认 1
pageSize 当前页面数据量 false integer 默认 10

请求示例,实际请求请替换参数值:

POST "/openapi/v1/keystore/listAdbKey"
body:
{
    "pageNum": 1,
    "pageSize": 10,
    "projectId": "project_admin"
}

响应参数:

参数名称 参数说明 类型 描述
code 返回代码 integer(int32)
message 返回处理消息 string
result 返回数据对象 object
  records 当前页的数据列表 list<object>
    id 密钥对id string
    name 密钥对名称 string
    digest 摘要 string 去除冒号
    digestColon 摘要 string
    publicKey 公钥 string
    remark 备注 string
    createTime 创建时间 string
    bindInstanceNum 已绑定容器数量 integer
    createUserId 用户id long
    username 用户名 string
  total 总记录数 integer
  current 当前页码 integer
  pages 总页数 integer
  size 每页显示条数 integer
timestamp 时间戳 integer(int64)
traceId 请求处理ID string

响应示例:

{
    "message": "操作成功!",
    "code": 200,
    "result": {
        "records": [
            {
                "id": "47b78ac884fb44ec8ac5843d54060be0",
                "name": "btnt1",
                "digest": "12E1B68B6E10A550358B4538B232D1F2",
                "digestColon": "12:E1:B6:8B:6E:10:A5:50:35:8B:45:38:B2:32:D1:F2",
                "publicKey": "QAAAAJMd+fRldygaF366zSFm26/pqYq9biFDO85oQtRBIlCHtXPxlVMVL0gAYP9JcZFqmDpdfBHi19zAl29l2+CW5Smy9py7YT3y09x/3aTaliXd4GK9LtR0UQdDtH3nR/e0dYLG3PtUP1T+t0w3t8Mcyad+Q7VvJmtDAcggKp9e0wcXSJSqUFXAP5J4TtnOtaud4RHcqKeGZ8t1f36qhlSG8NPUDr9vjrQhKoS8d803KfvF/WEzCf+5VspPtB7U0JuBsFzBtPiSrDAAkDedX//6pFehVbya58lmwkv6quXwZ9TdGzKXAkzx+KjxD421ZOoRvH6J4pDX1GLfbhJogh6j95O5h7/cZGLsOTfNQjn929660+Wtjn/v0WjjrPmM6/1WqEtpL8H4n9WmFHbtJPQBV8SSj420fEa5UlojEGWg3bWccI6wRjyyT1GFQe3R6gT6t9vdRL3EvPKFl4YgE9N9wKAsVqWzFEN6tO1YfRQSGnEf+6PQeYFB3iRNllbq8ZU3d+n5GX1LOQWqlxuG+bGbrqL4y6JPbcRdGJYQtjZuqWDdrMgrExt5Glo+v8XvSod7vaIdia79G5LL8T/u5Wi+uKHb35seJssYv4Imjw6jxiFnsqhEiQDRCHs9A2OhQMg1xT0agP4l95LoFCrLL53wr9OV4MGsbu+TcgPyC/zxFyVbRZ22ugEAAQA= root@docker-swarm-3",
                "remark": null,
                "createTime": "2024-01-17 16:14:22",
                "createUserId": 7,
                "bindInstanceNum": 0,
                "username": "zlf"
            }
        ],
        "total": 1,
        "current": 1,
        "size": 10,
        "pages": 1
    },
    "timestamp": 1705482652441,
    "traceId": "C20240117171052441005"
}