ModifyTenantUserRoles

更新时间:
复制 MD 格式

Modifies the database permissions for a specified account in a tenant.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

oceanbase:ModifyTenantUserRoles

update

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

UserName

string

Yes

The name of the database account.
You cannot use reserved keywords, such as SYS or root.

pay_test

TenantId

string

Yes

The tenant ID.

t4pnum****

UserRole

string

Yes

The role information for the database account.

  • For a tenant in MySQL mode, you must pass all databases and their corresponding permissions. Permissions for any database not included in the request will be revoked. To revoke all permissions, pass an empty array ([]).

  • For a tenant in Oracle mode, specify only the databases, tables, and corresponding permissions that you want to modify.

- OceanBase MySQL 模式:[{"Database":"oceanbase1","Role":"readwrite"},{"Database":"oceanbase2","Role":"readonly"}] - OceanBase Oracle 模式:[{"database":"xxx","table":"xxx","role":"readonly"}] 并且 modifyType 需要传入相应的值

InstanceId

string

Yes

The OceanBase cluster ID.

ob317v4uif****

ModifyType

string

No

The type of permission modification.
This parameter is not required for a tenant in MySQL mode. For a tenant in Oracle mode, specify one of the following operations:

  • Add: ADD.

  • Delete: DELETE.

  • Update: UPDATE.

UPDATE

UserType

string

No

The type of the user account. Valid values: Normal and Admin.

Normal

GlobalPermissions

string

No

Global permissions.

Response elements

Element

Type

Description

Example

object

The data returned.

TenantUser

object

Information about the database account in the tenant.

UserRole

array<object>

A list of database permissions for the account.

  • Admin: the privileged account.

  • Normal: a regular account.

账号具备的数据库权限信息列表。

object

Details of a database permission.

Database

string

The database (schema) name.

db_pay1

Role

string

The role assigned.

ReadOnly

Table

string

The table name.

tbl_pay1

IsSuccess

boolean

Indicates whether the authorization was successful.

true

UserName

string

The account name.

pay_test

TenantId

string

The tenant ID.

t4pnum****

RequestId

string

The request ID.

EE205C00-30E4-XXXX-XXXX-87E3A8A2AA0C

Examples

Success response

JSON format

{
  "TenantUser": {
    "UserRole": [
      {
        "Database": "db_pay1",
        "Role": "ReadOnly",
        "Table": "tbl_pay1",
        "IsSuccess": true
      }
    ],
    "UserName": "pay_test",
    "TenantId": "t4pnum****"
  },
  "RequestId": "EE205C00-30E4-XXXX-XXXX-87E3A8A2AA0C"
}

Error codes

HTTP status code

Error code

Error message

Description

500 InternalError The request processing has failed due to some unknown error.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.