更新时间:2024-12-24 GMT+08:00
分享

授权数据库角色

功能介绍

在指定实例的数据库中, 设置角色的权限。

约束限制

  • 实例在创建、变更规格、冻结、异常等状态下不能执行该操作。
  • 创建的只读用户对public模式默认具有create和usage权限。
  • 该接口只支持单个角色授权。
  • 该接口不支持M兼容模式授权。

调试

您可以在API Explorer中调试该接口。

URI

POST https://{Endpoint}/v3.1/{project_id}/instances/{instance_id}/db-privilege

表1 参数说明

参数

是否必选

参数类型

描述

project_id

String

参数解释:

租户在某一Region下的项目ID。

获取方法请参见获取项目ID

约束限制:

不涉及。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

默认取值

不涉及。

instance_id

String

实例ID。

请求消息

表2 参数说明

名称

是否必选

参数类型

说明

db_name

String

数据库名称。

不能使用模板库,且是已存在的数据库名称。

模板库包括postgres, template0 ,template1。

user

Object

角色权限信息。详情请参见表表3 user字段数据结构说明

表3 user字段数据结构说明

名称

是否必选

参数类型

说明

name

String

数据库角色名称。

不能使用系统用户或角色,且名称必须存在。

系统用户/角色包括“rdsAdmin”,“rdsMetric”, “rdsBackup”, “rdsRepl”, “root”。

readonly

Boolean

数据库权限。

  • true:只读。
  • false:可读可写。

schema

String

SCHEMA名称。

不能和模板库以及系统内schema重名,且schema名称必须存在。 模板库包括postgres, template0 ,template1, 系统内schema包括public,information_schema。

default_privilege_grantee

String

数据库用户/角色名称。

该字段的含义是将此用户/角色的权限授予给name字段指定的角色,通过readonly字段判断是否授予只读权限。

不能和系统用户/角色名称相同,且用户/角色名称必须存在,系统用户/角色包括“rdsAdmin”,“ rdsMetric”, “rdsBackup”, “rdsRepl”, “root”。

请求示例

设置数据库角色权限。
POST https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/{instance_id}/db-privilege
{ 
  "db_name" : "gaussdb_test", 
  "user" : { 
     "name" : "rds", 
     "schema" : "rds001", 
     "readonly" : false ,
     "default_privilege_grantee": ""
   } 
 
}

响应示例

无。

状态码

错误码

请参见错误码

相关文档