以下のスクリプトを使用して、データベース内の列のポリシーを作成しようとしています。これは、あるデータベースでは正常に作成されていますが、他のデータベースではエラーが発生していました。
参考: 両方のデータベースには、DBMS_REDACT POLICY に対する EXECUTE PRIVILEGE があります。
ORA-28086: データ・リダクション・ポリシー式にエラーがあります。
BEGIN
DBMS_REDACT.ADD_POLICY(
object_schema =>'schemaname',
object_name =>'tablename',
column_name =>'columnname',
policy_name =>'policyneme',
function_type =>DBMS_REDACT.REGEXP,
policy_description =>'Masks the first 5 digits of SSN',
regexp_replace_string =>'XXXXX\3',
regexp_position =>1,
regexp_occurrence =>0,
regexp_match_parameter =>'i',
expression =>'1=1',
regexp_pattern =>'(\d\d\d)(\d\d)(\d\d\d\d)'
);
END;