এক নজরে
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>