نشر بواسطة : Obay Salah , November 20, 2024

لإنشاء الData Redaction Policy يجب عليك استخدام الإجراء DBMS_REDACT.ADD_POLICY وهو كما يلي:

DBMS_REDACT.ADD_POLICY (
 object_schema               IN VARCHAR2 := NULL,
 object_name                 IN VARCHAR2,
 policy_name                 IN VARCHAR2,
 policy_description          IN VARCHAR2 := NULL,
 column_name                 IN VARCHAR2 := NULL,
 column_description          IN VARCHAR2 := NULL,
 function_type               IN BINARY_INTEGER := DBMS_REDACT.FULL,
 function_parameters         IN VARCHAR2 := NULL,
 expression                  IN VARCHAR2,
 enable                      IN BOOLEAN := TRUE,
 regexp_pattern              IN VARCHAR2 := NULL,
 regexp_replace_string       IN VARCHAR2 := NULL,
 regexp_position             IN BINARY_INTEGER :=1,
 regexp_occurrence           IN BINARY_INTEGER :=0,
 regexp_match_parameter      IN VARCHAR2 := NULL);


Object_Schema: لتحديد الSchema التي تحوي الكائن الذي تريد عمل Redact له ، إذا قمت بتجاهل هذا المتغير او اخذ القيمة Null يتم استخدام الSchema الحالية.

Object_Name: لتحديد الجدول او الview الذي نريد عمل Redact له.

Policy_Name: لتحديد ايم الPolicy التي تريد إنشاؤها. تأكد من أن تكون اسم فريد في هذه الInstance، كما يمكنك الاصتعلام عن قائمة الRedaction Policies عن طريق الREDACTION_POLICIES.

policy_description: لتحديد وصف الPolicy يحدد الغرض منها.

column_name: لتحديد العمود الذي تريد عمل Redact للبيانات الموجودة فيه، يمكنك تطبيق الRedaction Policy علي عدد من الأعمدة، وذلك بعد أن تقوم بإستخدام الإجراء DBMS_REDACT.ADD_POLICY يمكنك أن تستخدم الإجراء DBMS_REACT.ALTER_POLICY لإضافة الأعمدة الأخري التي تريد أن تقوم بعمل Redact لها.

column_description: لتحديد وصف موجز للعمود الذي تريد عمل Redact له.

Function_type: لتحديد نوع الFunction الذي ستستخدمه لعمل الRedaction، يمكن أن يكون

(FULL or PARTIAL or REGEXP)

إذا قمت بتجاهل هذا المتغير فالنوع الإفتراضي هو FULL.

Function_parameters: لتحديد كيفية ظهور التنقيح في النوع Partial Data Redaction.

نحتاج لهذا المتغير فقط اذا كان  DBMS_REDACT.PARTIAL =Function_type.

Expression: لتحديد متي يتم تطبيق الPloicy، ولا يتم التنقيح الا إذا تم تقييم هذا المتغيير بالقيمة True.

Enable: إذا اخذ المتغير القيمة True يتم تطبيق الPolicy ولكن إذا اخذ القيمة False يتم إنشاء الRedaction Policy دون تطبيقها، والوضع الإفتراضي هو True.

regexp_pattern: يصف نمط البحث عن البيانات التي يجب مطابقتها، بحيث إذا وجدت تطابقاً فستستبدل الOracle Database البيانات الموجودة كما هو محدد في المتغير regexp_replace_string، وهو متغير خاص بالنوع regular expressions.

:regexp_replace_string كما ذكرت سابقاً هنا يتم تحديد الطريقة التي تريد بها استبدال البيانات التي سيتم تنقيحها، وهو ايضاً متغير خاص بالنوع regular expressions.

regexp_position: يحدد موضع البداية للبحث عن البيانات، ويجب أن تكون القيمة المدخلة هنا هي رقم موجب يشير الي بداية احرف البيانات في العمود، والرقم الإفتراضي هو الرقم 1, وهي تعني أن الOracle database يبدأ البحث من الحرف الاول من بيانات العمود.

regexp_occurrence: يحدد كيفية إجراء عملية البحث والإستبدال، يجب أن تكون القيمة عددا صحيحاً غير سالب يشير غلي حدوث عملية الإستبدال:

·         إذا قمت بتحديد القيمة 0 او DBMS_REDACT.RE_ALL, فستستبدل الoracle database كافة تكرار البيانات المتطابقة.

·         إذا قمت بتحديد التنسيق DBMS_REDACT.RE_FIRST , فستستبدل الoracle database التواجد الأول للمطابقة.

·         إذا قمت بتحديد عدد صحيح موجب n، فإن الoracle database تستبدل التكرار n للبيانات المطابقة.

regexp_match_parameter: يحدد نصاً حرفياً يتيح لك تغيير سلوك المطابقة الإفتراضي لل

. Function. 

علي سبيل المثال يمكنك انشاء Oracle Data Redaction Policy لعمود الSalary في الجدول HR.EMPLOYEES كالاتي:

BEGIN
 DBMS_REDACT.ADD_POLICY(
   object_schema       => 'hr',
   object_name         => 'employees',
   column_name         => 'salary',
   policy_name         => 'hr_emp_redact_comp_pol',
   function_type       => DBMS_REDACT.FULL,
   expression          => '1=1');
END;


في هذا المثال تم استخدام الإجراء ADD_POLICY في الحزمة DBMS_REDACT لتعريف Oracle Data Redaction Policy  تسمي  hr_emp_redact_comp_po، تم إستخدام الFunction Type تمسي BMS_REDACT.FULL مما يعني عمل Redaction كامل للقيم المستردة من عمود الراتب، مما يعني استبدال القيم الرقمية المسترجعة بصفر (0).


علامات : Advanced Security

يمكن ان يعجبك ايضا


Comments

لايوجد تعليق حتى الان