首批通过分布式安全可靠测评,为关键业务系统打造
SA_USER_ADMIN.SET_LEVELS
更新时间:2026-04-10 11:58:37
SA_USER_ADMIN.SET_LEVELS 用于分配用户的最小和最大级别,并标识用户的会话标签和行标签的默认值。
功能适用性
该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版仅提供 MySQL 模式。
语法
SA_USER_ADMIN.SET_LEVELS (
policy_name IN VARCHAR,
user_name IN VARCHAR,
max_level IN VARCHAR,
min_level IN VARCHAR := NULL,
def_level IN VARCHAR := NULL,
row_level IN VARCHAR := NULL);
参数解释
| 参数 | 解释 |
|---|---|
| policy_name | 指定策略。要查找现有策略,请查询 ALL_SA_POLICIES 数据字典视图的 POLICY_NAME 列。 |
| user_name | 指定用户名。在运行此过程之前,此用户不需要任何标签安全性授权。 |
| max_level | 读写访问权限的最高级别,仅以短名称表示。要查找现有级别,请查询 ALL_SA_LEVELS 视图的 SHORT_NAME 列。 |
| min_level | 最低级别的写访问权限,仅使用短名称。如果设置为 NULL,则默认值为策略的最低级别。 |
| def_level | 指定默认级别(等于或大于最小级别,并且等于或小于最大级别)。仅使用短名称。如果设置为 NULL,则默认值为 max_level。 |
| row_level | 指定行级别(等于或大于最小级别,并且小于或等于默认级别)。仅使用短名称。如果设置为 NULL,则将其设置为 def_level。 |
示例
以下示例是为 shield_agent_policy 策略设置级别。
BEGIN
SA_USER_ADMIN.SET_LEVELS (
policy_name => 'shield_agent_policy',
user_name => 'COULSON',
max_level => 'L8',
min_level => 'L5',
def_level => 'L8',
row_level => 'L8');
END;
/