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

أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

الإصدار: 2.0.0

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

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

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

  1. فعِّل Google Cloud DLP API لمشروعك.

  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 وتُمرّرها إلى إضافة Cloud DLP (يُشار إليها هنا باسم 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 وتُمرّرها إلى إضافة Cloud DLP (يُشار إليها هنا باسم example-dlp). تم ضبط هذه الإضافة لإخفاء القيم استنادًا إلى infoTypesURL و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. للحصول على قائمة بأنواع المعلومات، يُرجى الاطّلاع على مرجع أداة رصد InfoType.

<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
    "text" : "{input.email.address}",
    "mask" : "*"
}]]></Input>
<Output>masked.output</Output>

ستكون نتيجة هذا المثال كما يلي:

{"text":"*****************"}

مَعلمات الطلب

المَعلمة الوصف النوع تلقائي مطلوب
نص النص المطلوب إخفاء هويته سلسلة بلا عُري نعم.
كمامة الحرف المراد استخدامه لإخفاء البيانات الحسّاسة سلسلة بلا عُري نعم.

الردّ

نص الإدخال الذي تم استبدال قيم أنواع المعلومات المحدّدة فيه بالحرف المحدّد على سبيل المثال،

{"text":"*********"}

deidentifyWithTemplate

يمكنك إزالة المعلومات التعريفية من البيانات الحسّاسة في المحتوى النصي باستخدام نموذج يحدّد النص الذي يجب إزالة المعلومات التعريفية منه وكيفية التعامل معه.

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

في النموذج، عليك تحديد infoTypes التي تمثّل المحتوى المطلوب إزالة هويته. للحصول على قائمة بأنواع المعلومات، يُرجى الاطّلاع على مرجع أداة رصد InfoType. تعمل ميزة إخفاء الهوية على حجب أجزاء النص المحدّدة من خلال السمة 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>

سيكون الناتج في هذا المثال هو محتوى الطلب الذي تم إخفاء هويته.

مَعلمات الطلب

المَعلمة الوصف النوع تلقائي مطلوب
نص النص المطلوب إزالة هويته وهذا هو ما تعمل عليه عملية إخفاء الهوية. عنصر بلا عُري نعم.
templateName النموذج المطلوب استخدامه سيكون هذا المسار إلى النموذج بالشكل التالي: projects or organizations/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID. عند إنشاء النموذج باستخدام Google API، استخدِم قيمة السمة name للاستجابة على أنّها templateName. سلسلة بلا عُري نعم.

الردّ

نص الإدخال الذي يحتوي على قيم أنواع المعلومات المحدّدة تم استبدالها بأسماء أنواع المعلومات

deidentifyWithType

إزالة المعلومات التعريفية من البيانات الحسّاسة في محتوى النص، واستبدال كل قيمة مطابقة باسم infoType للحصول على قائمة بأنواع المعلومات، يُرجى الاطّلاع على مرجع أداة رصد 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. للحصول على قائمة بأنواع المعلومات، يُرجى الاطّلاع على مرجع أداة رصد InfoType.

<Action>deidentifyWithType</Action>
<Input><![CDATA[{
    "text" : "{input.email.address}"
}]]></Input>

ستكون نتيجة هذا المثال كما يلي:

{"text":"EMAIL_ADDRESS"}

مَعلمات الطلب

المَعلمة الوصف النوع تلقائي مطلوب
نص النص المطلوب إزالة هويته سلسلة بلا عُري نعم.

الردّ

نص الإدخال الذي يحتوي على قيم أنواع المعلومات المحدّدة تم استبدالها بأسماء أنواع المعلومات على سبيل المثال،

{"text":"EMAIL_ADDRESS"}

redactImage

إخفاء النص الذي يندرج ضمن إحدى فئات infoType يتم رصد المحتوى الذي تم إخفاؤه وتغطيته بمستطيل غير شفاف. يحجب هذا الإجراء أجزاء image_data التي تحدّدها السمة infoTypes في إعدادات الإضافة.

للحصول على قائمة بأنواع المعلومات، يُرجى الاطّلاع على مرجع أداة رصد InfoType.

مَعلمات الطلب

<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 الذي تم تفعيل واجهة برمجة التطبيقات Cloud Data Loss Prevention API له. بلا عُري نعم.
infoTypes أنواع المعلومات للبيانات الحسّاسة في حال حذفها، سترصد الخدمة جميع الأنواع المضمّنة. للحصول على قائمة بأنواع المعلومات المتوافقة مع خدمة "إدارة البيانات في Google Cloud"، يُرجى الاطّلاع على مرجع أداة رصد أنواع المعلومات. بلا عُري لا.
بيانات الاعتماد عند إدخالها في وحدة تحكّم Apigee Edge، تكون هذه هي محتويات ملف مفتاح حساب الخدمة. عند إرسالها من خلال Management API، تكون قيمة مُشفَّرة بترميز base64 تم إنشاؤها من ملف مفتاح حساب الخدمة. بلا عُري نعم.