ব্যক্তিগতভাবে শনাক্তকরণযোগ্য তথ্য (PII) মাস্কিং ম্যানেজ করা

এক নজরে

API হাব কানেক্টর ইন্টিগ্রেশনের অংশ হিসেবে, API প্রক্সি ও শেয়ারফ্লো বান্ডেলের জন্য মেটাডেটা আপলোড API হাবে সিঙ্ক করা হয়। এইসব বান্ডেলে ব্যক্তিগতভাবে শনাক্তকরণযোগ্য তথ্য (PII) বা নীতি কনফিগারেশনের মধ্যে থাকা অন্যান্য সংবেদনশীল ডেটা থাকতে পারে। এই ফিচারের সাহায্যে, API হাবে বান্ডেল আপলোড করার আগে শনাক্ত করা PII ফিল্ড মাস্ক করা যায়। এর ফলে, আপনার Edge for Private Cloud এনভায়রনমেন্টের জন্য ডেটা গোপনীয়তা ও সম্মতি নিশ্চিত করা যায়।

মাস্কিং পদ্ধতি

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

ডিফল্ট মাস্ক

প্রাইভেট ক্লাউডের জন্য Apigee Edge-এ আগে থেকে সংজ্ঞায়িত, বিল্ট-ইন XPath এক্সপ্রেশনের একটি তালিকা (ডিফল্ট মাস্ক নামে পরিচিত) অন্তর্ভুক্ত থাকে যা বিভিন্ন নীতি জুড়ে সম্ভাব্য PII সোর্স হিসেবে পরিচিত ফিল্ডকে অটোমেটিক টার্গেট করে।

সম্ভাব্য PII সোর্স ও ডিফল্ট মাস্ক

নিচের টেবিলে সেইসব নীতি ও এলিমেন্টের তালিকা দেওয়া হল যেগুলির জন্য ডিফল্ট মাস্কিং প্রয়োগ করা হয়:

নীতির নাম সংবেদনশীল এলিমেন্ট ডিফল্ট মাস্ক XPath যুক্তিসহ ব্যাখ্যা
BasicAuthentication হার্ডকোড করা ইউজারনেম //BasicAuthentication/User ব্যবহারকারীর পরিচয় সরাসরি পরিষ্কার টেক্সট হিসেবে সেভ করে।
BasicAuthentication হার্ডকোড করা পাসওয়ার্ড //BasicAuthentication/Password সরাসরি স্পষ্ট-টেক্সট পাসওয়ার্ড সেভ করে।
GenerateJWT সিমেট্রিক কী (সিক্রেট) //GenerateJWT/SecretKey/Value হার্ডকোড করা সিমেট্রিক এনক্রিপশন/স্বাক্ষর করার কী।
GenerateJWT প্রাইভেট কী //GenerateJWT/PrivateKey/Value অসমমিত সই করার জন্য PEM-এনকোডেড প্রাইভেট কী।
GenerateJWT প্রাইভেট কী পাসওয়ার্ড //GenerateJWT/PrivateKey/Password প্রাইভেট কী ডিক্রিপ্ট করার পাসওয়ার্ড।
GenerateJWS সিমেট্রিক কী (সিক্রেট) //GenerateJWS/SecretKey/Value হার্ডকোড করা সিমেট্রিক এনক্রিপশন/স্বাক্ষর করার কী।
GenerateJWS প্রাইভেট কী //GenerateJWS/PrivateKey/Value অসমমিত সই করার জন্য PEM-এনকোডেড প্রাইভেট কী।
GenerateJWS প্রাইভেট কী পাসওয়ার্ড //GenerateJWS/PrivateKey/Password প্রাইভেট কী ডিক্রিপ্ট করার পাসওয়ার্ড।
VerifyJWT সিমেট্রিক কী (সিক্রেট) //VerifyJWT/SecretKey/Value যাচাইকরণের জন্য হার্ডকোড করা সিমেট্রিক কী।
VerifyJWS সিমেট্রিক কী (সিক্রেট) //VerifyJWS/SecretKey/Value যাচাইকরণের জন্য হার্ডকোড করা সিমেট্রিক কী।
HMAC শেয়ার করা সিক্রেট কী //HMAC/SecretKey HMAC গণনা করার জন্য হার্ডকোড করা গোপন কী।
KeyValueMapOperations হার্ডকোড করা ভ্যালু (Put) //KeyValueMapOperations/Put/Value KVM-এ হার্ডকোড করা সিক্রেট লেখা হচ্ছে।
ServiceCallout বেসিক যাচাইকরণের ইউজারনেম //ServiceCallout//Authentication/BasicAuth/UserName ব্যাকএন্ড যাচাইকরণের জন্য হার্ডকোড করা ব্যবহারকারীর নাম।
ServiceCallout প্রাথমিক যাচাইকরণ পাসওয়ার্ড** //ServiceCallout//Authentication/BasicAuth/Password ব্যাকএন্ড যাচাইকরণের জন্য হার্ডকোড করা পাসওয়ার্ড।
SAMLAssertion প্রাইভেট কী ভ্যালু //SAMLAssertion//PrivateKey/Value ডিক্রিপশন/স্বাক্ষর করার জন্য ব্যক্তিগত কী।
SAMLAssertion প্রাইভেট কী পাসওয়ার্ড //SAMLAssertion//PrivateKey/Password প্রাইভেট কী ডিক্রিপ্ট করার পাসওয়ার্ড।

কাস্টম মাস্ক

আপনি PII হিসেবে শনাক্ত করেছেন কিন্তু ডিফল্ট মাস্কের (যেমন, নীতিতে কাস্টম কনফিগারেশন) আওতায় নেই এমন ফিল্ডের জন্য, XPath এক্সপ্রেশনের (কাস্টম মাস্ক) নিজস্ব তালিকা প্রদান করতে পারেন।

আপনার Edge for Private Cloud সিস্টেমে uapim-connector.properties ফাইলে কনফিগারেশন প্রপার্টি আপডেট করার মাধ্যমে কাস্টম মাস্ক ম্যানেজ করা হয়।

কাস্টম মাস্ক কনফিগার করা

কাস্টম মাস্কিং পাথ যোগ করতে, কানেক্টর কনফিগারেশন ফাইলে conf_uapim_connector.uapim.mask.xpaths প্রপার্টি আপডেট করুন:

  • কনফিগারেশন ফাইলের পাথ: /opt/apigee/customer/application/uapim-connector.properties
  • প্রপার্টি: conf_uapim_connector.uapim.mask.xpaths

আপনি যেসব নির্দিষ্ট এলিমেন্টের ভ্যালু মাস্ক করতে চান, এই প্রপার্টি সেগুলির XPath এক্সপ্রেশনের কমা-সেপারেটেড তালিকা গ্রহণ করে।

কনফিগারেশনের উদাহরণ

কাস্টম ভেরিয়েবল ভ্যালু ও পরিসংখ্যান ফিল্ড মাস্ক করতে, আপনাকে নিম্নলিখিত প্রপার্টি সেট করতে হবে:

conf_uapim_connector.uapim.mask.xpaths=//StatisticsCollector/Statistics/Statistic[@name='caller'],//StatisticsCollector/Statistics/Statistic[@name='location'],//AssignMessage/AssignVariable[Name='password']/Value
XPath এক্সপ্রেশন এলিমেন্ট মাস্ক করা হয়েছে উদ্দেশ্য
//StatisticsCollector/Statistics/Statistic[@name='caller'] পরিসংখ্যানের ভ্যালু (যেখানে name='caller') সংবেদনশীল কলার পরিচয় মাস্ক করে।
//AssignMessage/AssignVariable[Name='password']/Value AssignVariable ভ্যালু (যেখানে Name='password') হার্ডকোড করা পাসওয়ার্ড ভ্যালু মাস্ক করে।

মাস্ক করা নীতি

টার্গেট করা এলিমেন্টের ভ্যালু মাস্ক করা হবে। এই মাস্ক করা কন্টেন্ট API হাবে আপলোড করা হয়।

নীতি ১-এর উদাহরণ (StatisticsCollector - Masked):

<StatisticsCollector name="publishPurchaseDetails">
  <Statistics>
    <Statistic name="caller" type="string">****</Statistic>
    <Statistic name="location" type="string">****</Statistic>
  </Statistics>
</StatisticsCollector>