更新时间:2022-08-16 GMT+08:00

创建DDM帐号

功能介绍

DDM帐号用于连接和管理逻辑库。一个DDM实例最多能创建100个DDM帐号,一个DDM帐号可以关联多个逻辑库。

接口约束

无。

URI

POST /v1/{project_id}/instances/{instance_id}/users

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一region下的project ID。

instance_id

String

DDM实例ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

users

Array of CreateDDMUsersInfo objects

DDM实例帐号相关信息的集合。

表4 创建DDM帐号

参数

是否必选

参数类型

描述

name

String

DDM实例帐号名称,命名要求如下。

  • 长度为6-32个字符。
  • 必须以字母开头。
  • 可以包含字母,数字、下划线,不能包含其它特殊字符。

最小长度:6

最大长度:32

password

String

DDM实例帐号密码。

base_authority

Array of strings

DDM实例帐号的基础权限。

取值为:CREATE、DROP、ALTER、INDEX、INSERT、DELETE、UPDATE、SELECT

枚举值:

  • CREATE
  • DROP
  • ALTER
  • INDEX
  • INSERT
  • DELETE
  • UPDATE
  • SELECT

extend_authority

Array of strings

DDM实例帐号的扩展权限,默认值为空。

取值范围为:fulltableDelete、fulltableSelect、fulltableUpdate。

说明: 权限配置应该遵循如下原则:

请至少选择一个基础权限,且扩展权限对应的基础权限必须选择,对应关系如下:

  • “fulltableSelect”对应“SELECT”
  • “fulltableDelete”对应“DELETE”
  • “fulltableUpdate”对应“UPDATE”

枚举值:

  • fulltableSelect
  • fulltableDelete
  • fulltableUpdate

description

String

DDM实例帐号的描述,最大长度不能超过256。默认值为空。

最大长度:256

databases

Array of CreateDDMUsersDatabases objects

关联的逻辑库的集合。 databases字段可以省略,即创建用户时可以不关联逻辑库。

表5 创建DDM帐号关联逻辑库

参数

是否必选

参数类型

描述

name

String

关联逻辑库名称。

响应参数

状态码: 200

表6 响应Body参数

参数

参数类型

描述

users

Array of CreateDDMUsersDetailResponses objects

DDM实例帐号相关信息的集合。

表7 创建DDM帐号

参数

参数类型

描述

name

String

DDM实例帐号名称。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

errCode

String

业务错误码

externalMessage

String

错误信息

状态码: 500

表9 响应Body参数

参数

参数类型

描述

errCode

String

业务错误码

externalMessage

String

错误信息

请求示例

POST https://{endpoint}/v1/{project_id}/instances/{instance_id}/users

{
  "users" : [ {
    "name" : "DDMuser1",
    "password" : "Axejs@98a",
    "base_authority" : [ "CREATE", "DROP", "ALTER", "INDEX", "INSERT", "DELETE", "UPDATE", "SELECT" ],
    "extend_authority" : [ "fulltableSelect", "fulltableDelete", "fulltableUpdate" ],
    "description" : "",
    "databases" : [ {
      "name" : "DDMdb1"
    } ]
  } ]
}

响应示例

状态码: 200

OK

{
  "users" : [ {
    "name" : "DDMuser1"
  } ]
}

状态码: 400

bad request

{
  "externalMessage" : "Parameter error.",
  "errCode" : "DBS.280001"
}

状态码: 500

server error

{
  "externalMessage" : "Parameter error.",
  "errCode" : "DBS.280001"
}

状态码

请参见状态码

错误码

请参见错误码