云数据库RDS

    账号管理接口说明

    创建账号

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

    说明

    • 实例状态为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](RDS/API参考/对象说明.md#Account Object详情)对象组成的数组。

    请求示例

    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](RDS/API参考/对象说明.md#DatabasePrivilege Object详情)组成的数组

    请求示例

    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"
        }]
    }