SA_USER_ADMIN.SET_LEVELS 用于分配用户的最小和最大级别,并标识用户的会话标签和行标签的默认值。

语法

  1. SA_USER_ADMIN.SET_LEVELS (
  2. policy_name IN VARCHAR,
  3. user_name IN VARCHAR,
  4. max_level IN VARCHAR,
  5. min_level IN VARCHAR := NULL,
  6. def_level IN VARCHAR := NULL,
  7. 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 策略设置级别。

  1. BEGIN
  2. SA_USER_ADMIN.SET_LEVELS (
  3. policy_name => 'shield_agent_policy',
  4. user_name => 'COULSON',
  5. max_level => 'L8',
  6. min_level => 'L5',
  7. def_level => 'L8',
  8. row_level => 'L8');
  9. END;
  10. /