Oracle Database VaultのファクタとしてのOracle Label Securityのユーザー認可
$ sqlplus LBACSYS/password
SQL> execute sa_sysdba.create_policy('PRIVACY','PRIVACY_COLUMN','NO_CONTROL');
以下のコマンドにより、OLSポリシーで使用される2つのレベルが作成されます。
SQL> execute sa_components.create_level('PRIVACY',1000,'C','CONFIDENTIAL');
SQL> execute sa_components.create_level('PRIVACY',2000,'S','SENSITIVE');
次のコマンドで'PII'コンパートメントを作成します。
SQL> execute sa_components.create_compartment('PRIVACY',100,'PII','PERS_INFO');
ユーザーJSmithには、機密度の低いラベルが付与されます。
SQL> execute sa_user_admin.set_user_labels('PRIVACY','JSmith','C');
ユーザーMDaleには、機密度の高いラべルが付与されます。PIIコンパートメントも含まれています。
SQL> execute sa_user_admin.set_user_labels('PRIVACY','MDale','S:PII');
Database VaultのファクタとしてOLSラベルを使用するには、まず'ルールセット'を作成する必要があります。
SQL> connect dbv_owner/password;
SQL> execute dvsys.dbms_macadm.create_rule_set('PII Rule Set','Protect PII
data from privileged users','Y',1,0,2,NULL,NULL,0,NULL);
ルールセットには1つまたは複数のルールが含まれ、このルールには、OLSラベルを評価する構文が含まれます。
SQL> execute dvsys.dbms_macadm.create_rule('Check OLS Factor',
'dominates(sa_utl.numeric_label(''PRIVACY''), char_to_label(''PRIVACY'',''S:PII'')) = ''1''');
SQL> execute dvsys.dbms_macadm.sync_rules;
SQL> commit;
ルールをルールセットに追加します。
SQL> execute dvsys.dbms_macadm.add_rule_to_rule_set ('PII Rule Set','Check OLS Factor');
SQL> commit;