首批通过分布式安全可靠测评,为关键业务系统打造
SA_SESSION.SET_ROW_LABEL
更新时间:2026-04-10 11:58:37
SA_SESSION.SET_ROW_LABEL 用于设置当前数据库会话的默认行标签值。
设置 LABEL_DEFAULT 选项时,如果用户未明确指定标签,则在插入时使用此行标签值。
如果未使用 SA_SESSION.SET_ROW_LABEL 设置默认行标签值,则该值将自动从会话标签派生。它包含会话标签的级别。
如果会话标签更改,则行标签将自动重置。 例如,如果将会话级别从 HIGHLY_SENSITIVE 更改为 SENSITIVE,则行标签的级别组件将自动更改为 SENSITIVE。
用户可以独立设置行标签,但只能小于或等于会话标签的级别,并且大于或等于用户的最小级别。
如果用户尝试将行标签设置为无效值,则不允许该操作,并且行标签值不变。
功能适用性
该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版仅提供 MySQL 模式。
语法
SA_SESSION.SET_ROW_LABEL (
policy_name IN VARCHAR,
row_label IN VARCHAR);
参数解释
| 参数 | 解释 |
|---|---|
| policy_name | 指定策略。要查找现有策略,请查询 ALL_SA_POLICIES 数据字典视图的 POLICY_NAME 列。 |
| row_label | 设置为默认行标签的值。 |
示例
以下示例是为 shield_agent_policy 策略设置行标签。
BEGIN
SA_SESSION.SET_ROW_LABEL (
policy_name => 'shield_agent_policy',
row_label => 'L5');
END;
/