গুগল ক্লাউড ডেটা লস প্রতিরোধ এক্সটেনশন

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান
তথ্য

সংস্করণ: 2.0.2

কন্টেন্ট এবং ছবি থেকে সংবেদনশীল ডেটা অস্পষ্ট করতে এই এক্সটেনশনটি ব্যবহার করুন। উদাহরণস্বরূপ, আপনি ক্রেডিট কার্ড নম্বর, নাম এবং সামাজিক নিরাপত্তা নম্বরগুলি সম্পাদনা করতে পারেন।

পূর্বশর্ত

এই কন্টেন্টটি এই এক্সটেনশনটি কনফিগার এবং ব্যবহারের জন্য রেফারেন্স প্রদান করে। ExtensionCallout নীতি ব্যবহার করে একটি API প্রক্সি থেকে এক্সটেনশনটি ব্যবহার করার আগে, আপনাকে অবশ্যই:

  1. আপনার প্রোজেক্টের জন্য Google Cloud DLP API সক্ষম করুন

  2. এক্সটেনশনটির জন্য আপনার যে স্তরের অ্যাক্সেস প্রয়োজন হবে তার জন্য অনুমতি দিন

  3. পরিষেবা অ্যাকাউন্টের জন্য একটি কী তৈরি করতে Google ক্লাউড কনসোল ব্যবহার করুন

  4. কনফিগারেশন রেফারেন্স ব্যবহার করে এক্সটেনশন যোগ এবং কনফিগার করার সময় ফলাফল কী JSON ফাইলের বিষয়বস্তু ব্যবহার করুন।

ক্লাউড ডেটা লস প্রিভেনশন (DLP) সম্পর্কে

ক্লাউড ডেটা লস প্রিভেনশন (DLP) হল সংবেদনশীল ডেটা সনাক্ত এবং পরিচালনা করার জন্য টেক্সট, ছবি এবং অন্যান্য ডেটা পরিদর্শন করার জন্য একটি API।

আরও তথ্যের জন্য, DLP ওভারভিউ দেখুন। এই এক্সটেনশনটি যে API প্রকাশ করে তার রেফারেন্সের জন্য, ক্লাউড ডেটা লস প্রিভেনশন (DLP) API দেখুন।

নমুনা

নিম্নলিখিত উদাহরণগুলি ExtensionCallout নীতি ব্যবহার করে ক্লাউড DLP এক্সটেনশন অ্যাকশনের জন্য সমর্থন কীভাবে কনফিগার করতে হয় তা ব্যাখ্যা করে।

এই নমুনা কোডটি ব্যবহার করা সহজ করার জন্য, এই উদাহরণগুলি একটি 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 নামে পরিচিত) পাস করে। এই এক্সটেনশনটি URL এবং EMAIL_ADDRESS infoTypes এর উপর ভিত্তি করে মানগুলি মাস্ক করার জন্য কনফিগার করা হয়েছে।

<?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 নামে পরিচিত) পাস করে। এই এক্সটেনশনটি URL এবং EMAIL_ADDRESS infoTypes এর উপর ভিত্তি করে মানগুলি মাস্ক করার জন্য কনফিগার করা হয়েছে।

<?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]."}

কর্ম

ডি-আইডেন্টিফাইউইথমাস্ক

text থেকে সংবেদনশীল ডেটা ডি-আইডেন্টিফাই করুন এবং mask ক্যারেক্টার দিয়ে ডেটা মাস্ক করুন। এই অ্যাকশনটি এক্সটেনশন কনফিগারেশনে infoTypes প্রপার্টি দ্বারা নির্দিষ্ট করা text অংশগুলিকে মাস্ক করে।

সংবেদনশীল ডেটা মাস্কিং করলে অক্ষরগুলিকে একটি প্রতীক দিয়ে প্রতিস্থাপন করা হয়, যেমন একটি তারকাচিহ্ন (*) বা হ্যাশ (#)। সংবেদনশীল ডেটার ধরণগুলি এক্সটেনশন কনফিগারেশনে কনফিগার করা যেতে পারে।

বাক্য গঠন

<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
  "text" : "text-to-deidentify",
  "mask" : "masking-character"
}]]></Input>

উদাহরণ

নিম্নলিখিত উদাহরণে, মাস্ক করার জন্য ইনপুট হল একটি input.email.address ফ্লো ভেরিয়েবলে সংরক্ষিত একটি ইমেল ঠিকানা। এই নির্দিষ্ট উদাহরণটি সমর্থন করার জন্য, এই এক্সটেনশনটি EMAIL_ADDRESS infoType সমর্থন করার জন্য কনফিগার করা থাকতে হবে। infoTypes এর তালিকার জন্য, InfoType Detector Reference দেখুন।

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

এই উদাহরণের আউটপুট হবে নিম্নরূপ:

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

অনুরোধের প্যারামিটার

প্যারামিটার বিবরণ আদর্শ ডিফল্ট প্রয়োজনীয়
টেক্সট শনাক্তকরণ বাতিল করার জন্য টেক্সট। স্ট্রিং কোনোটিই নয়। হ্যাঁ।
মুখোশ সংবেদনশীল তথ্য গোপন করার জন্য ব্যবহারযোগ্য অক্ষর। স্ট্রিং কোনোটিই নয়। হ্যাঁ।

প্রতিক্রিয়া

নির্দিষ্ট infoTypes এর মান সহ ইনপুট টেক্সট নির্দিষ্ট অক্ষর দিয়ে প্রতিস্থাপিত হয়েছে। উদাহরণস্বরূপ,

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

টেমপ্লেটের সাথে পরিচয়মুক্ত করুন

কোন টেক্সটটি ডি-শনাক্ত করতে হবে এবং কীভাবে এটি পরিচালনা করতে হবে তা কনফিগার করে এমন একটি টেমপ্লেট ব্যবহার করে টেক্সট কন্টেন্টের সংবেদনশীল ডেটা ডি-শনাক্ত করুন।

টেমপ্লেটগুলি কনফিগারেশন ডিকপলিং করার জন্য কার্যকর, যেমন আপনি কী পরীক্ষা করেন এবং আপনার API কল বাস্তবায়ন থেকে এটি কীভাবে সনাক্ত করেন। টেমপ্লেটগুলি কনফিগারেশন পুনঃব্যবহার করার এবং ব্যবহারকারী এবং ডেটা সেটগুলিতে ধারাবাহিকতা সক্ষম করার একটি উপায় প্রদান করে।

আপনার টেমপ্লেটে, আপনি infoTypes নির্দিষ্ট করবেন যা ডি-আইডেন্টিফাই করার জন্য কন্টেন্টের প্রতিনিধিত্ব করে। infoTypes এর তালিকার জন্য, InfoType ডিটেক্টর রেফারেন্স দেখুন। ডি-আইডেন্টিফাইং টেমপ্লেটের infoTypes প্রপার্টি দ্বারা নির্দিষ্ট করা টেক্সটের অংশগুলিকে মাস্ক করে।

বাক্য গঠন

<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
  "text" : "text-to-deidentify"
  "templateName" : "path-to-template"
}]]></Input>

উদাহরণ

নিম্নলিখিত উদাহরণে, de-identify করার জন্য ইনপুট হল request.content flow ভেরিয়েবল দ্বারা বহন করা অনুরোধের বডি।

<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
    "text" : "{request.content}"
    "templateName" : "projects/[PROJECT_ID]/deidentifyTemplates/1231258663242"
}]]></Input>

এই উদাহরণের আউটপুট হবে অ-শনাক্তকৃত অনুরোধের বিষয়বস্তু।

অনুরোধের প্যারামিটার

প্যারামিটার বিবরণ আদর্শ ডিফল্ট প্রয়োজনীয়
টেক্সট শনাক্তকরণ বাতিল করার জন্য লেখা। শনাক্তকরণ বাতিল করার প্রক্রিয়াটি এই বিষয়টির উপর নির্ভর করে। বস্তু কোনোটিই নয়। হ্যাঁ।
টেমপ্লেটের নাম ব্যবহার করার জন্য টেমপ্লেট। এটি নিম্নলিখিত ফর্ম্যাটে টেমপ্লেটের একটি পাথ হবে: projects or organizations/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID । যখন আপনি Google API দিয়ে টেমপ্লেট তৈরি করবেন , তখন প্রতিক্রিয়ার name সম্পত্তির মান templateName হিসাবে ব্যবহার করুন। স্ট্রিং কোনোটিই নয়। হ্যাঁ।

প্রতিক্রিয়া

নির্দিষ্ট infoTypes এর মান সহ ইনপুট টেক্সটটি infoType নামের সাথে প্রতিস্থাপিত হয়েছে।

ডিআইডেন্টিফাইউইথটাইপ

টেক্সট কন্টেন্টের সংবেদনশীল ডেটা সনাক্তকরণ থেকে বিচ্ছিন্ন করুন, প্রতিটি মিলিত মানকে infoType-এর নাম দিয়ে প্রতিস্থাপন করুন। infoType-এর তালিকার জন্য, InfoType ডিটেক্টর রেফারেন্স দেখুন। এই ক্রিয়াটি এক্সটেনশন কনফিগারেশনে infoTypes প্রপার্টি দ্বারা নির্দিষ্ট করা text অংশগুলিকে মুখোশ দেয়।

নিম্নলিখিত উদাহরণে, পরিষেবাটি ফোন নম্বরটি স্বীকৃত করে, তারপর 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 সমর্থন করার জন্য কনফিগার করা থাকতে হবে। infoTypes এর তালিকার জন্য, InfoType Detector Reference দেখুন।

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

এই উদাহরণের আউটপুট হবে নিম্নরূপ:

{"text":"EMAIL_ADDRESS"}

অনুরোধের প্যারামিটার

প্যারামিটার বিবরণ আদর্শ ডিফল্ট প্রয়োজনীয়
টেক্সট শনাক্তকরণ বাতিল করার জন্য লেখাটি। স্ট্রিং কোনোটিই নয়। হ্যাঁ।

প্রতিক্রিয়া

নির্দিষ্ট infoTypes এর মান সহ ইনপুট টেক্সট infoType নামের সাথে প্রতিস্থাপিত হয়েছে। উদাহরণস্বরূপ,

{"text":"EMAIL_ADDRESS"}

চিত্র সম্পাদনা করুন

infoType বিভাগের যেকোনো একটিতে পড়া টেক্সট রিড্যাক্ট করুন। রিড্যাক্ট করা কন্টেন্টটি একটি অস্বচ্ছ আয়তক্ষেত্র দিয়ে সনাক্ত করা হয় এবং অস্পষ্ট করা হয়। এই অ্যাকশনটি এক্সটেনশন কনফিগারেশনে infoTypes প্রপার্টি দ্বারা নির্দিষ্ট করা image_data এর অংশগুলিকে মাস্ক করে।

infoTypes এর তালিকার জন্য, InfoType detector রেফারেন্স দেখুন।

অনুরোধের প্যারামিটার

<Action>redactImage</Action>
<Input><![CDATA[{
  "image_data" : "base64-encoded-image-to-analyze",
  "image_type" : "type-of-image"
}]]></Input>
প্যারামিটার বিবরণ আদর্শ ডিফল্ট প্রয়োজনীয়
চিত্র_তথ্য base64 এ এনকোড করা ছবির ডেটা। স্ট্রিং কোনোটিই নয়। হ্যাঁ।
ইমেজ_টাইপ ছবির ধরণের ধ্রুবক। উপলব্ধ মানগুলি হল IMAGE_JPEG, IMAGE_BMP, IMAGE_PNG, IMAGE_SVG। স্ট্রিং কোনোটিই নয়। হ্যাঁ।

প্রতিক্রিয়া

লেখাটি সহ ছবিটি সম্প্রসারিত করা হয়েছে।

কনফিগারেশন রেফারেন্স

API প্রক্সিতে ব্যবহারের জন্য এই এক্সটেনশনটি কনফিগার এবং স্থাপন করার সময় নিম্নলিখিতগুলি ব্যবহার করুন। Apigee কনসোল ব্যবহার করে একটি এক্সটেনশন কনফিগার করার পদক্ষেপগুলির জন্য, একটি এক্সটেনশন যোগ করা এবং কনফিগার করা দেখুন।

সাধারণ এক্সটেনশন বৈশিষ্ট্য

নিম্নলিখিত বৈশিষ্ট্যগুলি প্রতিটি এক্সটেনশনের জন্য উপস্থিত রয়েছে।

সম্পত্তি বর্ণনা ডিফল্ট প্রয়োজন
name আপনি এক্সটেনশনের এই কনফিগারেশনের নাম দিন। কোনোটিই নয় হ্যাঁ
packageName Apigee Edge দ্বারা প্রদত্ত এক্সটেনশন প্যাকেজের নাম। কোনোটিই নয় হ্যাঁ
version যে এক্সটেনশন প্যাকেজ থেকে আপনি একটি এক্সটেনশন কনফিগার করছেন তার সংস্করণ নম্বর। কোনোটিই নয় হ্যাঁ
configuration আপনি যে এক্সটেনশনটি যোগ করছেন তার জন্য নির্দিষ্ট কনফিগারেশন মান। এই এক্সটেনশন প্যাকেজের বৈশিষ্ট্য দেখুন কোনোটিই নয় হ্যাঁ

এই এক্সটেনশন প্যাকেজের বৈশিষ্ট্যাবলী

এই এক্সটেনশনের জন্য নির্দিষ্ট নিম্নলিখিত কনফিগারেশন বৈশিষ্ট্যের জন্য মান নির্দিষ্ট করুন।

সম্পত্তি বিবরণ ডিফল্ট প্রয়োজনীয়
প্রজেক্ট আইডি যে Google ক্লাউড প্রোজেক্ট আইডির জন্য ক্লাউড ডেটা লস প্রিভেনশন API সক্ষম করা আছে। কোনোটিই নয়। হ্যাঁ।
তথ্যপ্রকার সংবেদনশীল ডেটার তথ্য প্রকার। যদি বাদ দেওয়া হয়, তাহলে পরিষেবাটি সমস্ত অন্তর্নির্মিত প্রকার সনাক্ত করবে। Google Cloud DLP পরিষেবা দ্বারা সমর্থিত তথ্য প্রকারের তালিকার জন্য, InfoType Detector Reference দেখুন। কোনোটিই নয়। না।
শংসাপত্র Apigee Edge কনসোলে প্রবেশ করালে, এটি আপনার পরিষেবা অ্যাকাউন্ট কী ফাইলের বিষয়বস্তু। ম্যানেজমেন্ট API ব্যবহার করে পাঠানো হলে, এটি পরিষেবা অ্যাকাউন্ট কী ফাইল থেকে তৈরি একটি base64-এনকোডেড মান। কোনোটিই নয়। হ্যাঁ।