|
Oracle Label Security
|
通过使用 OLS 用户授权控制安全的应用程序角色来保护 PII
安全的应用程序角色过程将执行以下操作:
- 从用户的当前标签获得数字标签标记
- 从“SENS:PII”标签获得数字标签标记
- 用户标签 ≥“SENS:PII”标签 → 将为用户设置角色
- 用户标签 <“SENS:PII”标签 → 不会为用户设置角色
SQL> grant pii_role to <user>;
SQL> alter user <user> set default role none;
CREATE OR REPLACE PROCEDURE p_pii_roles authid current_user
IS
session_tag number; -- numerical expression of session label
sens_tag number; -- numerical expression of SENS:PII label
BEGIN
session_tag := sa_util.numeric_label('PROTECT_PII');
-- numerical expression of session label
sens_tag := char_to_label('PROTECT_PII','SENS:PII');
-- numerical expression of the SENS:PII label
if dominates (session_tag, sens_tag) = 1 then
-- true (1) if session label ≥ SENS:PII label
dbms_session.set_role('pii_role');
else null; -- else do nothing
end if;
END p_pii_roles;
/
|