أنت تعرض مستندات Apigee Edge.
انتقل إلى
مستندات Apigee X. معلومات
الإصدار: 1.3.0
استخدِم هذه الإضافة لحجب البيانات الحسّاسة عن المحتوى والصور. على سبيل المثال، يمكنك إخفاء أرقام بطاقات الائتمان وأسمائها وأرقام الضمان الاجتماعي.
المتطلبات الأساسية
يوفّر هذا المحتوى مرجعًا لإعداد هذه الإضافة واستخدامها. قبل استخدام الإضافة من خادم وكيل لواجهة برمجة التطبيقات باستخدام سياسة ExtensionCallout، عليك إجراء ما يلي:
تفعيل واجهة برمجة تطبيقات منع فقدان البيانات في Google Cloud لمشروعك
امنح الإذن لمستوى الوصول الذي تريده للإضافة.
استخدِم "وحدة تحكُّم Google Cloud Platform" لإنشاء مفتاح لحساب الخدمة.
استخدِم محتوى ملف JSON للمفتاح الناتج عند إضافة الإضافة وضبطها باستخدام مرجع الإعدادات.
لمحة عن ميزة "منع فقدان البيانات" (DLP) في السحابة الإلكترونية
منع فقدان البيانات (DLP) في السحابة الإلكترونية هي واجهة برمجة تطبيقات لفحص النصوص والصور والبيانات الأخرى لتحديد البيانات الحسّاسة وإدارتها.
لمعرفة مزيد من المعلومات، يمكنك الاطّلاع على نظرة عامة على ميزة "منع فقدان البيانات". للاطّلاع على واجهة برمجة التطبيقات التي تعرضها هذه الإضافة، يُرجى الاطّلاع على واجهة برمجة تطبيقات منع فقدان البيانات (DLP) في السحابة الإلكترونية.
نماذج
توضّح الأمثلة التالية كيفية ضبط دعم إجراءات إضافات منع فقدان البيانات في السحابة الإلكترونية باستخدام سياسة ExtensionCallout.
لتسهيل تجربة رمز النموذج هذا، تستخدم هذه الأمثلة سياسة AssignMessage لضبط قيم متغيّرات التدفق واسترداد قيم استجابة الإضافات لعرضها في أداة التتبُّع.
قناع مزيّن بنجوم
يستخدم هذا المثال الإجراء deidentifyWithMask
لإخفاء أنواع محددة من النص باستخدام حرف محدد في السياسة، أي الحرف *
هنا.
تضبط سياسة assignMessage التالية المتغيّر request.content
لأغراض التوضيح. في العادة، يتم استرداد محتوى الطلب من طلب العميل.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Set-Variable">
<DisplayName>Set Variable</DisplayName>
<AssignTo type="response" createNew="false"/>
<AssignVariable>
<Name>request.content</Name>
<Value>Visit my site at https://example.com. Or contact me at gladys@example.com.</Value>
</AssignVariable>
</AssignMessage>
تسترد سياسة ExtensionCallout قيمة المتغيّر request.content وتمررها إلى إضافة منع فقدان البيانات في السحابة الإلكترونية (هنا تُعرف باسم example-dlp
). تم ضبط هذه الإضافة على إخفاء القيم استنادًا إلى infoTypes URL
وEMAIL_ADDRESS
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Data-Loss-Extension-Callout">
<DisplayName>Data Loss Prevention Extension Callout</DisplayName>
<Connector>example-dlp</Connector>
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{request.content}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
</ConnectorCallout>
تسترد سياسة assignMessage التالية مخرجات الإضافة لعرضها في أداة التتبُّع.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-DLP-Output">
<DisplayName>Get DLP Output</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{masked.output}</Payload>
</Set>
</AssignMessage>
فيما يلي مثال على الإخراج من هذه التعليمة البرمجية.
{"text":"Visit my site at ******************* Or contact me at *****************."}
قناع مع الاسم
يستخدم هذا المثال الإجراء deidentifyWithType
لإخفاء أنواع محدّدة من النص باستخدام اسم نوع المعلومات نفسه. على سبيل المثال، يستبدل عنوان البريد الإلكتروني gladys@example.com
بـ EMAIL_ADDRESS
.
تضبط سياسة assignMessage التالية المتغيّر request.content
لأغراض التوضيح. في العادة، يتم استرداد محتوى الطلب من طلب العميل.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Set-Variable">
<DisplayName>Set Variable</DisplayName>
<AssignTo type="response" createNew="false"/>
<AssignVariable>
<Name>request.content</Name>
<Value>Visit my site at https://example.com. Or contact me at gladys@example.com.</Value>
</AssignVariable>
</AssignMessage>
تسترد سياسة ExtensionCallout قيمة المتغيّر request.content
وتمررها إلى إضافة منع فقدان البيانات في السحابة الإلكترونية (هنا تُعرف باسم example-dlp
). تم ضبط هذه الإضافة على إخفاء القيم بناءً على infoTypes وURL
وEMAIL_ADDRESS
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Data-Loss-Extension-Callout">
<DisplayName>Data Loss Prevention Extension Callout</DisplayName>
<Connector>example-dlp</Connector>
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{request.content}"
}]]></Input>
<Output>masked.output</Output>
</ConnectorCallout>
تسترد سياسة assignMessage التالية مخرجات الإضافة لعرضها في أداة التتبُّع.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-DLP-Output">
<DisplayName>Get DLP Output</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{masked.output}</Payload>
</Set>
</AssignMessage>
فيما يلي مثال على الإخراج من هذه التعليمة البرمجية.
{"text":"Visit my site at [URL] Or contact me at [EMAIL_ADDRESS]."}
المهام
deidentifyWithMask
يجب إزالة تحديد البيانات الحسّاسة الواردة من text
وإخفاء البيانات باستخدام الحرف mask
. يخفي هذا الإجراء أجزاء text
التي تحدّدها السمة infoTypes
في إعداد الإضافة.
يؤدي إخفاء البيانات الحساسة إلى استبدال الأحرف برمز، مثل علامة النجمة (*) أو التجزئة (#). يمكن ضبط أنواع البيانات الحسّاسة في إعدادات الإضافة.
البنية
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify",
"mask" : "masking-character"
}]]></Input>
مثال
في المثال التالي، الإدخال المطلوب تطبيق القناع عليه هو عنوان بريد إلكتروني مخزّن في متغيّر تدفق input.email.address
. لإتاحة هذا المثال المحدّد، يجب أن تكون هذه الإضافة قد تم ضبطها بحيث تتيح استخدام نوع المعلومات EMAIL_ADDRESS. للحصول على قائمة بأنواع المعلومات، يمكنك الاطّلاع على مرجع أداة رصد نوع المعلومات.
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{input.email.address}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
سيكون ناتج هذا المثال هو ما يلي:
{"text":"*****************"}
معلمات الطلب
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
text | نص لإخفاء الهوية. | سلسلة | بلا عُري | نعم. |
كمامة | حرف يتم استخدامه لإخفاء بيانات حسّاسة. | سلسلة | بلا عُري | نعم. |
الرد
نص الإدخال الذي يحتوي على قيم أنواع المعلومات المحدّدة التي تم استبدالها بالحرف المحدّد. على سبيل المثال،
{"text":"*********"}
deidentifyWithTemplate
عدم تحديد البيانات الحسّاسة في المحتوى النصي باستخدام نموذج يضبط النص المطلوب إخفاء معلوماته وكيفية التعامل معه
تكون النماذج مفيدة في فصل الإعدادات، مثلاً ما يتم فحصه وكيفية إلغاء تحديده من تنفيذ طلبات البيانات من واجهة برمجة التطبيقات. توفِّر ميزة "النماذج" طريقة لإعادة استخدام الإعدادات وتفعيل الاتساق بين المستخدمين ومجموعات البيانات.
في النموذج، عليك تحديد infoTypes التي تمثّل المحتوى المطلوب إخفاء معلوماته. للحصول على قائمة بأنواع المعلومات، راجِع مرجع أداة رصد نوع المعلومات. من خلال إخفاء معلومات تحديد الهوية، يتم إخفاء أجزاء النص التي تحدّدها السمة infoTypes
في النموذج.
البنية
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
"templateName" : "path-to-template"
}]]></Input>
مثال
في المثال التالي، الإدخال المطلوب إخفاء معلومات تحديد الهوية هو نص الطلب الذي ينقله متغيّر التدفق request.content
.
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "{request.content}"
"templateName" : "projects/[PROJECT_ID]/deidentifyTemplates/1231258663242"
}]]></Input>
سيكون ناتج هذا المثال هو محتوى الطلب المجهول الهوية.
معلمات الطلب
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
text | النص المطلوب إخفاء هويته. وهذه هي الطريقة التي تتم بها عملية إخفاء الهوية. | الكائن | بلا عُري | نعم. |
templateName | القالب المراد استخدامه. سيكون هذا مسارًا إلى النموذج بالصيغة التالية: projects or organizations/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID . عند إنشاء النموذج باستخدام Google API، استخدِم قيمة السمة name للاستجابة على أنّها templateName . |
سلسلة | بلا عُري | نعم. |
الرد
تم استبدال النص المُدخل بقيم infoTypes المحدَّدة بأسماء infoType.
deidentifyWithType
عدم تحديد هوية البيانات الحسّاسة في المحتوى النصي، واستبدال كل قيمة مطابقة باسم infoType للحصول على قائمة بأنواع المعلومات، راجِع مرجع أداة رصد نوع المعلومات. يخفي هذا الإجراء أجزاء text
التي تحدّدها السمة infoTypes
في إعداد الإضافة.
في المثال التالي، تتعرّف الخدمة على رقم الهاتف، ثم يتم استبداله باسم infoType نفسه.
نص الإدخال:
John Smith, 123 Main St, Seattle, WA 98122, 206-555-0123.
نص النتيجة:
John Smith, 123 Main St, Seattle, WA 98122, PHONE_NUMBER.
البنية
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
}]]></Input>
مثال
في المثال التالي، الإدخال المطلوب تطبيق القناع عليه هو عنوان بريد إلكتروني مخزّن في متغيّر تدفق input.email.address
. لإتاحة هذا المثال المحدّد، يجب أن تكون هذه الإضافة قد تم ضبطها بحيث تتيح استخدام نوع المعلومات EMAIL_ADDRESS. للحصول على قائمة بأنواع المعلومات، يمكنك الاطّلاع على مرجع أداة رصد نوع المعلومات.
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{input.email.address}"
}]]></Input>
سيكون ناتج هذا المثال هو ما يلي:
{"text":"EMAIL_ADDRESS"}
معلمات الطلب
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
text | النص المطلوب إخفاء هويته. | سلسلة | بلا عُري | نعم. |
الرد
تم استبدال النص المُدخل بقيم infoTypes المحدَّدة بأسماء infoType. على سبيل المثال،
{"text":"EMAIL_ADDRESS"}
redactImage
يمكنك إخفاء النص الذي يندرج ضمن إحدى فئات infoType. يتم رصد المحتوى المخفي وحجبه باستخدام مستطيل معتم. يخفي هذا الإجراء أجزاء image_data
التي تحدّدها السمة infoTypes
في إعداد الإضافة.
للحصول على قائمة بأنواع المعلومات، راجِع مرجع أداة رصد نوع المعلومات.
معلمات الطلب
<Action>redactImage</Action>
<Input><![CDATA[{
"image_data" : "base64-encoded-image-to-analyze",
"image_type" : "type-of-image"
}]]></Input>
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
image_data | تكون بيانات الصورة بترميز base64. | سلسلة | بلا عُري | نعم. |
image_type | تمثّل هذه السمة نوع الصورة. القيم المتاحة هي IMAGE_JPEG وIMAGE_BMP وIMAGE_PNG وIMAGE_SVG. | سلسلة | بلا عُري | نعم. |
الرد
تم إخفاء الصورة التي تتضمّن النص.
مرجع الإعداد
يمكنك استخدام ما يلي عند إعداد هذه الإضافة ونشرها للاستخدام في الخوادم الوكيلة لواجهة برمجة التطبيقات. لمعرفة خطوات إعداد إضافة باستخدام وحدة تحكُّم Apigee، يُرجى الاطّلاع على إضافة إضافة وضبطها.
خصائص الإضافات الشائعة
السمات التالية متاحة لكل إضافة.
الموقع | الوصف | تلقائي | عنصر مطلوب |
---|---|---|---|
name |
الاسم الذي تُعطِه هذه الإضافة من الإضافات. | لا ينطبق | متوافق |
packageName |
اسم حزمة الإضافة كما هو مُوضَّح من Apigee Edge. | لا ينطبق | متوافق |
version |
رقم إصدار حزمة الإضافة التي تجري عملية إعداد الإضافة منها. | لا ينطبق | متوافق |
configuration |
قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه | لا ينطبق | متوافق |
خصائص حزمة الإضافات هذه
حدِّد قيمًا لخصائص الضبط التالية الخاصة بهذه الإضافة.
الموقع | الوصف | تلقائي | مطلوب |
---|---|---|---|
projectId | رقم تعريف مشروع Google Cloud Platform الذي تم تفعيل واجهة برمجة التطبيقات لمنع فقدان البيانات في السحابة الإلكترونية له. | بلا عُري | نعم. |
infoTypes | أنواع معلومات البيانات الحسّاسة في حال حذفه، سترصد الخدمة جميع الأنواع المدمَجة. للحصول على قائمة بأنواع المعلومات المتوافقة مع خدمة "منع فقدان البيانات" في Google Cloud، يُرجى الاطّلاع على مرجع أداة رصد نوع المعلومات. | بلا عُري | لا. |
بيانات الاعتماد | عند الإدخال في وحدة تحكُّم Apigee Edge، يكون هذا هو محتوى ملف مفتاح حساب الخدمة. وعند إرسالها عبر واجهة برمجة تطبيقات الإدارة، تكون قيمة بترميز base64 يتم إنشاؤها من ملف مفتاح حساب الخدمة. | بلا عُري | نعم. |