调用DescribeAccounts接口查询实例的账号信息。
说明 该接口暂不支持SQL Server 2017集群版实例。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
| 名称 | 类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
| Action | String | 是 | DescribeAccounts |
系统规定参数。取值:DescribeAccounts。 |
| DBInstanceId | String | 是 | rm-uf6wjk5***** |
实例ID。 说明 暂不支持SQL Server 2017集群版实例。
|
| AccountName | String | 否 | test1 |
数据库账号名称。 |
| PageSize | Integer | 否 | 30 |
每页记录数,取值:30~200。默认值:30。 |
| PageNumber | Integer | 否 | 1 |
页码。默认值:1。取值为大于0且不超过Integer的最大值。 |
返回数据
| 名称 | 类型 | 示例值 | 描述 |
|---|---|---|---|
| SystemAdminAccountStatus | String | True |
超级权限账号是否启用。 |
| SystemAdminAccountFirstActivationTime | String | 2020-02-06T11:00:00Z |
超级权限账号首次启用时间。格式:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。 |
| PageNumber | Integer | 1 |
页码。 |
| RequestId | String | A2E94301-D07F-4457-9B49-6AA2BB388C85 |
请求ID。 |
| TotalRecordCount | Integer | 1 |
总记录数。 |
| Accounts | Array of DBInstanceAccount |
账号信息列表。 |
|
| DBInstanceAccount | |||
| AccountStatus | String | Available |
账号状态,返回值如下:
|
| AccountDescription | String | 测试数据库账号 |
账号描述。 |
| DBInstanceId | String | rm-uf6wjk5***** |
账号所属实例ID。 |
| PrivExceeded | String | 0 |
账号管理的数据库是否超过最大数量限制,返回值如下:
|
| AccountType | String | Normal |
账号类型,返回值如下:
|
| AccountName | String | test1 |
数据库账号名称。 |
| DatabasePrivileges | Array of DatabasePrivilege |
账号拥有的数据库权限列表。 |
|
| DatabasePrivilege | |||
| DBName | String | test1 |
数据库名称。 |
| AccountPrivilege | String | ReadWrite |
账号的权限类型,返回值如下:
|
| AccountPrivilegeDetail | String | SELECT,INSERT |
账号权限类型对应的具体权限。请参见账号权限列表。 |
| ValidUntil | String | 2022-10-01T00:00:00Z |
密码失效时间,返回值如下:
说明 仅PostgreSQL实例返回该参数。
|
| CreateDB | String | t |
是否拥有创建数据库权限,返回值如下:
说明 仅PostgreSQL实例返回该参数。
|
| Replication | String | t |
是否拥有复制权限,返回值如下:
说明 仅PostgreSQL实例返回该参数。
|
| CreateRole | String | t |
是否拥有创建角色权限,返回值如下:
说明 仅PostgreSQL实例返回该参数。
|
| BypassRLS | String | f |
是否拥有安全策略RLS权限,返回值如下:
说明 仅PostgreSQL实例返回该参数。
|
示例
请求示例
http(s)://rds.aliyuncs.com/?Action=DescribeAccounts
&DBInstanceId=rm-uf6wjk5*****
&<公共请求参数>
正常返回示例
XML格式
HTTP/1.1 200 OK
Content-Type:application/xml
<DescribeAccountsResponse>
<Accounts>
<DBInstanceAccount>
<DatabasePrivileges>
<DatabasePrivilege>
<AccountPrivilege>ReadWrite</AccountPrivilege>
<AccountPrivilegeDetail>SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EXECUTE,EVENT,TRIGGER</AccountPrivilegeDetail>
<DBName>testdb</DBName>
</DatabasePrivilege>
</DatabasePrivileges>
<AccountStatus>Available</AccountStatus>
<AccountDescription/>
<DBInstanceId>rm-uf6wjk5*****</DBInstanceId>
<AccountName>testacc02</AccountName>
<PrivExceeded>0</PrivExceeded>
<AccountType>Normal</AccountType>
</DBInstanceAccount>
</Accounts>
<RequestId>A2E94301-D07F-4457-9B49-6AA2BB388C85</RequestId>
</DescribeAccountsResponse>
JSON格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"Accounts" : {
"DBInstanceAccount" : {
"DatabasePrivileges" : {
"DatabasePrivilege" : {
"AccountPrivilege" : "ReadWrite",
"AccountPrivilegeDetail" : "SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EXECUTE,EVENT,TRIGGER",
"DBName" : "testdb"
}
},
"AccountStatus" : "Available",
"AccountDescription" : "",
"DBInstanceId" : "rm-uf6wjk5*****",
"AccountName" : "testacc02",
"PrivExceeded" : 0,
"AccountType" : "Normal"
}
},
"RequestId" : "A2E94301-D07F-4457-9B49-6AA2BB388C85"
}
错误码
| HttpCode | 错误码 | 错误信息 | 描述 |
|---|---|---|---|
| 400 | IO.Exception | IO exception, retry later. | io异常。 |
| 400 | Database.ConnectError | Database connect error. please check instance status and database processlist | 数据库连接异常,请检查实例状态及数据库的连接池 |
| 400 | Account.QueryError | Query Account failed, please check your input value | 查询账户失败, 请检查请求参数 |
访问错误中心查看更多错误码。