আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন। তথ্য
OWASP-এর শনাক্ত করা নিরাপত্তা সংক্রান্ত দুর্বলতা সমাধান করার জন্য Apigee-এর মধ্যে আপনি যেসব বিভিন্ন পদ্ধতি ব্যবহার করতে পারেন, এই ডকুমেন্টে সেগুলি বর্ণনা করা হয়েছে। Apigee-এর জন্য ডকুমেন্ট করা অতিরিক্ত পদ্ধতির জন্য, দেখুন Google Cloud-এ OWASP টপ ১০ ২০২১ প্রশমন বিকল্প।
ভূমিকা
OWASP হল একটি ওপেন কমিউনিটি যা সংস্থাগুলিকে বিশ্বস্ত অ্যাপ্লিকেশন এবং API ডেভেলপ, কেনা এবং রক্ষণাবেক্ষণে সাহায্য করার জন্য তৈরি করা হয়েছে। OWASP API নিরাপত্তা প্রজেক্টের মাধ্যমে, OWASP ওয়েব অ্যাপ্লিকেশন ও REST API-এর সবচেয়ে গুরুত্বপূর্ণ নিরাপত্তা সংক্রান্ত ঝুঁকি প্রকাশ করে এবং সেইসব ঝুঁকি সমাধানের জন্য সাজেশন দেয়।
এই ডকুমেন্টে, OWASP-এর ২০১৯ সালের সেরা দশটি API নিরাপত্তা সংক্রান্ত হুমকির মাধ্যমে চিহ্নিত করা সাধারণ API-ভিত্তিক আক্রমণ থেকে রক্ষা করার পদ্ধতি সম্পর্কে আলোচনা করা হবে। লেটেস্ট তালিকায় হাইলাইট করা সবচেয়ে গুরুতর হুমকির মধ্যে একটি সাধারণ থিম হল, যাচাইকরণ ও অনুমোদন কন্ট্রোল ঠিকমতো প্লেস না করার ফলে হওয়া সমস্যা। যেমন, ক্লায়েন্ট অ্যাপের মধ্যে API অনুরোধের মাধ্যমে পাওয়া ডেটা ফিল্টার করার উপর নির্ভর করা। এটি অ্যাক্সেস কন্ট্রোল এনফোর্সমেন্ট পারফর্ম করার জন্য কনজিউমিং ক্লায়েন্ট অ্যাপের উপর নির্ভর করার অ্যান্টি-প্যাটার্ন ব্যবহার করে করা হয়।
API ইকোসিস্টেমের দ্রুত বৃদ্ধি অব্যাহত থাকার সাথে সাথে, API-এর অপব্যবহার এবং অপপ্রয়োগের ফলে আক্রমণকারীদের দ্বারা ডেটা চুরি করা, দুর্ভাগ্যবশত, আজকের দিনে সবচেয়ে সাধারণ অ্যাটাক ভেক্টরগুলির মধ্যে একটি হয়ে উঠছে। নিরাপত্তা হল Apigee-এর মূল অগ্রাধিকার এবং এর মধ্যে উন্নত API Ops-এর মতো একাধিক নতুন ফিচার রয়েছে, যার মধ্যে অস্বাভাবিকতা শনাক্ত করার ফিচার অন্তর্ভুক্ত। তবে, আপনার API-তে সফল অ্যাটাকের সম্ভাবনা কমাতে, Apigee-এর নিরাপত্তা ফিচারগুলি সঠিকভাবে ডিজাইন ও প্রয়োগ করা খুবই গুরুত্বপূর্ণ।
গ্রাহক অ্যাপ্লিকেশনকে অবিশ্বস্ত বা "পাবলিক" হিসেবে বিবেচনা করা উচিত, কারণ আপনি যে প্ল্যাটফর্মে অ্যাপটি চলছে সেটি কন্ট্রোল করেন না। ধরে নিন যে কোনও পাবলিক অ্যাপের নিরাপত্তা লঙ্ঘন করা যেতে পারে এবং করা হবে, তাই অ্যাক্সেস কন্ট্রোল (API1, API5) প্রয়োগ করা, উত্তর ডেটা (API6) ফিল্টার করা বা API কী বা অ্যাক্সেস টোকেনের মতো ক্লায়েন্ট সিক্রেট (API2) নিরাপদে স্টোর করার জন্য সেগুলির উপর ভরসা করা যায় না। ২০১৯ সালের OWASP টপ ১০ পরীক্ষা করে কিছু সাজেশন পাওয়া গেছে:
- আপনার API কোন ধরনের ক্লায়েন্ট অ্যাপ ব্যবহার করবে (SPA, মোবাইল বা ব্রাউজার-ভিত্তিক) তা নির্ধারণ করুন এবং উপযুক্ত যাচাইকরণ, অনুমোদন ও নিরাপত্তা প্যাটার্ন ডিজাইন করুন।
- সবসময় “পাবলিক ক্লায়েন্ট” OAuth বা OpenID Connect ফ্লো ব্যবহার করুন (PKCE ব্যবহার করার জন্য অত্যন্ত সাজেস্ট করা হয়)
- আপনার অ্যাপের বিজনেস লজিক সম্পর্কে ভাবুন, প্রথমে OpenAPI স্পেসিফিকেশন নির্ধারণ করুন এবং Apigee-এর মধ্যে ব্যাকএন্ড থেকে পাওয়া সব ডেটা ফিল্টার করতে আপনার API প্রক্সি ডিজাইন করুন। এটি পারফর্ম করার জন্য কখনই ডাউনস্ট্রিম অ্যাপের কোড লজিকের উপর নির্ভর করবেন না!
- ব্যবহারকারী-নির্দিষ্ট PII থাকা সব ডেটা অনুরোধ ফিল্টার করে শুধুমাত্র আপনার ব্যাকএন্ড থেকে অনুরোধকারী ব্যবহারকারীর ডেটা অনুমোদন করুন।

API1:2019 ব্রোকেন অবজেক্ট লেভেল অনুমোদন
হুমকির বিবরণ
অবজেক্ট অ্যাক্সেস অনুরোধের অপর্যাপ্ত অনুমোদন যাচাইকরণ, অ্যাটাকারকে অ্যাক্সেস টোকেন আবার ব্যবহার করে একটি অননুমোদিত অ্যাকশন পারফর্ম করার অনুমতি দেয়। অনুমোদন যাচাইকরণের অনুপযুক্ত কনফিগারেশনের কারণে এই হুমকি তৈরি হয়। Apigee-তে VerifyApiKey, OAuth এবং JSON Web Token (JWT) নীতি আছে, যা এই দুর্বলতা থেকে রক্ষা করতে সাহায্য করে, তবে এই নীতিগুলি সঠিকভাবে কনফিগার করা না হলে এই হুমকি প্রতিরোধ করা যাবে না।
এই হুমকি প্রতিরোধ করতে, অ্যাপ্লিকেশন ডেভেলপমেন্ট এবং নিরাপত্তা টিমের মধ্যে ঘনিষ্ঠ সহযোগিতা থাকা গুরুত্বপূর্ণ। অনুমোদন স্বভাবতই একটি জটিল বিষয় এবং কার্যকর ফাইন-গ্রেনড অনুমোদনের জন্য অ্যাপ্লিকেশনের ব্যবসায়িক যুক্তি সম্পর্কে গভীর জ্ঞান প্রয়োজন।
Apigee প্রয়োগের দৃষ্টিকোণ থেকে বিবেচনা করার জন্য দুটি প্রধান দিক রয়েছে:
- অ্যাক্সেস টোকেন ইন্টিগ্রিটি
- অ্যাক্সেস কন্ট্রোল এনফোর্সমেন্ট
অ্যাক্সেস টোকেন ইন্টিগ্রিটি
অনুরোধকারী ক্লায়েন্টের দেওয়া টোকেনটি সঠিক OAuth বা OpenID Connect ফ্লো এবং উপযুক্ত ক্রেডেনশিয়াল যাচাইকরণ বা সাইনিং মেকানিজম ব্যবহার করে টেম্পার করা হয়নি তা যাচাই করা অত্যন্ত গুরুত্বপূর্ণ। Apigee, সাধারণত ব্যবহৃত সব OAuth ফ্লো-এর সাথে কাজ করে।
Apigee অ্যাক্সেস টোকেন যাচাইকরণ নীতিতে এগুলি অন্তর্ভুক্ত:
- OAuth 2.0 ফ্রেমওয়ার্ক ব্যবহার করার সময় অ্যাক্সেস টোকেন, রিফ্রেশ টোকেন বা রেসপন্স ফ্লো টোকেন, এর মধ্যে PKCE সহ ক্লায়েন্ট চ্যালেঞ্জ ব্যবহার করা অন্তর্ভুক্ত থাকে যাতে কোনও অ্যাটাকার অ্যাক্সেস টোকেন ক্যাপচার করতে না পারে
- OpenID Connect 1.0 JSON ওয়েব টোকেন এবং JSON ওয়েব সিগনেচার
- যাচাই করা হচ্ছে SAML অ্যাসারশন
- যাচাই করা হচ্ছে API কী
- কি-হ্যাশ মেসেজ যাচাইকারী কোড (HMAC) যাচাইকরণ
অ্যাক্সেস কন্ট্রোল এনফোর্সমেন্ট
অ্যাক্সেস টোকেনের মেয়াদ যাচাই করা হয়ে গেলে, অ্যাক্সেস কন্ট্রোল এনফোর্সমেন্ট নীতি প্রয়োগ করা অত্যন্ত গুরুত্বপূর্ণ। এর মাধ্যমে প্রতিটি ইনকামিং API অনুরোধকে অনুমোদন টোকেনের অ্যাক্সেস এনটাইটেলমেন্টের সাথে তুলনা করে দেখা হয়।
অনুমোদন সংক্রান্ত নীতি যাচাই ও প্রয়োগ করার জন্য Apigee দুটি প্রধান পদ্ধতি প্রদান করে:
- ইন্টার্নাল: কন্ডিশনাল ফ্লো ব্যবহার করে কোনও অনুমোদন টোকেন থেকে ফ্লো ভেরিয়েবল হিসেবে এক্সট্র্যাক্ট করা দাবি অনুযায়ী অ্যাক্সেস অনুরোধ মূল্যায়ন করা
- প্রতিনিধিত্ব করা: থার্ড-পার্টি অ্যাক্সেস ম্যানেজমেন্ট সলিউশনে পরিষেবা কলআউট ব্যবহার করা

ইন্টার্নাল পদ্ধতি (উপরে ছবিতে দেখানো হয়েছে) সাজেস্ট করা হয় যখন অ্যাক্সেস কন্ট্রোল মডেল তুলনামূলকভাবে সহজ হয়। যেমন, অ্যাক্সেস টোকেন থেকে এক্সট্র্যাক্ট করা দাবি যদি সরাসরি কোনও API অবজেক্টের অনুরোধ মূল্যায়ন ও অনুমোদন করতে ব্যবহার করা যায়।
OAuth বা JWT নীতির জন্য উপলভ্য ফ্লো ভেরিয়েবল ব্যবহার করে কন্ডিশনাল ফ্লো স্টেটমেন্টের মাধ্যমে অ্যাক্সেস সংক্রান্ত অনুরোধ মূল্যায়ন করুন।

প্রতিনিধিত্ব করা সংক্রান্ত পদ্ধতি (উপরে দেওয়া ছবিতে দেখানো হয়েছে) সাজেস্ট করা হয় যখন অ্যাক্সেস টোকেন থেকে এক্সট্র্যাক্ট করা দাবি সরাসরি ব্যাকএন্ড অবজেক্টে API অনুরোধ অনুমোদন করার জন্য ব্যবহার করা যায় না অথবা আরও জটিল OAuth ফ্লোয়ের ধরনের জন্য অ্যাক্সেস টোকেন পাওয়ার জন্য অনুমোদন সার্ভারে আলাদা কল করার প্রয়োজন হয়।
পরিষেবা কলআউট নীতি ব্যবহার করে, থার্ড পার্টি পরিষেবা থেকে অনুমোদনের নীতি সংক্রান্ত সিদ্ধান্ত নেওয়ার অনুরোধ করা অথবা অনুরোধকারী এজেন্ট সম্পর্কে অতিরিক্ত দাবি সংক্রান্ত তথ্য পাওয়া সম্ভব। এর পরে, কন্ডিশনাল ফ্লো ব্যবহার করে অ্যাক্সেস কন্ট্রোল সংক্রান্ত সিদ্ধান্ত নেওয়া যায়
API2:2019 ব্যবহারকারীর পরিচয় যাচাইকরণ সংক্রান্ত সমস্যা
হুমকির বিবরণ
ব্যবহারকারীর পরিচয় যাচাইকরণ সংক্রান্ত নীতি সঠিকভাবে প্রয়োগ করা না হলে, যাচাইকরণ প্রয়োগ করার সময় ত্রুটিগুলির সুযোগ নিয়ে আক্রমণকারীরা প্রকৃত ব্যবহারকারীর ছদ্মবেশ ধারণ করতে পারে। যাচাইকরণ পদ্ধতি প্রয়োগ করার সময় যাচাইকরণ সম্পর্কিত কিছু নীতি মনে রাখতে হবে, যেমন:
- সবসময় ব্যবহারকারী এজেন্ট (অ্যাপ) ও অনুরোধকারী ব্যবহারকারী, দু'জনকেই যাচাই করুন
- প্রতিনিধিত্বমূলক যাচাইকরণ ও অনুমোদন প্যাটার্ন ব্যবহার করুন এবং API অনুরোধের মধ্যে সরাসরি পাসওয়ার্ড পাস করা এড়িয়ে চলুন
- অ্যাক্সেস ক্রেডেনশিয়ালের স্বাক্ষর সবসময় যাচাই করুন এবং নিশ্চিত করুন যে ব্যবহৃত সব অ্যাক্সেস ক্রেডেনশিয়ালের একটি নির্দিষ্ট মেয়াদ শেষ হওয়ার সময় আছে
- কোটা সেট করে এবং Apigee Sense ব্যবহার করে বট-পরিচালিত ব্রুট ফোর্স অ্যাটাক শনাক্ত ও তার উত্তর দিয়ে ব্রুট ফোর্স অ্যাটাক প্রতিরোধ করা
আউটসাইড-ইন প্যারাডাইমের অধীনে, API ডিজাইন আপনার ব্যাকএন্ড সিস্টেমে থাকা বিদ্যমান ডেটার স্ট্রাকচারের পরিবর্তে ডেটার জন্য গ্রাহকদের ব্যবহারের কেসকে কেন্দ্র করে তৈরি করা হয় এবং এক্সটার্নাল গ্রাহকদের জন্য API ডিজাইন করার সময় নিরাপত্তা একটি গুরুত্বপূর্ণ উপাদান। ব্যাকএন্ড সিস্টেম সাধারণত পাবলিক নেটওয়ার্কে অ্যাক্সেস দেওয়ার জন্য যথেষ্ট শক্তিশালী যাচাইকরণ প্রয়োগ করার মাধ্যমে তৈরি করা হয় না। এইসব ক্ষেত্রে Apigee, পরিচয় ও অ্যাক্সেস ম্যানেজমেন্ট সংক্রান্ত সমাধানের সাথে মিলিত হয়ে, এই হুমকির বিরুদ্ধে সুরক্ষা প্রদান করার জন্য শক্তিশালী সমাধান অফার করতে পারে।
এখানে বিবেচনা করার জন্য কয়েকটি প্রধান বিষয় রয়েছে, যেগুলি পরবর্তী বিভাগে আলোচনা করা হবে:
- নিরাপত্তা ডিজাইন: Apigee ফিচারের সম্পূর্ণ ব্যবহার করে পরিচয় যাচাইকরণের প্যাটার্ন প্রয়োগ করা
- পরিচালনা: ডিজাইন করা যাচাইকরণ প্যাটার্ন যাতে সব প্রকাশিত API প্রোডাক্ট জুড়ে ধারাবাহিকভাবে সঠিকভাবে ব্যবহার করা হয় তা নিশ্চিত করা
- অপারেশনাল নিরাপত্তা: সন্দেহজনক বা অস্বাভাবিক আচরণ শনাক্ত করতে পারা এবং যাচাই করা API প্রক্সি এড়িয়ে যাওয়া বা জোর করে অ্যাক্সেস করার চেষ্টা
নিরাপত্তা ডিজাইন
নিরাপত্তা সংক্রান্ত ডিজাইনের উদ্দেশ্য হল, থার্ড-পার্টি পরিচয় টুল সহ যাচাইকরণ ফ্লো এবং ইন্টিগ্রেশন সঠিকভাবে প্রয়োগ করা। নিরাপত্তা ডিজাইন একটি গুরুত্বপূর্ণ ধাপ এবং এটি শুরু হয় আপনার API এন্ডপয়েন্ট ব্যবহার করবে এমন অ্যাপের ধরনের উপর ভিত্তি করে ব্যবহার করার জন্য সঠিক ধরনের ডেলিগেট করা প্রমাণীকরণ ফ্লো বোঝার মাধ্যমে। পরবর্তী ধাপ হল, আপনার পরিচয় সংক্রান্ত টিমের সাথে মিলে, আপনার পরিচয় সংক্রান্ত সমাধানের সাথে প্রয়োগ করার জন্য ইন্টিগ্রেশন প্যাটার্ন নির্ধারণ করা।
OpenID Connect এবং OAuth RFC-তে ডেলিগেট করা যাচাইকরণ ও অনুমোদন ফ্লো এবং এইসব ফ্লোতে অংশগ্রহণকারী অ্যাক্টরদের একটি বিস্তৃত সংখ্যা প্রদান করা হয়। এটি একটি জটিল বিষয় এবং এটি আশ্চর্যের কিছু নয় যে, ব্রোকেন অথেন্টিকেশন হল OWASP API-এর সবচেয়ে বড় ঝুঁকির মধ্যে একটি। পরিচয় সংক্রান্ত স্ট্যান্ডার্ডের সঠিক প্রয়োগের ব্যাপারে বিস্তারিত প্রাথমিক তথ্য প্রদান করা এই ডকুমেন্টের আওতার বাইরে, তবে Apigee-এর কাছে OAuth ফ্লো আরও ভালোভাবে বোঝার জন্য অনেক অতিরিক্ত রিসোর্স আছে, যেমন এই ইবুক ও ওয়েবকাস্ট এবং প্রয়োগের উদাহরণ।
যাচাইকরণ সংক্রান্ত নীতি
পরিচয় ও যাচাইকরণ সংক্রান্ত উদ্বেগ দূর করতে সাহায্য করে এমন Apigee নীতিগুলির মধ্যে এগুলি অন্তর্ভুক্ত:
- OAuth 2.0 ফ্রেমওয়ার্ক ব্যবহার করার সময় অ্যাক্সেস টোকেন, রিফ্রেশ টোকেন বা রেসপন্স ফ্লো টোকেন যাচাই করা বা জেনারেট করা হয়। মনে রাখবেন: টেকনিক্যালি, OAuth হল একটি ডেলিগেট করা অনুমোদনের ফ্রেমওয়ার্ক, তবুও এটি ডেলিগেট করা বা ফেডারেটেড যাচাইকরণ প্যাটার্নে ব্যাপকভাবে ব্যবহৃত হয়
- যাচাই করা, ডিকোড করা এবং জেনারেট করা OpenID Connect 1.0 JSON ওয়েব টোকেন ও JSON ওয়েব সিগনেচার
- জেনারেট করা এবং যাচাই করা SAML অ্যাসার্শন
- যাচাই করা হচ্ছে API কী
- কি-হ্যাশ মেসেজ যাচাইকারী কোড (HMAC) যাচাইকরণ
ট্রাফিক ম্যানেজমেন্ট
নিম্নলিখিত Apigee ট্রাফিক ম্যানেজমেন্ট ফিচার, জোর করে পাসওয়ার্ড অনুমান করার চেষ্টা থেকে রক্ষা করতে সাহায্য করে:
- API প্রক্সিতে সামগ্রিক রোলিং গড় রেট লিমিট সেট করার জন্য স্পাইক অ্যারেস্ট নীতি
- কোটা নীতি, অ্যাপ কী, ডেভেলপার বা API প্রোডাক্ট কোটা দ্বারা নির্ধারিত কোটার উপর ভিত্তি করে API প্রক্সিগুলিতে ফাইন-গ্রেনড রেট লিমিট সেট করা
- ক্যাশিং সংক্রান্ত নীতি, সেগুলির নির্ধারিত মেয়াদ শেষ হওয়ার সময়ের উপর ভিত্তি করে স্টোর করা অ্যাক্সেস টোকেন, সেইসাথে ক্যাশে করা ক্রেডেনশিয়াল বাতিল করার ক্ষমতা (যেমন, এমন পরিস্থিতি যেখানে কোনও বৈধ অ্যাক্সেস টোকেন আপোস করা হয়েছে)
পরিচালনা
নিরাপত্তা হল একটি চলমান প্রক্রিয়া, এটি "সেট করে ভুলে যাওয়া" প্রজেক্ট নয় এবং নিরাপত্তাজনিত লঙ্ঘনের অন্যতম প্রধান কারণ হল ভুল কনফিগারেশন। একবার প্রমাণীকরণ ফ্লো, পরিচয় ইন্টিগ্রেশন প্যাটার্ন, এবং প্রমাণীকরণ-সম্পর্কিত ট্রাফিক ম্যানেজমেন্ট নীতি নির্ধারণ করা হয়ে গেলে, সেগুলি সঠিকভাবে এবং সামঞ্জস্যপূর্ণভাবে প্রয়োগ করা অত্যন্ত গুরুত্বপূর্ণ।
ইমপ্লিমেন্টেশন ইন্টিগ্রিটি নিশ্চিত করতে এবং ভুল কনফিগারেশন সংক্রান্ত সমস্যা প্রতিরোধ করতে Apigee অনেক ফিচার ও টুল প্রদান করে।
ভূমিকা-ভিত্তিক অ্যাক্সেস কন্ট্রোল (RBAC)
আপনি বড় কোনও এন্টারপ্রাইজ বা ছোট কোনও স্টার্ট-আপ যাই হোন না কেন, ভুল কনফিগারেশন এড়ানোর জন্য নিশ্চিত করতে হবে যে শুধুমাত্র সঠিক ব্যক্তি এবং টিমই API প্রক্সি কনফিগারেশন অ্যাক্সেস ও পরিবর্তন করতে পারবেন। API প্রোগ্রাম আপনার সংস্থার বিভিন্ন বিভাগের টিম সমর্থন করে। আপনার API জার্নির অংশ হিসেবে প্রতিটি টিমকে তাদের কাজ করার জন্য প্রয়োজনীয় অনুমতিই শুধুমাত্র দেওয়া অত্যন্ত জরুরি।
Apigee আপনাকে ভূমিকা-ভিত্তিক অ্যাক্সেস ম্যানেজ করার ফিচার প্রদান করে। এর মাধ্যমে আপনি ব্যবহারকারীদের আগে থেকে সংজ্ঞায়িত ভূমিকা অ্যাসাইন করতে পারেন অথবা আপনার API টিমের জন্য উপযুক্ত কাস্টম ভূমিকা তৈরি করতে পারেন। আপনার API প্রোগ্রাম নিরাপদে স্কেল করার জন্য ভূমিকা নির্ধারণ ও ম্যানেজ করা অত্যন্ত গুরুত্বপূর্ণ। এছাড়াও, আপনার বিদ্যমান কর্পোরেট ডিরেক্টরির সাথে ইন্টিগ্রেট করতে এবং Apigee-এর মধ্যে অ্যাডমিনিস্ট্রেটর ক্রেডেনশিয়ালের দ্বিতীয় সেট ম্যানেজ করার প্রয়োজনীয়তা কমাতে, আপনি ফেডারেশন ব্যবহার করতে পারেন।
শেয়ার করা ফ্লো
শেয়ার করা ফ্লো আপনাকে পুনর্ব্যবহারযোগ্য অবজেক্টে নীতি ও রিসোর্স নির্ধারণ করতে দেয় যা API প্রক্সি জুড়ে প্রয়োগ করা যেতে পারে। যেমন, API ব্যবহারকারী অ্যাপের ধরনের উপর ভিত্তি করে আপনার নিরাপত্তা টিমের সাথে মিলেমিশে একাধিক প্রমাণীকরণ ডিজাইন প্যাটার্ন ডিজাইন করতে পারেন। কোনও API ডেভেলপারকে এটি আবার ব্যবহার করার জন্য পরিচয় সংক্রান্ত বিশেষজ্ঞ হতে হবে না, তাকে শুধু ফ্লো কলআউট নীতি ব্যবহার করে তার আগে থেকে থাকা API প্রক্সি কনফিগারেশনে যোগ করার জন্য সঠিক শেয়ার করা ফ্লো জানতে হবে।

ছবি: শেয়ার করা ফ্লো হল নীতি ও শর্তসাপেক্ষ লজিকের এমন একটি বান্ডেল যা আপনি কম্পোজিট প্যাটার্ন বজায় রাখার জন্য বারবার ব্যবহার করতে পারেন।
অপারেশনাল নিরাপত্তা
আপনার API-গুলি প্রোডাকশনে আসার পরে, বেসলাইন ট্রাফিক ম্যানেজমেন্টের সাথে সঠিক যাচাইকরণ প্যাটার্ন ব্যবহার করা হচ্ছে কিনা এবং আপনার SecOps টিমকে অবশ্যই সন্দেহজনক অ্যাক্টিভিটি মনিটর করতে এবং তার উত্তর দিতে হবে। যাচাইকরণ ক্রেডেনশিয়াল আপস করার চেষ্টা থেকে এই অ্যাক্টিভিটি শুরু হয়।
Apigee Sense
Apigee Sense আপনার API-কে অবাঞ্ছিত অনুরোধ ট্রাফিক থেকে রক্ষা করে, এর মধ্যে ক্ষতিকারক ক্লায়েন্টদের থেকে আসা অ্যাটাকও অন্তর্ভুক্ত। Apigee Sense API অনুরোধ ট্রাফিক বিশ্লেষণ করে, এমন প্যাটার্ন শনাক্ত করে যা অবাঞ্ছিত অনুরোধের প্রতিনিধিত্ব করতে পারে। এই বিশ্লেষণ ব্যবহার করে, আপনি অবাঞ্ছিত অনুরোধ করা ক্লায়েন্টদের শনাক্ত করতে পারবেন, তারপরে সেইসব অনুরোধ অনুমোদন, ব্লক বা ফ্ল্যাগ করার জন্য অ্যাকশন নিতে পারবেন। Sense-এর ভবিষ্যতের ফিচারের মধ্যে সন্দেহজনক ট্রাফিকে অটোমেটিক ReCAPTCHA যাচাইকরণ চালু করার ক্ষমতা অন্তর্ভুক্ত থাকবে।

Apigee Sense-এর সাহায্যে, আপনি এইসব অনুরোধ প্যাটার্ন থেকে আপনার API সুরক্ষিত রাখতে পারবেন:
- মানুষের আচরণের সাথে মিশে যায় এমন অটোমেটিক আচরণ
- একই IP থেকে বারবার চেষ্টা করা
- অস্বাভাবিক সমস্যার হার
- ক্লায়েন্টের সন্দেহজনক অনুরোধ
- ডেটা ক্রলিং
- কী হার্ভেস্টিং ও যাচাইকরণ সংক্রান্ত ব্রুট ফোর্স অ্যাটাক
- অ্যাক্টিভিটি বার্স্ট
- ভৌগোলিক প্যাটার্ন
উন্নত API অপারেশন
Sense বিশেষভাবে বট-এর মতো হুমকি শনাক্ত করা ও তার উত্তর দেওয়ার জন্য ডিজাইন করা হলেও, Advanced API Ops-এ অস্বাভাবিকতা শনাক্তকরণ ও উন্নত অ্যালার্ট সংজ্ঞা, দুটিই অন্তর্ভুক্ত।
আপনার পুরনো API ডেটাতে আর্টিফিশিয়াল ইন্টেলিজেন্স (AI) এবং মেশিন লার্নিং (ML) মডেল প্রয়োগ করে অসঙ্গতি শনাক্তকরণ কাজ করে। এর ফলে, আপনার API সংক্রান্ত সমস্যার সমাধান করার জন্য প্রয়োজনীয় গড় সময় (MTTR) কমিয়ে এবং আপনার প্রোডাক্টিভিটি উন্নত করার জন্য, আপনি ভাবেননি এমন পরিস্থিতি সম্পর্কেও অ্যানোমালি শনাক্তকরণ রিয়েল-টাইমে অ্যালার্ট পাঠাতে পারে।
Advanced API Ops, আগে থেকে থাকা API মনিটরিং সতর্কতা মেকানিজমের উপর ভিত্তি করে নিম্নলিখিত উন্নত সতর্কতার ধরন যোগ করে:
- অস্বাভাবিকতা সংক্রান্ত সতর্কতা। আপনাকে নিজে থেকে আগে থেকেই নির্ধারণ করতে না হয়ে, Edge ট্রাফিক ও পারফর্ম্যান্স সংক্রান্ত সমস্যা শনাক্ত করে। তারপরে, আপনি এইসব অসঙ্গতি সম্পর্কে অ্যালার্ট পাঠাতে পারবেন
- TLS মেয়াদ শেষ হওয়ার সতর্কতা। TLS সার্টিফিকেট মেয়াদ শেষ হওয়ার কাছাকাছি চলে এলে বিজ্ঞপ্তি পাঠায়
API3:2019 অতিরিক্ত ডেটা এক্সপোজার
হুমকির বিবরণ
প্রকাশিত API-তে প্রয়োজনীয় ডেটার চেয়ে বেশি ডেটা থাকতে পারে, প্রয়োজনীয় ফিল্টারিংয়ের জন্য ক্লায়েন্ট অ্যাপের উপর নির্ভর করতে হয়। আক্রমণকারী যদি সরাসরি অন্তর্নিহিত API-কে কোয়েরি করে, তাহলে সে সংবেদনশীল ডেটা অ্যাক্সেস করতে পারবে।
API ডিজাইন সংক্রান্ত Apigee-এর “আউটসাইড-ইন” ডিজাইন সংক্রান্ত নীতির মধ্যে একটি হল ডেটা পার্সিমনি। আপনার অ্যাপ UI-এর মধ্যে প্রয়োজনীয় ডেটা API-এর মাধ্যমে এক্সপোজ করার জন্য আপনার UX ডিজাইনার ও ডেভেলপারদের সাথে কাজ করুন। ব্যাকএন্ড সিস্টেম সর্বজনীন ব্যবহারের প্যাটার্নের জন্য তৈরি করা হয়নি, তাই Apigee-এর সাথে API ফার্স্ট ডিজাইনের প্রথম কাজগুলির মধ্যে একটি হল আপনার গ্রাহক ও ডেভেলপারদের জন্য দুর্দান্ত API প্রোডাক্ট প্রদান করতে প্রয়োজনীয় ন্যূনতম ডেটা প্রকাশ করা।
Apigee-এর ডিজাইন সংক্রান্ত নীতিগুলির মধ্যে আরেকটি হল পুনর্ব্যবহারযোগ্যতা। নিরাপত্তা সংক্রান্ত বিষয় বাদ দিলে, API-এর মাধ্যমে প্রদান করা ডেটা ফিল্টার করার জন্য কোনও অ্যাপের উপর নির্ভর করলে, আপনি যে প্ল্যাটফর্মের জন্য অ্যাপ ডেভেলপ করেন, সেটির সবকটিতেই সেই ফিল্টারিং লজিক পোর্ট করতে হবে।
নিরাপত্তার দৃষ্টিকোণ থেকে, এই হুমকিটি কোনও অ্যাপকে অনুমোদন প্রয়োগ করার দায়িত্ব দেওয়ার ফলে হয়। তবে, প্রায়শই এমন প্ল্যাটফর্ম বা OS-এ এটি ঘটে যার উপর আপনার কোনও নিয়ন্ত্রণ থাকে না। অননুমোদিত ডেটা অ্যাক্সেস এড়াতে, আমরা ইতিমধ্যেই API1 এবং API2-এ সঠিকভাবে প্রয়োগ করা যাচাইকরণ ও অনুমোদনের গুরুত্ব পরীক্ষা করেছি।
পরবর্তী বিভাগে কীভাবে:
- ডেটা এক্সপোজার কমানোর জন্য ব্যাকএন্ড পরিষেবায় অনুরোধ ও উত্তর আবার লেখা
- আপনার ব্যাকএন্ড পরিষেবা সম্পর্কে সংবেদনশীল এনভায়রনমেন্ট সংক্রান্ত তথ্য অ্যাটাকারদের কাছে প্রকাশ করা থেকে আটকাতে, ফল্ট হ্যান্ডলিং প্রয়োগ করুন
উত্তর ও অনুরোধ আবার লেখা
ব্যাকএন্ড সিস্টেম সাধারণত পাবলিক অ্যাপে বা বিশ্বাসযোগ্য নয় এমন পাবলিক নেটওয়ার্কে ব্যবহারের জন্য ডিজাইন করা হয় না। Apigee Edge আপনাকে পাবলিক API প্রোডাক্ট ডেপ্লয় করার সুবিধা দিতে ডিজাইন করা হয়েছে। এটি আপনার ব্যাকএন্ডকে অতিরিক্ত ডেটা এক্সপোজার থেকে রক্ষা করে।
এটি করার জন্য, Apigee তিনটি মূল নীতি ব্যবহার করে:
- মেসেজ অ্যাসাইন করা
- কোড কলআউট
- সমস্যা ম্যানেজ করা
মেসেজ নীতি অ্যাসাইন করা
API প্রক্সি ফ্লো চলাকালীন অ্যাসাইন মেসেজ নীতি পরিবর্তন করে বা নতুন অনুরোধ ও উত্তর মেসেজ তৈরি করে। নীতিটি আপনাকে সেইসব মেসেজের উপর নিম্নলিখিত অ্যাকশন নিতে দেয়:
- যোগ করুন মেসেজে নতুন ফর্ম প্যারামিটার, হেডার বা কোয়েরি প্যারামিটার
- কপি করুন একটি মেসেজ থেকে অন্য মেসেজে আগে থেকেই থাকা প্রপার্টি
- সরিয়ে দিন মেসেজ থেকে হেডার, কোয়েরি প্যারামিটার, ফর্ম প্যারামিটার এবং/অথবা মেসেজ পেলোড
- সেট করুন মেসেজে আগে থেকে থাকা প্রপার্টির ভ্যালু
অ্যাসাইন মেসেজের মাধ্যমে, আপনি সাধারণত অনুরোধ বা উত্তরের প্রপার্টি যোগ করেন, পরিবর্তন করেন বা সরিয়ে দেন। তবে, আপনি কাস্টম অনুরোধ বা উত্তর মেসেজ তৈরি করতে Assign Message ব্যবহার করতে পারেন এবং কাস্টম অনুরোধ মেসেজ তৈরি করুন নিবন্ধে বর্ণিত বিকল্প টার্গেটে এটি পাস করতে পারেন।
কাস্টম কোড সহ জটিল রিরাইটিং
জটিল ডেটা ম্যানেজ করা এবং এমন নিয়ম আবার লেখা যার জটিলতা অ্যাসাইন মেসেজ নীতির ক্ষমতার বাইরে, সেইসব ক্ষেত্রে আপনি JavaScript, Java বা Python-এর মতো পদ্ধতিগত ভাষা ব্যবহার করতে পারেন। আপনি এপিআই প্রক্সিতে কাস্টম কোড যোগ করতে এবং তারপরে প্রক্সি ফ্লোতে যোগ করা নীতি থেকে এটি কল করতে পারেন। প্রোসিডিওরাল কোডের জন্য সহায়তা এমনভাবে ডিজাইন করা হয়েছে যাতে আপনি ফ্লো ভেরিয়েবল, ফল্ট এবং অনুরোধ ও উত্তরের বডির জটিল হ্যান্ডলিং সহজে প্রয়োগ করতে পারেন।
প্রোসিডিওরাল কোডের মাধ্যমে আপনি:
- অনুরোধ ও উত্তরের ভ্যালুর মতো জটিল বডি ভ্যালু তৈরি বা ম্যানিপুলেট করা।
- URL আবার লেখা, যেমন টার্গেট এন্ডপয়েন্ট URL আড়াল করা।
Apigee Edge-এ কাজ করে এমন ভাষার জন্য আলাদা নীতি অন্তর্ভুক্ত থাকে: JavaScript নীতি, Java কলআউট নীতি এবং Python স্ক্রিপ্ট নীতি।
সমস্যা ম্যানেজ করা
Apigee আপনাকে Raise Fault ধরনের নীতি ব্যবহার করে কাস্টম ব্যতিক্রম হ্যান্ডেল করার সুবিধা দেয়। অ্যাসাইন মেসেজ নীতির একটি ধরন হল 'রেজ ফল্ট' নীতি, যা আপনাকে সমস্যার শর্তের উত্তরে কাস্টম ফল্ট রেসপন্স তৈরি করতে দেয়।
শেয়ার করা ফ্লো
শেয়ার করা ফ্লো ফল্ট মেসেজের স্ট্যান্ডার্ডাইজেশন প্রয়োগ করার জন্য ব্যবহার করা যেতে পারে। যেমন, একই কনফিগার করা নীতি যা ব্যাকএন্ড থেকে নির্দিষ্ট HTTP সমস্যার কোড শনাক্ত করে, তা সমস্যার উত্তরকে আবার লিখে সাধারণ সমস্যার মেসেজ রিটার্ন করতে ব্যবহার করা যেতে পারে।
API4:2019 রিসোর্স ও রেট সীমিত করার অভাব
হুমকির বিবরণ
রেট-লিমিটিং নীতি প্রয়োগ না করলে, অ্যাটাকাররা ব্যাকএন্ডে পরিষেবা বন্ধ করে দেওয়ার মতো আক্রমণ করতে পারে।
নিম্নলিখিত Apigee ফিচার ব্যবহার করে এই হুমকি সহজেই মোকাবিলা করা যেতে পারে:
- ইনবাউন্ড API অনুরোধের উপর ট্রাফিক সীমা আরোপ করার জন্য প্রতিরোধমূলক কন্ট্রোল হিসেবে কোটা ও স্পাইক অ্যারেস্ট নীতি
- বট-পরিচালিত অ্যাটাক ডাইনামিক শনাক্ত ও তার উত্তর দিতে Apigee Sense
- উন্নত API মনিটরিং ও অ্যালার্টিং যা ডিটেকটিভ কন্ট্রোল হিসেবে চলমান DDoS অ্যাটাক সম্পর্কে সতর্ক করে
কোটা ও স্পাইক সহ রেট লিমিটিং আটক নীতি
রেট লিমিটিংয়ের জন্য Apigee দুটি নীতি প্রদান করে:
- স্পাইক অ্যারেস্ট API প্রক্সি লেভেলে সংজ্ঞায়িত একটি সাধারণ নীতি প্রদান করে, যা ব্যাকএন্ডে ইনবাউন্ড অনুরোধের সামগ্রিক সংখ্যাকে সীমিত করে
- কোটা API প্রক্সি বা API প্রোডাক্ট লেভেলে কোটা নীতি প্রয়োগ করার জন্য একটি গ্র্যানুলার নীতি টুল প্রদান করে
স্পাইক অ্যারেস্ট
স্পাইক অ্যারেস্ট নীতি ট্রাফিক বেড়ে যাওয়া থেকে রক্ষা করে। এই নীতি API প্রক্সি দ্বারা প্রসেস করা এবং ব্যাকএন্ডে পাঠানো অনুরোধের সংখ্যাকে থ্রটল করে। এটি পারফর্ম্যান্স ল্যাগ এবং ডাউনটাইম থেকে রক্ষা করে। নীতিতে সংজ্ঞায়িত করা যেতে পারে এমন একটি রোলিং গড় মান ব্যবহার করে এটি করা হয়।
কোটা
Quota নীতি, API প্রক্সি কতগুলি অনুরোধ মেসেজ গ্রহণ করতে পারবে তা কনফিগার করার সুবিধা দেয়। এটি একটি নির্দিষ্ট সময়সীমার মধ্যে করা হয়, যেমন এক মিনিট, এক ঘণ্টা, এক দিন, এক সপ্তাহ বা এক মাস। API প্রক্সি অ্যাক্সেস করা সব অ্যাপের জন্য আপনি একই কোটা সেট করতে পারেন অথবা আপনি এর উপর ভিত্তি করে কোটা সেট করতে পারেন:
- API প্রক্সি থাকা প্রোডাক্ট
- যে অ্যাপ API-এর জন্য অনুরোধ করছে
- অ্যাপ ডেভেলপার
- আরও অনেক মাপকাঠি
এই নীতি স্পাইক অ্যারেস্টের চেয়ে আরও বেশি গ্র্যানুলার এবং সাধারণত এটি স্পাইক অ্যারেস্টের সাথে একসাথে ব্যবহার করা উচিত।
Apigee Sense-এর মাধ্যমে বট শনাক্তকরণ
Apigee Sense-এর সাহায্যে, আপনি নির্দিষ্ট ক্লায়েন্ট, IP রেঞ্জ বা অটোনমাস সিস্টেম সংস্থার থেকে আসা অনুরোধকে স্পষ্টভাবে অনুমতি দিতে, ব্লক করতে বা ফ্ল্যাগ করতে অ্যাকশন নিতে পারবেন। এটি সেইসব ক্লায়েন্ট বা লোকেশনের উপর ভিত্তি করে করা হয় যেগুলি ক্ষতিকর বা সন্দেহজনক আচরণ দেখায়। আপনার API প্রক্সি প্রসেস করার আগে Apigee Edge অনুরোধে এইসব অ্যাকশন প্রয়োগ করে। যেমন, কোনও IP রেঞ্জ বা নির্দিষ্ট ক্লায়েন্ট যদি "ব্রুট গেসর" আচরণ করে, তাহলে তা শনাক্ত করা যেতে পারে, তারপর সেটি ব্লক বা ফ্ল্যাগ করা যেতে পারে।
অ্যাডভান্সড API Ops-এর মাধ্যমে হুমকি শনাক্তকরণ মনিটরিং
কোনও এনভায়রনমেন্ট, প্রক্সি বা অঞ্চলের ট্রাফিক নির্দিষ্ট শতাংশ হারে একটি নির্দিষ্ট সময়সীমার মধ্যে পরিবর্তিত হলে, বিজ্ঞপ্তি পাঠাতে ট্রাফিক সতর্কতা ব্যবহার করুন। DDoS অ্যাটাকের সময় যেমন হয়, সেইভাবে ট্রাফিক আপনার প্রত্যাশিত থ্রুপুট থেকে অনেক বেশি সরে গেলে, এই ফিচার ডায়নামিক পদ্ধতিতে একটি সতর্কতা দেখাতে পারে। এইসব সতর্কতা সহজেই থার্ড-পার্টি লগিং ও মনিটরিং সলিউশনে পাঠানো যেতে পারে।
API5:2019 Broken function level authorization
হুমকির বিবরণ
এই হুমকিটি API1-এর একটি রূপভেদ এবং এটিও একটি অনুমোদন সংক্রান্ত দুর্বলতা। এই হুমকির মাধ্যমে, একজন অ্যাটাকার এমন ফাংশনে অনুরোধ পাঠিয়ে অ্যাকশন পারফর্ম করতে পারে যেগুলি অ্যাক্সেস করার জন্য তিনি অননুমোদিত। যেমন, কোনও API এন্ডপয়েন্ট যদি HTTP অনুরোধের ক্রিয়া যাচাই না করে, তাহলে কোনও আক্রমণকারী GET-এর পরিবর্তে PUT বা DELETE ব্যবহার করে শুধুমাত্র পড়ার জন্য অনুমোদিত ডেটা পরিবর্তন বা মুছে ফেলতে পারে। অথবা, API রিসোর্স URI পাথে যথেষ্ট সীমাবদ্ধ অ্যাক্সেস কন্ট্রোল প্রয়োগ না করার মাধ্যমে, কোনও API এন্ডপয়েন্ট কোনও অ্যাটাকারকে কোনও অনুরোধের পাথ পরিবর্তন করে অন্য ব্যবহারকারীর ডেটা দেখতে দিতে পারে।
এই ধরনের হুমকি, মধ্যস্থতা ও অ্যাবস্ট্রাকশন লেয়ার হিসেবে Apigee ব্যবহার করার গুরুত্ব তুলে ধরে, কারণ অনেক ব্যাকএন্ড সিস্টেম - সর্বজনীন অ্যাক্সেসের জন্য ডিজাইন করা হয়নি - ডিফল্ট হিসেবে একাধিক বিজনেস লজিক ফাংশন এক্সিকিউট করার জন্য একটি এন্ডপয়েন্ট প্রদান করতে পারে, এমনকি এর মধ্যে বেশি ঝুঁকিযুক্ত অ্যাডমিনিস্ট্রেটিভ ফাংশনালিটিও অন্তর্ভুক্ত।
এই হুমকির সম্ভাবনা কমানোর জন্য কনসেপচুয়াল এলিমেন্ট সাধারণত এগুলিতে ভাগ করা হয়:
- কী সুরক্ষিত রাখা হচ্ছে? আপনার API প্রোডাক্ট স্ট্র্যাটেজি সম্পর্কে ভাবুন এবং Apigee API প্রক্সি, প্রোডাক্ট ও অ্যাপ ফিচারের মাধ্যমে এক্সপোজ করা পাথ ও রিসোর্স ডিজাইন করতে RESTful পেশাদার পদ্ধতি ব্যবহার করার সময় ফাংশনের যুক্তিপূর্ণ বিভাজন প্রয়োগ করুন।
- আপনার API রিসোর্স কে অ্যাক্সেস করছে? উচ্চ-স্তরের পার্সোনা নির্ধারণ করুন এবং API1 ও API2-এ বর্ণিত Apigee-এর কিছু যাচাইকরণ ও অনুমোদন সংক্রান্ত ফিচার ব্যবহার করে "সবচেয়ে কম সুবিধা" ডিফল্ট অ্যাক্সেস এনটাইটেলমেন্ট প্রয়োগ করুন।
- আপনার অ্যাক্সেস নীতি কীভাবে প্রয়োগ করা হচ্ছে? URL পাথ ও সব API অনুরোধের ক্রিয়া যাচাই করতে, কন্ডিশনাল ফ্লো ও ফল্ট ব্যবহার করুন।

ছবি: এই ডায়াগ্রাম থেকে বোঝা যায় যে কীভাবে Apigee-তে ফাংশন-লেভেল অনুমোদন প্রয়োগ করা হয়। এর জন্য অ্যাক্সেস টোকেনের মধ্যে এনটাইটেলমেন্ট হিসেবে স্কোপ প্রদান করা হয়।
API প্রক্সি, প্রোডাক্ট ও অ্যাপের মাধ্যমে লজিক্যাল সেগমেন্টেশন
Apigee, API রিসোর্সের লজিক্যাল সেগমেন্টেশন চালু করার জন্য অত্যন্ত নমনীয় টুলকিট প্রদান করে, যা API প্রক্সি-কে যেকোনও সংখ্যক API প্রোডাক্ট-এ বান্ডেল করার অনুমতি দেয়, যা পরিবর্তে আপনার অ্যাপ ডেভেলপাররা ব্যবহার করেন, যারা অ্যাপ রেজিস্টার করতে পারেন যা আপনার API প্রোডাক্ট ব্যবহার করে। এইসব লেভেলে যেকোনও লেভেলে অ্যাক্সেস নীতি নির্ধারণ করা যেতে পারে।
কার্যকরী অনুমোদন ও বিভাগীকরণ এখনও প্রয়োগ করা হয়নি, তাই একটি API প্রোডাক্ট স্ট্র্যাটেজি নির্ধারণ করা অত্যন্ত গুরুত্বপূর্ণ। এই অপরিহার্য ও চলমান প্রক্রিয়ার অংশ হল আপনার API প্রোডাক্টের "কে" ও "কী" নির্ধারণ করা, আপনার গ্রাহক ও ডেভেলপারের দৃষ্টিকোণ থেকে আপনার API রিসোর্স দেখা এবং তারপরে পাথ রিসোর্স ও HTTP ভার্ব লেভেল পর্যন্ত নির্ধারণ করা, ঠিক কী ধরনের অনুরোধ অনুমোদিত হবে।

ছবি: API প্রোডাক্টে বান্ডেল করা API রিসোর্স এক বা একাধিক API থেকে আসতে পারে, তাই আপনি ব্যবহারের লেভেল ও অনুমোদনের সীমা তৈরি করতে রিসোর্সগুলি মিশিয়ে নিতে পারেন।
ফাংশন-লেভেল অ্যাক্সেস OAuth স্কোপ ও JWT দাবি ব্যবহার করে কন্ট্রোল করা
API1:2019 ব্রোকেন অবজেক্ট অথরাইজেশন-এর জন্য উপরে বিবেচিত অনুমোদন পদ্ধতি অবজেক্ট-লেভেলে ফাইন-গ্রেনড অ্যাক্সেস কন্ট্রোলকে অ্যাড্রেস করে, ঠিক একইভাবে ফাংশন লেভেলে কোর্স-গ্রেনড অ্যাক্সেস কন্ট্রোলকে অ্যাড্রেস করাও গুরুত্বপূর্ণ। অনুরোধকারী ব্যবহারকারী কি আদৌ এই URL পাথ অনুরোধ করার অনুমতি পান? এই ধরনের নীতি প্রায়শই ব্যবহারকারীর পার্সোনা (গ্রাহক, কর্মচারী, প্রশাসক, ইন্টার্নাল বা থার্ড-পার্টি ডেভেলপার) অনুযায়ী নির্ধারণ করা হয়।
ভুল কনফিগারেশনের ঝুঁকি কমাতে, এখানে সাজেশন হল আপনার নিরাপত্তা টিমের সাথে কাজ করে নিশ্চিত করুন যে অনুরোধকারী ব্যবহারকারীর সম্পর্কে অ্যাসারশনগুলি OAuth স্কোপ বা JWT দাবি ব্যবহার করে অ্যাক্সেস টোকেনের মধ্যে অন্তর্ভুক্ত আছে।
শর্তসাপেক্ষ ফ্লো সহ যাচাইকরণের অনুরোধ
প্রাথমিক লেভেলে, একটি REST API কলে নিম্নলিখিত বিষয়গুলি থাকে:
- এন্ডপয়েন্ট
- একটি রিসোর্স
- অ্যাকশন ভার্ব
- অনুরোধের অতিরিক্ত অ্যাট্রিবিউট, যেমন কোয়েরি প্যারামিটার
এই হুমকির মধ্যে বর্ণিত আক্রমণের ধরনটি সাধারণত API অনুরোধের অপর্যাপ্ত ফিল্টারিংয়ের কারণে ঘটে। এর ফলে, একজন আক্রমণকারী অননুমোদিত অ্যাকশন পারফর্ম করতে বা সুরক্ষিত রিসোর্স অ্যাক্সেস করতে পারে। অ্যাক্সেস টোকেন বা দাবি অনুযায়ী অনুরোধ ফিল্টার করার অনুমতি দেওয়া কন্ডিশনাল লজিক ছাড়াও, Apigee অনুরোধের ভিত্তিতে ফিল্টার করার লজিক প্রয়োগ করার অনুমতি দেয়।
API প্রোডাক্টের বিজনেস লজিক, আপনার API-এর মাধ্যমে অনুমোদিত ফাংশনগুলি স্পষ্টভাবে বোঝা ও সংজ্ঞায়িত করার পরে, পরবর্তী ধাপ হল Apigee প্রোডাক্ট ফিচারের মাধ্যমে এই সীমার বাইরে থাকা যেকোনও অনুরোধ সীমাবদ্ধ করা:
- প্রক্সি ফ্লো কনফিগারেশনের যেকোনও ধাপে রিসোর্স পাথ বা ভার্ব সীমাবদ্ধ করতে কন্ডিশনাল লজিক ও Raise Fault নীতি
- JSON এবং XML ভুল JSON বা XML ব্যবহার করে কন্টেন্ট-ভিত্তিক অ্যাটাক থেকে রক্ষা করার জন্য হুমকি থেকে সুরক্ষা সংক্রান্ত নীতি অনুরোধ পেলোড
API6:2019 গণ অ্যাসাইনমেন্ট
হুমকির বিবরণ
ক্লায়েন্ট অ্যাপকে API-এর মাধ্যমে ফিল্টার না করা ডেটা প্রদান করা হলে, অ্যাটাকাররা অনুরোধের মাধ্যমে অবজেক্ট প্রপার্টি অনুমান করতে পারে অথবা ব্যাকএন্ডে স্টোর করা ডেটা অবজেক্টে কোথায় অননুমোদিত পরিবর্তন বা প্রপার্টি অ্যাক্সেস করতে হবে সেই বিষয়ে ক্লু পেতে এন্ডপয়েন্ট নেমিং কনভেনশন ব্যবহার করতে পারে।
এই হুমকি তখনই তৈরি হয় যখন কোনও ক্লায়েন্টকে ফিল্টার না করা ডেটা (সাধারণত JSON বা XML) পাঠানো হয়, এর ফলে অ্যাটাকার আপনার ব্যাকএন্ড সিস্টেমের অন্তর্নিহিত প্রয়োগ সংক্রান্ত বিবরণ অনুমান করতে পারে। এছাড়াও, গোপনীয় ডেটা এলিমেন্টের প্রপার্টির নামও অনুমান করতে পারে। এই ধরনের আক্রমণের ফলে আক্রমণকারী অনুপযুক্ত ডেটা পড়তে বা তাতে পরিবর্তন করতে পারে অথবা সবচেয়ে খারাপ ক্ষেত্রে রিমোট কোড এক্সিকিউশন সংক্রান্ত দুর্বলতা চালু হয়ে যেতে পারে।
এই ধরনের হুমকি অনুমোদনের ক্ষেত্রে সাধারণত দুটি দিক জড়িত থাকে:
- API ডিজাইন সংক্রান্ত দৃষ্টিকোণ। ক্লায়েন্ট-সাইড ডেটা ফিল্টারিং করার জন্য কখনই অ্যাপ্লিকেশন লজিকের উপর নির্ভর করবেন না, কারণ অ্যাটাকাররা অ্যাপের দুর্বলতার সুযোগ নিতে পারে এবং অ্যাপকে বিশ্বস্ত হিসেবে বিবেচনা করতে পারে। API পরিষেবা চালু করার জন্য শুধুমাত্র ন্যূনতম প্রয়োজনীয় ডেটা প্রকাশ করতে, সবসময় আপনার API ডেটা স্কিমা ডিজাইন করুন পরিষেবা
- API প্রয়োগের দৃষ্টিকোণ। ক্লায়েন্ট অ্যাপ্লিকেশনকে কনফিডেন্সিয়াল ডেটা অনিচ্ছাকৃতভাবে দেখানো আটকাতে ডেটা ফিল্টারিং ও স্কিমা যাচাইকরণ প্রয়োগ করুন
Apigee প্রোডাক্টের দৃষ্টিকোণ থেকে, আপনার API-তে শক্তিশালী ডেটা ফিল্টারিং প্রয়োগ করা নিশ্চিত করার জন্য আমরা বেশ কিছু উপযোগী ফিচার প্রদান করি।
OpenAPI স্পেসিফিকেশন ফিল্টারিং নীতি
OASValidation (OpenAPI স্পেসিফিকেশন ভ্যালিডেশন) নীতি আপনাকে OpenAPI 3.0 স্পেসিফিকেশন (JSON বা YAML)-এর বিরুদ্ধে কোনও ইনকামিং অনুরোধ বা উত্তর মেসেজ যাচাই করতে সাহায্য করে। এই নীতি আপনাকে এগুলি করার অনুমতি দেয়:
- OpenAPI স্পেসিফিকেশন (OAS) তৈরি করে আপনার API ডিজাইন করা
- Apigee-এর মাধ্যমে আপনার ব্যাকএন্ড থেকে নিরাপদে API প্রোডাক্ট এক্সপোজ করার জন্য প্রয়োজনীয় মধ্যস্থতা, নিরাপত্তা ও ক্যাশিং লজিক প্রয়োগ করুন
- আপনার OAS স্পেসিফিকেশনে সংজ্ঞায়িত ডেটা স্কিমার সাথে ইনকামিং অনুরোধগুলি যাচাই করুন, যার মধ্যে রয়েছে বেসপাথ, ক্রিয়া, অনুরোধ মেসেজ নীতি এবং প্যারামিটার
SOAP মেসেজ যাচাইকরণ নীতি
SOAP মেসেজ যাচাইকরণ নীতি আপনাকে XML-ভিত্তিক অনুরোধ যাচাই করতে দেয়। এটি করার জন্য, XSD স্কিমার সাথে XML মেসেজ যাচাই করা হয় অথবা WSDL ডেফিনিশনের সাথে SOAP মেসেজ যাচাই করা হয়। এছাড়াও, JSON বা XML মেসেজ পেলোড ভালোভাবে তৈরি করা হয়েছে কিনা তা কনফার্ম করতে আপনি মেসেজ যাচাইকরণ নীতি ব্যবহার করতে পারেন, এর মধ্যে XML বা JSON মেসেজে নিম্নলিখিত বিষয়গুলি যাচাই করা অন্তর্ভুক্ত:
- একটি রুট এলিমেন্ট আছে
- কন্টেন্টে কোনও বেআইনি অক্ষর নেই
- অবজেক্ট ও ট্যাগ সঠিকভাবে নেস্ট করা আছে
- শুরু ও শেষ করার ট্যাগ ম্যাচ করে
API7:2019 নিরাপত্তা সংক্রান্ত ভুল কনফিগারেশন
হুমকির বিবরণ
সাধারণত, ডিফল্ট কনফিগারেশন সুরক্ষিত না হলে, অসম্পূর্ণ বা অ্যাড-হক কনফিগারেশন, ওপেন ক্লাউড স্টোরেজ, ভুল কনফিগার করা HTTP হেডার, অপ্রয়োজনীয় HTTP পদ্ধতি, অনুমতিযোগ্য ক্রস-ওরিজিন রিসোর্স শেয়ারিং (CORS) এবং সংবেদনশীল তথ্য সহ বিস্তারিত সমস্যার মেসেজের কারণে নিরাপত্তা সংক্রান্ত ভুল কনফিগারেশন হয়। আক্রমণকারীরা প্রায়ই আনপ্যাচড ত্রুটি, সাধারণ এন্ডপয়েন্ট বা সুরক্ষিত নয় এমন ফাইল ও ডিরেক্টরি খুঁজে বের করার চেষ্টা করে যাতে তারা অননুমোদিত অ্যাক্সেস পেতে পারে অথবা যে সিস্টেমে আক্রমণ করতে চায় সেটির ব্যাপারে জ্ঞান অর্জন করতে পারে। নিরাপত্তা সংক্রান্ত ভুল কনফিগারেশনের ফলে শুধু ব্যবহারকারীর সংবেদনশীল ডেটাই নয়, সিস্টেমের বিবরণও প্রকাশ হয়ে যেতে পারে, যা পুরো সার্ভারকে ঝুঁকির মধ্যে ফেলে দিতে পারে। এছাড়াও, নিরাপত্তা সংক্রান্ত ভুল কনফিগারেশনের জন্য দুর্বলতা সংক্রান্ত কিছু অন্যান্য ব্যবহারের ক্ষেত্রে এগুলি অন্তর্ভুক্ত থাকতে পারে:
- ভুল কনফিগার করা TLS
- স্ট্যাক ট্রেস সহ সমস্যার মেসেজ
- আনপ্যাচড সিস্টেম
- প্রকাশিত স্টোরেজ বা সার্ভার ম্যানেজমেন্ট প্যানেল
নিরাপত্তা সংক্রান্ত ভুল কনফিগারেশন সম্পর্কিত সমস্যা সমাধান ও তা কমানোর জন্য বিভিন্ন পদক্ষেপ নেওয়া যেতে পারে, যার মধ্যে এগুলি অন্তর্ভুক্ত:
- হার্ডেনিং ও প্যাচিং প্রসেস প্রতিষ্ঠা ও স্ট্যান্ডার্ডাইজ করা
- API ইকোসিস্টেমের চারপাশে গভর্নেন্স ডেভেলপ করা
- অ্যাডমিনিস্ট্রেটিভ অ্যাক্সেস সীমিত করা এবং অডিটিং ও অ্যালার্ট চালু করা
শেয়ার করা ফ্লো ও ফ্লো হুক
Apigee শেয়ার করা ফ্লোয়ের কনসেপ্টকে সমর্থন করে যা API ডেভেলপারদের নীতি ও রিসোর্সকে পুনর্ব্যবহারযোগ্য গ্রুপে একত্রিত করতে দেয়। শেয়ার করা ফ্লো এক জায়গায় আবার ব্যবহারযোগ্য ফাংশনালিটি ক্যাপচার করার মাধ্যমে, আপনাকে ধারাবাহিকতা নিশ্চিত করতে, ডেভেলপমেন্টের সময় কমাতে এবং আরও সহজে কোড ম্যানেজ করতে সাহায্য করে। আপনি স্বতন্ত্র API প্রক্সির মধ্যে শেয়ার করা ফ্লো অন্তর্ভুক্ত করতে পারেন অথবা আপনি আরও এক ধাপ এগিয়ে শেয়ার করা ফ্লোকে ফ্লো হুক-এ প্লেস করতে পারেন, যাতে শেয়ার করা ফ্লো হিসেবে একই এনভায়রনমেন্টে ডেপ্লয় করা প্রতিটি API প্রক্সির জন্য শেয়ার করা ফ্লো লজিক অটোমেটিক এক্সিকিউট করা যায়।
API মনিটরিং
Apigee একটি বিস্তারিত API মনিটরিং প্ল্যাটফর্ম প্রদান করে। API মনিটরিংয়ের মাধ্যমে কোনও সংস্থা API ট্রাফিক ও পারফর্ম্যান্স সংক্রান্ত সমস্যা আগে থেকেই শনাক্ত করতে পারে। Apigee API মনিটরিং, API পারফর্ম্যান্সের ব্যাপারে রিয়েল-টাইম প্রাসঙ্গিক ইনসাইট প্রদান করতে, সমস্যা দ্রুত শনাক্ত করতে এবং ব্যবসার ধারাবাহিকতা বজায় রাখার জন্য প্রতিকারমূলক ব্যবস্থা নিতে, পাবলিক ক্লাউডের জন্য Apigee Edge-এর সাথে একসাথে কাজ করে।

ছবি: Apigee API মনিটরিং, সমস্যা মনিটর, তদন্ত ও সমাধান করার জন্য বিভিন্ন ধরনের টুল প্রদান করে। এটি Google Cloud Platform থেকে সেরা ইন্টেলিজেন্স ফিচার ব্যবহার করে।
Apigee Sense
Apigee Sense, API-কে অনাকাঙ্ক্ষিত অনুরোধ ট্রাফিক থেকে রক্ষা করতে সাহায্য করে, এর মধ্যে ক্ষতিকারক ক্লায়েন্টদের থেকে আসা আক্রমণও অন্তর্ভুক্ত। Apigee Sense API অনুরোধ ট্রাফিক বিশ্লেষণ করে, এমন প্যাটার্ন শনাক্ত করে যা অবাঞ্ছিত অনুরোধের প্রতিনিধিত্ব করতে পারে।
এই বিশ্লেষণ ব্যবহার করে, সংস্থা অবাঞ্ছিত অনুরোধ করা ক্লায়েন্টদের শনাক্ত করতে পারে, তারপরে সেইসব অনুরোধ অনুমোদন, ব্লক বা ফ্ল্যাগ করার জন্য ব্যবস্থা নিতে পারে। Apigee Sense-এর সাহায্যে, API-কে অনুরোধ প্যাটার্ন থেকে সুরক্ষিত রাখা সম্ভব, যার মধ্যে এগুলি অন্তর্ভুক্ত:
- মানুষের আচরণের সাথে মিশে যায় এমন অটোমেটিক আচরণ
- একই IP থেকে বারবার চেষ্টা করা
- অস্বাভাবিক সমস্যার হার
- ক্লায়েন্টের সন্দেহজনক অনুরোধ
- ডেটা ক্রলিং
- কী হার্ভেস্টিং
- অ্যাক্টিভিটি বার্স্ট
- ভৌগোলিক প্যাটার্ন
API8:2019 ইনজেকশন
হুমকির বিবরণ
API অনুরোধে SQL, NoSQL, XML Parsers, ORM, LDAP, OS Commands এবং JavaScript-এর মতো অবিশ্বস্ত ডেটা ইনজেক্ট করা হলে, এর ফলে অনাকাঙ্ক্ষিত কমান্ড এক্সিকিউট হতে পারে অথবা অননুমোদিত ডেটা অ্যাক্সেস করা হতে পারে। অ্যাটাকাররা উপলভ্য ইনজেকশন ভেক্টর যেমন, সরাসরি ইনপুট, প্যারামিটার, ইন্টিগ্রেটেড পরিষেবা ইত্যাদি ব্যবহার করে API-তে ক্ষতিকর ডেটা ফিড করবে। তারা আশা করবে যে এটি ইন্টারপ্রেটারে পাঠানো হবে। আক্রমণকারীরা সোর্স কোড পর্যালোচনা করার সময় দুর্বলতা স্ক্যানার এবং ফাজার ব্যবহার করে সহজেই এই ত্রুটিগুলি খুঁজে পেতে পারে। সফল ইনজেকশনের ফলে তথ্য প্রকাশ হয়ে যেতে পারে, যার ফলে গোপনীয়তা ও ডেটা হারানোর মতো ঘটনা ঘটতে পারে অথবা কিছু ক্ষেত্রে এটি DoS-এর কারণও হতে পারে।
ইনজেকশন সংক্রান্ত সমস্যা/আক্রমণ কমানোর জন্য পেশাদার পদ্ধতির মধ্যে রয়েছে ইনপুট ডেটা কঠোরভাবে ডিফাইন করা, যেমন স্কিমা, ধরন, স্ট্রিং প্যাটার্ন, ইনপুট যাচাইকরণ, সীমা চেক করা এবং রানটাইমে এগুলি এনফোর্স করা। Apigee প্ল্যাটফর্ম, ফিল্টার ব্যবহার করে ইনকামিং ডেটা যাচাই করার অনুমতি দেয় যাতে প্রতিটি ইনপুট প্যারামিটারের জন্য শুধুমাত্র সঠিক মান অনুমোদিত হয়।
Apigee Edge, ইনকামিং API অনুরোধের জন্য সার্ভার হিসেবে কাজ করে, এটি নিশ্চিত করে যে পেলোড স্ট্রাকচার যেন গ্রহণযোগ্য রেঞ্জের মধ্যে থাকে, এটি লিমিট চেক হিসেবেও পরিচিত। আপনি একটি API প্রক্সি কনফিগার করতে পারেন যাতে ইনপুট ভ্যালিডেশন রুটিন ইনপুটকে ট্রান্সফর্ম করে ঝুঁকিপূর্ণ অক্ষর সিকোয়েন্স সরিয়ে দেয় এবং সেগুলিকে নিরাপদ ভ্যালু দিয়ে প্রতিস্থাপন করে।
রেগুলার এক্সপ্রেশন সুরক্ষা সংক্রান্ত নীতি
RegularExpressionProtection নীতি কোনও মেসেজ থেকে তথ্য (যেমন, URI পাথ, কোয়েরি প্যারামিটার, হেডার, ফর্ম প্যারামিটার, ভেরিয়েবল, XML পেলোড বা JSON পেলোড) এক্সট্র্যাক্ট করে এবং আগে থেকে সংজ্ঞায়িত রেগুলার এক্সপ্রেশন অনুযায়ী সেই কন্টেন্ট মূল্যায়ন করে। নির্দিষ্ট করা কোনও রেগুলার এক্সপ্রেশন সত্য হলে, মেসেজটিকে হুমকি হিসেবে বিবেচনা করা হয় এবং সেটি বাতিল করা হয়। রেগুলার এক্সপ্রেশন বা সংক্ষেপে রেজেক্স হল স্ট্রিংয়ের একটি সেট যা স্ট্রিংয়ে একটি প্যাটার্ন নির্দিষ্ট করে। রেগুলার এক্সপ্রেশন, কন্টেন্টকে প্রোগ্রাম্যাটিক উপায়ে প্যাটার্নের জন্য মূল্যায়ন করতে সাহায্য করে। ইমেল আইডি সঠিকভাবে গঠন করা হয়েছে কিনা তা নিশ্চিত করতে, উদাহরণস্বরূপ, এটি মূল্যায়ন করার জন্য রেগুলার এক্সপ্রেশন ব্যবহার করা যেতে পারে ।
RegularExpressionProtection-এর সবচেয়ে সাধারণ ব্যবহার হল ক্ষতিকর কন্টেন্টের জন্য JSON ও XML পেলোড মূল্যায়ন করা।
কোনও রেগুলার এক্সপ্রেশন কন্টেন্ট-ভিত্তিক সব অ্যাটাককে নির্মূল করতে পারে না এবং ডিপ্থ-ইন-ডিফেন্স চালু করতে একাধিক মেকানিজমকে একসাথে ব্যবহার করতে হবে। এই বিভাগে কন্টেন্ট অ্যাক্সেস করা আটকানোর জন্য কিছু সাজেস্ট করা প্যাটার্ন বর্ণনা করা হয়েছে।
Apigee প্ল্যাটফর্মে ইনপুট যাচাই করার জন্য আরও অনেক পদ্ধতি উপলভ্য আছে:
- JSONThreatProtection নীতি JSON পেলোডে কোনও হুমকি আছে কিনা তা চেক করে
- XMLThreatProtection নীতি XML পেলোডকে হুমকির জন্য চেক করে
- জাভাস্ক্রিপ্ট ব্যবহার করে প্যারামিটার যাচাইকরণ করা যেতে পারে
- হেডার যাচাইকরণ জাভাস্ক্রিপ্ট ব্যবহার করে করা যেতে পারে
কন্টেন্টের ধরন যাচাই করা
কন্টেন্টের ধরন বলতে কোনও ফাইলের কন্টেন্টকে বোঝায় যা HTTP-এর মাধ্যমে ট্রান্সফার করা হয় এবং দুটি অংশযুক্ত স্ট্রাকচার অনুযায়ী শ্রেণীবদ্ধ করা হয়। নিচে ব্যাখ্যা করা শর্তসাপেক্ষ লজিক ব্যবহার করে Apigee, অনুরোধ ও উত্তরের কন্টেন্টের ধরন যাচাই করার জন্য সাজেস্ট করে।
- অনুরোধ - Content-Type চেক করতে, প্রক্সি ফ্লোতে কন্ডিশনাল লজিক ব্যবহার করুন। কাস্টম সমস্যা সংক্রান্ত মেসেজ রিটার্ন করতে AssignMessage বা RaiseFault নীতি ব্যবহার করুন।
- উত্তর - Content-Type যাচাই করতে, প্রক্সি ফ্লোতে কন্ডিশনাল লজিক ব্যবহার করুন। কন্টেন্ট-টাইপ হেডার সেট করতে AssignMessage নীতি ব্যবহার করুন অথবা কাস্টম সমস্যার মেসেজ ফেরত দিতে AssignMessage বা RaiseFault নীতি ব্যবহার করুন।
API9:2019 অনুপযুক্ত অ্যাসেট ম্যানেজমেন্ট
হুমকির বিবরণ
পর্যাপ্ত এনভায়রনমেন্ট ম্যানেজমেন্ট ও এনভায়রনমেন্ট সেগ্রিগেশন না থাকার ফলে অ্যাটাকাররা কম সুরক্ষিত API এন্ডপয়েন্ট অ্যাক্সেস করতে পারে। এছাড়াও, শাসনের সুরক্ষা ব্যবস্থা না থাকার কারণে, অপ্রয়োজনীয়ভাবে পুরনো রিসোর্স এক্সপোজ হয়ে যায়।
Apigee-এর উন্নত ক্ষমতা ব্যবহার করে এই হুমকির সমাধান করা যেতে পারে। এর মাধ্যমে API-এর সম্পূর্ণ লাইফ সাইকেল ম্যানেজ করা যায়। এর ফলে আপনি একটি সামগ্রিক গভর্নেন্স মডেল তৈরি করতে পারেন যা টিমের মধ্যে কোলাবরেশন সম্ভব করে তোলে এবং একই সাথে, নিরাপত্তা স্টেকহোল্ডার ও API ডেভেলপারদের মধ্যে দায়িত্ব ভাগ করে দেয়। এগুলি ব্যবহার করে সীমা ও নিয়ন্ত্রণ কনফিগার ও বজায় রাখা যায়:
সংস্থা, এনভায়রনমেন্ট ও রিভিশন: ভার্চুয়াল ও ফিজিক্যাল গার্ডরেল যা রানটাইম কনটেক্সটের মাধ্যমে আইসোলেশন ও সুরক্ষিত প্রোমোশন প্রসেস নিশ্চিত করে।
ভূমিকা ভিত্তিক অ্যাক্সেস কন্ট্রোল: আপনার API টিমের শুধুমাত্র প্রয়োজনীয় ব্যক্তিদের কাছেই কনফিগারেশন পরিবর্তন ও প্রোমোশন প্রসেস ম্যানেজ করার অনুমতি থাকবে।
API ডকুমেন্টেশনের জন্য অডিয়েন্স ম্যানেজমেন্ট: কোনও API ডেভেলপার পোর্টালে প্রকাশ করা হলে, আপনি টার্গেট অডিয়েন্স ম্যানেজ করার মাধ্যমে ডকুমেন্টেশনের দৃশ্যমানতা সীমিত করতে পারবেন।
ফ্লো হুক: আপনি গ্লোবাল নীতি ও প্যাটার্ন প্রয়োগ করতে পারেন যা বিশেষ গার্ডরেল হিসেবে ম্যানেজ করা যায় এবং API ডেভেলপাররা তা পরিবর্তন করতে পারেন না।
সংস্থা ও এনভায়রনমেন্ট
Apigee-তে কনফিগারেশন আর্টিফ্যাক্ট, ব্যবহারকারী ও ফিচার নির্দিষ্ট সংস্থা এবং/অথবা এনভায়রনমেন্টের মধ্যে সীমাবদ্ধ থাকতে পারে। এর অর্থ হল, প্ল্যাটফর্মে আগে থেকেই তৈরি করা গার্ডরেল আছে যা API এবং সেগুলির সাথে কাজ করে এমন কনফিগারেশনের আশেপাশে প্লেস করা যেতে পারে।
সংস্থা: Apigee-তে সংস্থা হল সবচেয়ে উপরের লেভেলের টেন্যান্ট। এটি আপনাকে ট্রাফিক, কনফিগারেশন এবং ব্যবহারকারীদের সম্পূর্ণভাবে আলাদা করতে সাহায্য করে। পরিচালনার পেশাদার পদ্ধতি হিসেবে, আপনার আলাদা প্রোডাকশন ও নন-প্রোডাকশন সংস্থা থাকা উচিত। এই প্র্যাক্টিস কার্যকরভাবে প্রোডাকশন ডেটা, ব্যবহারকারী এবং ট্রাফিককে নিম্নমানের এনভায়রনমেন্টের সাথে মেশানো এড়ায়।
এনভায়রনমেন্ট: Apigee-তে API-কে একাধিক ডিপ্লয়মেন্ট স্টেটের মাধ্যমে প্রমোট করা যেতে পারে; প্রতিটি স্টেট একটি এক্সিকিউশন কনটেক্সটের সাথে লিঙ্ক করা থাকে। প্রোমোশন প্রসেস চলাকালীন এনভায়রনমেন্ট কনটেক্সট সাথে নিয়ে যাওয়া হয় না, তাই বিশেষ সুবিধা নেই এমন ব্যবহারকারীদের কাছে সংবেদনশীল কনফিগারেশন প্রকাশ করা এড়ানো যায়।
পরিবর্তন: পরিবর্তনের মাধ্যমে API ও স্বতন্ত্র ফিচারকে এনভায়রনমেন্ট জুড়ে নির্বিঘ্নে প্রমোট করা যায়।
ভূমিকা-ভিত্তিক অ্যাক্সেস কন্ট্রোল
API9-এর প্রভাব কমাতে, নিরাপত্তা স্টেকহোল্ডার ও API ডেভেলপারদের মধ্যে দায়িত্বের স্পষ্ট সংজ্ঞা ও দায়িত্ব আলাদা আলাদা করে ভাগ করে দেওয়া অত্যন্ত জরুরি। এই ডকুমেন্টে আগে যেমন বলা হয়েছে, Apigee-তে নমনীয় ভূমিকা-ভিত্তিক অ্যাক্সেস কন্ট্রোল ক্ষমতা আছে যা আপনাকে কাস্টম ভূমিকায় অনুমতি অ্যাসাইন করতে দেয়। এই নির্দিষ্ট হুমকির জন্য, ভূমিকাগুলিকে প্রতিটি সংস্থা, এনভায়রনমেন্ট বা আরও সূক্ষ্ম কনফিগারেশন অনুমতি অনুসারে সীমিত সুবিধা পেতে স্কোপ করা যেতে পারে। পছন্দের প্র্যাক্টিস হিসেবে, এনভায়রনমেন্টের মাধ্যমে API-এর ডিপ্লয়মেন্ট স্টেট পরিবর্তন করার সুবিধা সীমিত করার কথা বিবেচনা করুন এবং এটিও নিশ্চিত করুন যে ডেভেলপাররা গ্লোবাল সিকিউরিটি লাইব্রেরি (ফ্লো হুক) অ্যাক্সেস বা পরিবর্তন করতে পারছেন না। এই সীমিত ভূমিকাগুলি বিশ্বব্যাপী নিরাপত্তা নীতিতে অননুমোদিত পরিবর্তন প্রতিরোধ করবে। এই নীতিতে লিগ্যাসি ও বর্তমান প্রকাশিত এন্ডপয়েন্ট, দু'টিই ব্যাপকভাবে কভার করা হয়।
API ডকুমেন্টেশনের জন্য দর্শক ম্যানেজমেন্ট
আপনার API স্ট্র্যাটেজির সাফল্যের জন্য ডেভেলপার পোর্টাল একটি গুরুত্বপূর্ণ উপাদান; এটি আপনাকে হোস্ট/এন্ডপয়েন্ট, রিসোর্স, অপারেশন, পেলোড স্কিমা এবং আরও অনেক কিছু সহ আপনার API সম্পর্কিত সমস্ত ডকুমেন্টেশনের একটি বিস্তারিত ইনভেনটরি রাখতে দেয়। Apigee-তে আপনি API প্রোডাক্ট কনস্ট্রাক্ট ব্যবহার করে আপনার API গ্রুপ করতে পারবেন। API প্রোডাক্ট হল রিসোর্স ও অপারেশনের বান্ডেল যা একই ব্যবসা ও নিরাপত্তা প্রসঙ্গে পড়ে (যেমন, পরিষেবা প্ল্যান, ব্যবসার ডোমেন, ক্যাটাগরি, কোম্পানির হায়ারার্কি ইত্যাদি)।
Apigee-এর ইন্টিগ্রেটেড ডেভেলপার পোর্টাল-এর মাধ্যমে আপনি API প্রোডাক্ট প্রকাশ করতে এবং টার্গেট দর্শক ম্যানেজ করার মাধ্যমে প্রকাশিত কন্টেন্টের দৃশ্যমানতা সীমিত করতে পারবেন। এই ক্ষমতা কন্টেন্ট সেগমেন্টেশন স্ট্র্যাটেজি মেনে চলে যা ব্যবসা ও নিরাপত্তা সংক্রান্ত প্রয়োজনীয়তার সাথে সামঞ্জস্যপূর্ণ।
ফ্লো হুক
API-এর প্রোমোশন ও রিলিজ প্রসেসে সবসময় নিরাপত্তা সংক্রান্ত নীতি মেনে চলা ও সার্টিফিকেশন প্রসেস অন্তর্ভুক্ত থাকতে হবে। কার্যকর হতে, উপযুক্ত টুল ব্যবহার করা API টিমকে এমন গার্ডরেল তৈরি করতে হবে যা দায়িত্বের বিভাজন নিশ্চিত করে এবং একই সাথে দ্রুত রিলিজ সাইকেল বজায় রাখে।
ফ্লো হুক-এর মাধ্যমে বিশ্বব্যাপী নীতি প্রয়োগ করে, Apigee আপনাকে নিরাপত্তা সংক্রান্ত শাসনের দায়িত্ব বাড়িয়ে নিতে দেয়। এইসব গ্লোবাল নীতিকে বিশেষ সুবিধা প্রাপ্ত গার্ডরেল হিসেবে ম্যানেজ করা যেতে পারে যা API ডেভেলপাররা পরিবর্তন করতে পারেন না, তাই দায়িত্বের বিভাজন নিশ্চিত করা হয় এবং ডিফল্ট নিরাপত্তা প্রয়োগ করে এবং এর সাথে সাথে কোনও নির্দিষ্ট এক্সিকিউশন এনভায়রনমেন্টে ডিপ্লয় করা সব API-এর জন্য নিরাপত্তা সংক্রান্ত সম্মতি প্রদান করে, তার মাধ্যমে দ্রুত কাজ করার সুবিধাও প্রদান করা হয়।

ছবি: ফ্লো হুক ও শেয়ার করা ফ্লোয়ের মাধ্যমে Apigee-তে বিশেষ সুবিধা প্রাপ্ত গার্ডরেল কনফিগার করা যেতে পারে। নিরাপত্তা সংক্রান্ত বৈশ্বিক নীতি বজায় রাখার দায়িত্ব নিরাপত্তা স্টেকহোল্ডারদের। এইসব ফিচার দায়িত্ব আলাদা আলাদা করে ভাগ করে নেওয়ার গ্যারেন্টি দেয় এবং দ্রুত ডেভেলপমেন্ট লাইফ সাইকেলকে উৎসাহিত করে।
API10:2019 অপর্যাপ্ত লগিং ও মনিটরিং &
হুমকির বিবরণ
অপর্যাপ্ত লগিং, মনিটরিং ও অ্যালার্টের ফলে চলমান অ্যাটাক শনাক্ত করা যায় না এবং তাই আপনার ব্যবসার উপর প্রভাব ফেলে এমন গুরুত্বপূর্ণ ইভেন্ট সম্পর্কে ইনসাইট পাওয়ার জন্য একটি স্ট্র্যাটেজি প্রয়োজন।
API-এর জন্য ইভেন্ট ও লগ ম্যানেজমেন্ট স্ট্র্যাটেজিকে নিম্নলিখিত পেশাদার পদ্ধতি বিবেচনা করতে হবে:
- লগ ম্যানেজমেন্ট নীতি: লগ ভার্বোসিটি, লগ লেভেল, লগ ইন্টিগ্রিটি, সেন্ট্রালাইজড রিপোজিটরি ও আরও অনেক কিছুকে স্ট্যান্ডার্ডাইজ ও কন্ট্রোল করতে নিয়ম ডকুমেন্ট ও প্রয়োগ করা
- ইভেন্ট ম্যানেজমেন্ট নীতি: নিশ্চিত করুন যে প্রতিটি ইভেন্টকে এর সোর্সে ট্র্যাক করা যাবে। এছাড়াও, ইভেন্টগুলিকে গুরুত্ব ও ব্যবসার উপর প্রভাবের ভিত্তিতে শ্রেণীবদ্ধ করা উচিত
- রিপোর্ট ও অডিট: নিরাপত্তা ও অপারেশন স্টেকহোল্ডারদের রিয়েল-টাইমে লগ ও ইভেন্ট অ্যাক্সেস ও সেগুলির ব্যাপারে প্রতিক্রিয়া জানাতে পারা উচিত। এছাড়াও, ঐতিহাসিক ডেটার উপর ভিত্তি করে শনাক্তকরণের প্যাটার্ন অ্যাডজাস্ট করতে স্টেকহোল্ডাররা রিইনফোর্সমেন্ট চক্র পারফর্ম করতে পারেন
Apigee, একটি সামগ্রিক ইভেন্ট এবং লগ ম্যানেজমেন্ট স্ট্র্যাটেজি তৈরি করার জন্য প্রয়োজনীয় টুল প্রদান করে। এইসব টুলের মধ্যে রয়েছে:
মেসেজ লগিং নীতি: আপনার API ট্রাফিক থেকে ট্রাফিক ডেটা বা মেটাডেটার উপর ভিত্তি করে লগ স্ট্রিম তৈরি করুন। কন্ডিশনাল লজিক ও মেসেজ টেমপ্লেট ব্যবহার করে স্ট্রিম ভার্বোসিটি ঠিক করার ব্যাপারে আপনার স্বাধীনতা আছে।
Google-এর ক্লাউড অপারেশন স্যুট: Google-এর থেকে পাওয়া অত্যন্ত স্কেলেবল মনিটরিং ও লগিং টুলে বক্সের বাইরে ইন্টিগ্রেশনকে কাজে লাগান।
পরিষেবা কলআউট নীতি: ইভেন্ট পাঠানোর জন্য HTTP এন্ডপয়েন্ট প্রয়োজন এমন লগ স্ট্রিমের জন্য সহায়তা যোগ করে।
Analytics: আউট-অফ-বক্স এবং/অথবা কাস্টমাইজ করা রিপোর্টের মাধ্যমে ঐতিহাসিক ট্রাফিক মেটাডেটা অ্যাক্সেস ও বিশ্লেষণ করুন। ট্রেন্ডের উপর ভিত্তি করে অ্যালার্ট তৈরি ও ম্যানেজ করা এবং ট্রাফিক সংক্রান্ত অস্বাভাবিকতা বোঝা।
API মনিটরিং: আগে বর্ণিত, এই টুলটি অ্যালার্ট করার সুবিধা প্রদান করে যা গুরুতর ইভেন্টের উপর ভিত্তি করে ট্রিগার করা যেতে পারে। ট্রাফিক লগ আরও বিশ্লেষণ করে সেই অনুযায়ী ব্যবস্থা নেওয়া যেতে পারে।