إضافة منع فقدان البيانات من Google Cloud

أنت تعرض مستندات Apigee Edge.
انتقل إلى مستندات Apigee X.
معلومات

الإصدار: 1.5.1

استخدِم هذه الإضافة لحجب البيانات الحسّاسة عن المحتوى والصور. على سبيل المثال، يمكنك إخفاء أرقام بطاقات الائتمان وأسمائها وأرقام الضمان الاجتماعي.

المتطلبات الأساسية

يوفّر هذا المحتوى مرجعًا لإعداد هذه الإضافة واستخدامها. قبل استخدام الإضافة من خادم وكيل لواجهة برمجة التطبيقات باستخدام سياسة ExtensionCallout، عليك إجراء ما يلي:

  1. تفعيل واجهة برمجة تطبيقات منع فقدان البيانات في Google Cloud لمشروعك

  2. امنح الإذن لمستوى الوصول الذي تريده للإضافة.

  3. استخدِم "وحدة تحكُّم Google Cloud Platform" لإنشاء مفتاح لحساب الخدمة.

  4. استخدِم محتوى ملف 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 يتم إنشاؤها من ملف مفتاح حساب الخدمة. بلا عُري نعم.