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

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

সংস্করণ: 1.5.2

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

পূর্বশর্ত

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

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

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

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

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

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

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

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

নমুনা

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

এই নমুনা কোডটি ব্যবহার করা সহজ করতে, এই উদাহরণগুলি প্রবাহ পরিবর্তনশীল মান সেট করতে এবং ট্রেস টুলে প্রদর্শনের জন্য এক্সটেনশন প্রতিক্রিয়া মানগুলি পুনরুদ্ধার করতে একটি 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 ভেরিয়েবল মান পুনরুদ্ধার করে এবং এটিকে একটি ক্লাউড 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 ভেরিয়েবল মান পুনরুদ্ধার করে এবং এটিকে একটি ক্লাউড 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 সমর্থন করার জন্য কনফিগার করা থাকতে হবে৷ তথ্যপ্রকারের তালিকার জন্য, ইনফোটাইপ ডিটেক্টর রেফারেন্স দেখুন।

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

এই উদাহরণের জন্য আউটপুট নিম্নলিখিত হবে:

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

পরামিতি অনুরোধ

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

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

নির্দিষ্ট তথ্যপ্রকারের মান সহ ইনপুট পাঠ্য নির্দিষ্ট অক্ষর দিয়ে প্রতিস্থাপিত হয়েছে। যেমন,

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

deidentifyWithTemplate

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

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

আপনার টেমপ্লেটে, আপনি ডি-আইডেন্টিফাই করার জন্য বিষয়বস্তুর প্রতিনিধিত্বকারী তথ্যের প্রকারগুলি নির্দিষ্ট করবেন। তথ্যপ্রকারের তালিকার জন্য, ইনফোটাইপ ডিটেক্টর রেফারেন্স দেখুন। টেমপ্লেটের 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>

এই উদাহরণের আউটপুট হবে ডি-আইডেন্টিফাইড রিকোয়েস্ট কন্টেন্ট।

পরামিতি অনুরোধ

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

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

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

deidentifyWithType

টেক্সট বিষয়বস্তুতে সংবেদনশীল ডেটা ডি-শনাক্ত করুন, প্রতিটি মিলে যাওয়া মানকে 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 সমর্থন করার জন্য কনফিগার করা থাকতে হবে৷ তথ্যপ্রকারের তালিকার জন্য, ইনফোটাইপ ডিটেক্টর রেফারেন্স দেখুন।

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

এই উদাহরণের জন্য আউটপুট নিম্নলিখিত হবে:

{"text":"EMAIL_ADDRESS"}

পরামিতি অনুরোধ

প্যারামিটার বর্ণনা টাইপ ডিফল্ট প্রয়োজন
পাঠ্য ডি-আইডেন্টিফাই করার জন্য পাঠ্য। স্ট্রিং কোনোটিই নয়। হ্যাঁ।

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

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

{"text":"EMAIL_ADDRESS"}

রিডাক্ট ইমেজ

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

তথ্যপ্রকারের তালিকার জন্য, ইনফোটাইপ ডিটেক্টর রেফারেন্স দেখুন।

পরামিতি অনুরোধ

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

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

পাঠ্য সহ চিত্রটি সংশোধন করা হয়েছে৷

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

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

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

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

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

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

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

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