账号管理接口说明

创建账号

在某个主实例下创建一个新的账号。

说明

  • 实例状态为Available,实例必须是主实例。
  • 没有超出实例最大账号数量。
  • 若实例的数据库引擎为PostgreSQL,则只允许创建Super账号。其它账号和数据库操作通过这个Super账号来管理。
  • 若实例的数据库引擎为MySQL,则允许创建任意类型的账号。
  • 若实例的数据库引擎为SQLServer,则只允许创建Common账号。

请求结构

POST /v{version}/instance/{instanceId}/account?clientToken={clientToken}  HTTP/1.1
HOST: rds.bj.baidubce.com
Authorization: authorization string

{
    "accountName":accountName,
    "password" : password,
    "accountType" : accountType,
    "databasePrivileges": databasePrivileges,
    "desc" : desc,
    "type" : type
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必须 参数位置 描述
version string URL参数 API 版本号
instanceId string URL参数 指定实例Id
clientToken string Query参数 幂等性Token,是一个长度不超过64位的ASCII字符串。
accountName string RequestBody参数 账号名称,不能为保留关键字
password string RequestBody参数 账号的密码,由字母、数字或下划线组成,长度6~32位。
密码需要加密传输,禁止明文传输,详情请参考密码加密传输规范定义
accountType string RequestBody参数 账号权限类型。
Common:普通帐号,Super:super账号。默认为普通账号。详情参考
databasePrivileges List databasePrivilege RequestBody参数 MySQL和SQL Server实例可设置此项。
desc string RequestBody参数 帐号的描述信息。
type string RequestBody参数 帐号归属类型。
OnlyMaster:主实例上使用的帐号,RdsProxy:该主实例对应的代理实例上使用的帐号。默认为OnlyMaster账号。详情参考

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数。

请求示例

POST /v{version}/instance/{instanceId}/account?clientToken={clientToken} HTTP/1.1
HOST: rds.bj.baidubce.com
Authorization: bce-auth-v1/rdsak/2016-07-03T06:13:13Z/1800/x-bce-date/{signature}

{
    "accountName":"user1",
    "password" : "mypassword",
    "accountType" : "Super",
    "databasePrivileges": [{
        "dbName": "user_photo_001",
        "authType": "ReadOnly"
    },{
        "dbName": "user_photo_002",
        "authType": "ReadWrite"
    }],
    "desc" : "账号user1"
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
Content-Length: 0

查询账号列表

说明

  • 只能查看指定实例的账号列表

请求结构

GET /v{version}/instance/{instanceId}/account HTTP/1.1
HOST: rds.bj.baidubce.com
Authorization: authorization string

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称类型是否必须参数位置描述
versionstringURL参数API 版本号
instanceIdstringURL参数实例ID

返回头域

除公共头域,无其它特殊头域。

返回参数

参数名称 类型 描述
accounts List Account Account对象组成的数组。

请求示例

GET /v{version}/instance/{instanceId}/account HTTP/1.1
HOST: rds.bj.baidubce.com
Authorization: bce-auth-v1/rdsak/2016-07-03T06:13:13Z/1800/x-bce-date/{signature}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
Content-Length: 567

{
    "accounts"               : [{
        "accountName"        : "user1",
        "desc"               : "账号user1",
        "type"               : "OnlyMaster",
        "status"             : "Available",
        "accountType"        : "Common",
        "databasePrivileges" : [{
            "dbName"         : "user_photo_001",
            "authType"       : "ReadOnly"
        },{
            "dbName"         : "user_photo_002",
            "authType"       : "ReadWrite"
        }],
        "type"               : "OnlyMaster",
    },{
        "accountName"        : "user2",
        "desc"             : "账号user2",
        "type"               : "OnlyMaster",
        "status"             : "Available",
        "accountType"        : "Common",
        "databasePrivileges" : [{
            "dbName"         : "user_photo_002",
            "authType"       : "ReadOnly"
        },{
            "dbName"         : "user_photo_003",
            "authType"       : "ReadWrite"
        }],
        "type"               : "OnlyMaster",
    }]
}

查询特定账号信息

说明

  • 获取一个账号信息(包括授权信息)

请求结构

GET /v{version}/instance/{instanceId}/account/{accountName} HTTP/1.1
HOST: rds.bj.baidubce.com
Authorization: authorization string

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称类型是否必须参数位置描述
versionstringURL参数API 版本号
instanceIdstringURL参数实例ID
accountNamestringURL参数账号名

返回头域

除公共头域,无其它特殊头域。

返回参数

参数名称 参数类型 参数描述
accountName String 账号名称
desc String 账号描述信息
status String 账号状态信息,参考账号状态
type String 账号归属类型。
OnlyMaster:在主实例上使用的账号,
RdsProxy:在中间件上使用的账号。详情参考账号归属类型表
accountType String 账号权限类型。Super:高权限账号,Common:普通帐号。详情参考账号权限类型表
databasePrivileges List DatabasePrivilege DatabasePrivilege组成的数组

请求示例

GET /v1/instance/r-ndjsndjc/account/user1 HTTP/1.1
HOST: rds.bj.baidubce.com
Authorization: bce-auth-v1/rdsak/2016-07-03T06:13:13Z/1800/x-bce-date/{signature}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
ETag:v2
Content-Length: 567

{
    "accountName"   : "user1",
    "desc"          : "账号user1",
    "type"          : "OnlyMaster",
    "status"        : "Available",
    "accountType"   : "Common",
    "databasePrivileges": [{
        "dbName"    : "user_photo_001",
        "authType"  : "ReadOnly"
    },{
        "dbName"    : "user_photo_002",
        "authType"  : "ReadWrite"
    }]
}