Updated on 2024-08-08 GMT+08:00

Changing Permissions for a Database Account

Function

This API is used to change permissions for a GeminiDB Redis database account.

Constraints

  • Only the GeminiDB Redis API is supported.
  • This operation cannot be performed when the instance is in any of the following states: creating, changing specifications, changing database port, frozen, or abnormal.

URI

PUT /v3/{project_id}/redis/instances/{instance_id}/db-users/privilege

Table 1 Path parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. To obtain this value, see Obtaining a Project ID.

instance_id

Yes

String

Instance ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

users

No

Array of objects

Request body for modifying permissions of a database account. For details, see Table 4.

Table 4 ModifyDbUserPrivilegeRequestBody

Parameter

Mandatory

Type

Description

name

Yes

String

Account name.

privilege

Yes

String

Account permissions. The value can be:

  • ReadOnly, indicating that the account has read-only permissions.
  • ReadWrite, indicating that the account has read and write permissions.

databases

No

Array of strings

All databases that the account has access permissions for. If this parameter is not transferred, the databases remain unchanged.

Response Parameters

Status code: 202

Table 5 Response body parameters

Parameter

Type

Description

job_id

String

Task ID.

Example Requests

  • URI example
    PUT https://gaussdb-nosql.ap-southeast-1.myhuaweicloud.com/v3/054e292c9880d4992f02c0196d3ea468/redis/instances/3d39c18788b54a919bab633874c159dfin12/db-users/privilege 
  • Modifying permissions of the two database accounts (Set privilege of user test1 to ReadOnly, databases to [ "1", "2" ], privilege of user test2 to ReadWrite, and databases to [ "3", "4" ].)
    {
      "users" : [ { 
        "name" : "test1", 
        "privilege" : "ReadOnly", 
        "databases" : [ "1", "2" ] 
      }, { 
        "name" : "test2", 
        "privilege" : "ReadWrite", 
        "databases" : [ "3", "4" ] 
      } ] 
    }

Example Responses

Status code: 202

Accepted

{ 
  "job_id" : "f85104b5-4a9c-4e0f-9505-fc5409d8f7ae" 
}

Status Codes

For details, see Status Codes.

Error Codes

For details, see Error Codes.