Configuring Permissions of Database Accounts
Function
This API is used to configure permissions of database accounts for a specified DB instance. Before calling this API:
- Learn how to authenticate this API.
Constraints
- This operation cannot be performed when the instance is in any of the following statuses: creating, changing instance specifications, or abnormal.
- By default, read-only users have the create and usage permissions on the public schemas.
- You can only authorize one schema to one user at a time.
URI
POST https://{Endpoint}/v3/{project_id}/instances/{instance_id}/db-privilege
| Parameter | Mandatory | Description |
|---|---|---|
| project_id | Yes | Explanation: Project ID of a tenant in a region. For details about how to obtain the project ID, see Obtaining a Project ID. Restrictions: None Value range: The value can contain 32 characters. Only letters and digits are allowed. Default value: None |
| instance_id | Yes | Instance ID. |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| db_name | Yes | String | Database name. The name cannot be a template database and must be an existing database name. Template databases include postgres, template0, template1. |
| users | Yes | Array of objects | Database accounts. Each element is a database account. A single request supports a maximum of 50 elements. For details, see Table 3. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| name | Yes | String | Database account. The value cannot be a system user and must be an existing account. System users: rdsAdmin, rdsMetric, rdsBackup, rdsRepl, and root. |
| readonly | Yes | Boolean | Permission of the database account.
|
| schema_name | Yes | String | Schema name. The name cannot be public or information_schema, and must be an existing schema name. |
Example Request
POST https://gaussdb-opengauss.eu-west-101.myhuaweicloud.eu/v3/0483b6b16e954cb88930a360d2c4e663/instances/{instance_id}/db-privilege
{
"db_name" : "gaussdb_test",
"users" : [ {
"name" : "rds",
"readonly" : false,
"schema_name" : "teste123"
}, {
"name" : "rds001",
"readonly" : true,
"schema_name" : "teste134"
}, {
"name" : "rds002",
"readonly" : false,
"schema_name" : "teste135"
} ]
} Example Response
None
Status Code
- Normal
- Abnormal
For details, see Status Codes.
Error Code
For details, see Error Codes.