আমাদের নিজস্ব রেট-সীমাবদ্ধ এপিআই ডগফুডিং


117

সংক্ষিপ্ত বিবরণ:

আমার সংস্থা একটি রেট-সীমাবদ্ধ API তৈরি করেছে। আমাদের লক্ষ্য দ্বিগুণ:

  • উত্তর: আমাদের পণ্যকে ঘিরে একটি শক্তিশালী বিকাশকারী ইকোসিস্টেম তৈরি করুন।
  • বি: আমাদের অ্যাপ্লিকেশনটিকে আমাদের নিজস্ব অ্যাপ্লিকেশন চালানোর জন্য এটি ব্যবহার করে শক্তি প্রয়োগ করুন।

স্পষ্টকরণ: মোটেও হার-সীমা কেন?

আমরা আমাদের এপিআইকে সীমাবদ্ধ করি, কারণ আমরা এটিকে আমাদের পণ্যের সংযোজন হিসাবে বিক্রি করি। আমাদের API এ বেনামে অ্যাক্সেসের জন্য প্রতি ঘন্টা API কলগুলির জন্য খুব কম প্রান্তিকতা রয়েছে, যেখানে আমাদের প্রদত্ত গ্রাহকরা প্রতি ঘন্টা বা তার বেশি 1000 কলের উপরে অনুমোদিত।

সমস্যাটি:

আমাদের রেট-সীমাবদ্ধ API বিকাশকারী ইকো-সিস্টেমের জন্য দুর্দান্ত তবে এটি আমাদের ডগফুড করার জন্য আমরা এটিকে একই হার-সীমাতে সীমাবদ্ধ রাখতে পারি না। আমাদের এপিআইর সামনের প্রান্তটি সমস্ত জাভাস্ক্রিপ্ট, এপিআইতে সরাসরি অ্যাজাক্স কল করে।

সুতরাং প্রশ্নটি হ'ল:

আপনি এপিআইকে কীভাবে সুরক্ষিত করবেন যাতে হার-সীমাবদ্ধতা সরানো যায় যেখানে এই জাতীয় হার সীমাবদ্ধকরণ অপসারণের প্রক্রিয়াটিতে সহজেই ছদ্মবেশী করা যায় না?

এক্সপ্লোরড সমাধান (এবং কেন তারা কাজ করে না)

  1. হোস্ট শিরোলেখের বিপরীতে রেফারার যাচাই করুন। - ত্রুটিযুক্ত কারণ রেফারার সহজেই নকল হয়।

  2. অনুরোধ এবং একটি ভাগ করা গোপনের ভিত্তিতে একটি স্বাক্ষর তৈরি করতে এইচএমএসি ব্যবহার করুন , তারপরে সার্ভারে অনুরোধটি যাচাই করুন। - ত্রুটিযুক্ত কারণ গোপন এবং অ্যালগরিদমটি সামনের প্রান্তের জাভাস্ক্রিপ্টটি দেখে সহজেই নির্ধারণ করা হত।

  3. প্রক্সিটিতে অনুরোধটি প্রক্স করুন এবং অনুরোধটি প্রক্সিটিতে সই করুন - তবুও ত্রুটিযুক্ত, কারণ প্রক্সি নিজেই API টি প্রকাশ করে।

প্রশ্নটি:

বিকল্প সমাধানগুলি উপস্থাপনের জন্য আমি স্ট্যাক ওভারফ্লোতে উজ্জ্বল মনের দিকে তাকিয়ে আছি। আপনি কীভাবে এই সমস্যার সমাধান করবেন?


13
আপনি পারবেন না। আপনি যদি রেট সীমাতে সীমাবদ্ধ রাখতে চান না এমন API এর নিজের ব্যবহারটি যদি সর্বজনীন ওয়েব পৃষ্ঠাগুলি থেকে আসে তবে আপনি সেসব পাবলিক ওয়েব পৃষ্ঠাগুলি থেকে সুরক্ষিত কিছু করতে পারবেন না কারণ আপনি ইতিমধ্যে জেনেছেন বলে মনে হয়, সেখানে রয়েছে পাবলিক ওয়েব পৃষ্ঠাগুলিতে কোনও গোপনীয়তা নেই। সুতরাং, আপনি আপনার ওয়েব পৃষ্ঠাগুলিতে কী করতে পারেন তাই অন্য যে কেউ পারেন।
jفر00

28
আপনি কি নিশ্চিত যে আপনার ডগফুড ব্যবহারের সমাধান করার জন্য আপনার কাছে আসলে একটি হার সীমাবদ্ধ সমস্যা রয়েছে? আপনার সাইট এবং আপনার ওয়েব পৃষ্ঠাগুলি ব্যবহারকারী প্রতিটি ব্যবহারকারীর আপনার হার সীমাবদ্ধকরণের কোডে সম্পূর্ণ আলাদা ব্যবহারকারী হিসাবে উপস্থিত হওয়া উচিত। সুতরাং, কেবল নিশ্চিত হয়ে নিন যে প্রতিটি ওয়েব পৃষ্ঠাগুলি নিজেই নিয়মিত সীমাবদ্ধতার বিধি দ্বারা বাস করে এবং আপনার ভাল হওয়া উচিত। আপনার হার সীমাবদ্ধ প্রতি ক্লায়েন্ট হিসাবে ধরে নেওয়া, একজন ব্যবহারকারীর অন্য কোনও ব্যবহারকারীর সাথে কিছুই করার থাকবে না।
jਫਰ00

6
আপনি এমন কোনও এপিআই ম্যানেজমেন্ট সমাধান কেন বিবেচনা করবেন না যা প্রতি ব্যবহারকারী, প্রতি-ভূমিকা / অনুমতি বা অ্যাপ্লিকেশন সুযোগের উপর হার-সীমাবদ্ধ এবং থ্রোটলিং সরবরাহ করে। যেমন wso2 API গামলা
MiddlewareManiac


28
আপনার ডগফুডিং আপনার পাবলিক এপিআইয়ের সাথে একটি উল্লেখযোগ্য সমস্যা আবিষ্কার করেছে (এটি হ'ল হারের সীমাটি খুব কম) এবং এটিকে ঠিক করার পরিবর্তে আপনি এটিকে ঘিরে ধরার চেষ্টা করছেন। ডগফুড কেন আপনি যদি সমস্যাগুলি আবিষ্কার করেন তবে তা উপেক্ষা করছেন?
ব্যবহারকারী 253751

উত্তর:


93

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

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

সর্বদা একটি অস্ত্র প্রতিযোগিতা থাকবে - আমি প্রচুর বট ব্যবহারকারী অ্যাকাউন্ট তৈরি করে সীমাটি পেতে পারি। যদিও এটি আপনার সমস্যা সমাধানের সমস্যা, যদি আপনি কেবলমাত্র আপনার সাইনআপ প্রবাহে ক্যাপচা যোগ করেন, সত্যিকারের মানুষের জন্য অল্প ব্যয় করে। আপনি যখন এই পরিস্থিতিতে চলে যান, সুবিধা এবং সীমাবদ্ধতার মধ্যে সবকিছু কেবল একটি বাণিজ্য। আপনি কখনই পুরোপুরি বুলেটপ্রুফ কিছু পাবেন না, তাই এটিকে যথেষ্ট ভাল করার দিকে মনোনিবেশ করুন এবং গর্তগুলি কোথায় ছিল তা জানতে কেউ আপনাকে শোষণ না করা পর্যন্ত অপেক্ষা করুন wait


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

33

যদি এটি আপনার সমস্যার কারণ হয়ে থাকে তবে এটি আপনার বিকাশকারীদের পুটিটিক বাস্তুতন্ত্রের সমস্যার কারণ হতে পারে (যেমন তারা যখন বিকল্প UI বিকাশের চেষ্টা করবেন)। আপনি যদি সত্যই নিজের কুকুরের খাবার খাচ্ছেন, তবে আপনার অ্যাপ্লিকেশনটির জন্য এপিআই (এবং হার সীমাবদ্ধ) কাজ করুন। এখানে কিছু প্রস্তাবনা:

  • আইপি ঠিকানার মাধ্যমে সীমা রেট করবেন না। বরং ব্যবহারকারীর সাথে সম্পর্কিত কিছু দ্বারা রেট সীমা, যেমন তাদের ব্যবহারকারীর আইডি। প্রমাণীকরণের পর্যায়ে হার সীমা প্রয়োগ করুন।

  • আপনার এপিআই ডিজাইন করুন যাতে ব্যবহারকারীরা এটির ধারাবাহিকভাবে কল করার প্রয়োজন না হয় (উদাহরণস্বরূপ এমন লিস্ট কল দিন যা প্রতিবার একটি আইটেম ফেরত বারবার কল করার পরিবর্তে অনেক ফলাফল ফেরত দেয়)

  • আপনার বিকাশকারী বাস্তুতন্ত্রের প্রত্যাশা একই সীমাবদ্ধতার সাথে আপনার ওয়েব অ্যাপ্লিকেশনটি ডিজাইন করুন, অর্থাৎ আপনি এটি যুক্তিসঙ্গত থ্রোটলিং হারের মধ্যে নকশা করতে পারবেন তা নিশ্চিত করুন।

  • আপনার পিছনের প্রান্তটি স্কেবলযোগ্য (যথাক্রমে অনুভূমিকভাবে) নিশ্চিত করুন যাতে আপনার এত স্তরে থ্রোটলিং চাপানো দরকার না এটি আসলে কোনও ইউআইতে সমস্যা সৃষ্টি করে।

  • আপনার থ্রোল্টলিংয়ে বিস্ফোরণগুলির সাথে লড়াই করার দক্ষতা রয়েছে এবং পাশাপাশি দীর্ঘমেয়াদী অপব্যবহারও সীমাবদ্ধ রাখুন তা নিশ্চিত করুন।

  • আপনার থ্রোটলিং আপনি যে অপব্যবহারগুলি অপসারণ করতে চাইছেন তার অনুসারে বুদ্ধিমান ক্রিয়া সম্পাদন করে তা নিশ্চিত করুন। উদাহরণস্বরূপ, সংযোগ অস্বীকার করার পরিবর্তে হালকা অপব্যবহারকারীদের সারি বা বিলম্বিত বিবেচনা করুন। বেশিরভাগ ওয়েব ফ্রন্ট এন্ডে কেবল একবারে চারটি যুগপত সংযোগ খোলা হবে। আপনি যদি পঞ্চম খোলার প্রয়াসকে বিলম্ব করেন তবে আপনি কেবল সেই ক্ষেত্রে হিট হবেন যেখানে তারা ওয়েব ক্লায়েন্টের (একই সাথে দুটি ওয়েব ক্লায়েন্ট) একই সাথে সিএলআই ব্যবহার করছে। আপনি যদি এন-থ্রি এপিআই কলটিকে ব্যর্থ না করে ফাঁক ছাড়াই বিলম্ব করেন তবে শেষ ব্যবহারকারীটি বিরতি না দিয়ে জিনিসগুলি ধীর করে দেখবে। যদি আপনি এটি কেবলমাত্র এনআইপি কলগুলিকে একসাথে সংযুক্ত করে থাকেন তবে আপনি কেবলমাত্র এমন লোককেই আঘাত করবেন যা সম্ভবত বিপুল সংখ্যক এপিআই কলগুলির সাথে সমান্তরাল করছে, যা সম্ভবত আপনি চান এমন আচরণ নয় - উদাহরণস্বরূপ 100 একসাথে এপিআই কলগুলি তখন এক ঘন্টার ব্যবধান সাধারণত খুব দূরে থাকে এক ঘন্টা ধরে 100 সিক্যুয়াল এপিআই কলগুলির চেয়েও খারাপ।

এটি কি আপনার প্রশ্নের উত্তর দেয় না? ঠিক আছে, যদি আপনার যা জিজ্ঞাসা করা হয় তা সত্যই করতে হবে, প্রমাণীকরণের পর্যায়ে রেট-সীমা এবং আপনার ব্যবহারকারীর গোষ্ঠীটির ভিত্তিতে আলাদা হারের সীমা প্রয়োগ করুন apply আপনি যদি শংসাপত্রগুলির একটি সেট (আপনার ডেভস এবং কিউএ টিম দ্বারা ব্যবহৃত) ব্যবহার করে থাকেন তবে আপনি উচ্চ হারের সীমা পান। তবে আপনি অবিলম্বে দেখতে পাচ্ছেন যে এটি কেন আপনার অনিবার্যভাবে আপনার ইকোসিস্টেমের দিকে নিয়ে যাবে আপনার দেব এবং কিউএ টিম দেখতে পাচ্ছে না seeing


11

আপনার পণ্য কিনুন। নিজেই একজন প্রদেয় গ্রাহক হন।

"আমাদের এপিআইতে বেনামি অ্যাক্সেসের প্রতি ঘন্টা এপিআই কলগুলির জন্য খুব কম প্রান্তিকতা রয়েছে, যেখানে আমাদের প্রদেয় গ্রাহকরা প্রতি ঘন্টা বা তারও বেশি 1000 কলের উপরে অনুমোদিত।"

এটি গ্রাহকের দৃষ্টিকোণ থেকে সিস্টেমটি পরীক্ষা করতে সহায়তা করে।


1
সুস্পষ্ট উত্তর। এখানে কোন প্রতারণা বা জাল!
wizzwizz4

9

দুর্ভাগ্যক্রমে, এর কোনও সঠিক সমাধান নেই।

সাধারণ পদ্ধতির সাধারণত প্রদান করা হয় স্পোফেবল সরবরাহ করা হয়ক্লায়েন্টদের নিজের সনাক্তকরণের উপায় (যেমন একটি সনাক্তকারী, সংস্করণ এবং এপিআই কী - উদাহরণস্বরূপ) ক্লায়েন্টদের নিজের সম্পর্কে তথ্য নিবন্ধ করার জন্য যা অ্যাক্সেস সীমাবদ্ধ করতে ব্যবহার করা যেতে পারে (যেমন ক্লায়েন্টটি প্রদত্ত আইপি ঠিকানা পরিসরে সার্ভার, সুতরাং কেবলমাত্র এই ব্যাপ্তিতে কলকারীদের অনুমতি দিন; যেমন ক্লায়েন্টটি জাভাস্ক্রিপ্ট, তবে কেবলমাত্র একটি নির্দিষ্ট শ্রেণীর ব্রাউজারে সরবরাহ করা হয়েছে, সুতরাং কেবলমাত্র HTTP অনুরোধগুলিতে অ্যাক্সেসের অনুমতি দিন যা নির্দিষ্ট ব্যবহারকারী এজেন্ট স্ট্রিং নির্দিষ্ট করে; ইত্যাদি) এবং তারপরে মেশিন লার্নিং / প্যাটার্ন ব্যবহার করতে সম্ভবত একটি ছদ্মবেশী ক্লায়েন্ট হিসাবে অসাধারণ ব্যবহার সনাক্তকরণ এবং তারপরে এই ছদ্মবেশী ক্লায়েন্টদের কাছ থেকে ট্র্যাফিক প্রত্যাখ্যান করার জন্য স্বীকৃতি (বা ক্লায়েন্টদের সাথে নিশ্চিত করুন যে এই ব্যবহারগুলি সত্যিকার অর্থে বৈধ ক্লায়েন্টের কাছ থেকে আসছে না, তাদের স্পোফেবল শংসাপত্রগুলি প্রতিস্থাপন করুন, এবং তারপরে আরও পুরোনো ব্যবহার করে ট্র্যাফিকের অনুমতি দেবেন না স্পুফ শংসাপত্র)।

আপনি একাধিক কী ব্যবহার করে কীটিকে ফাঁকি দেওয়া আরও জটিল করে তুলতে পারেন। উদাহরণস্বরূপ, আপনি একটি দীর্ঘকালীন শংসাপত্রটি দেন যা কোনও সার্ভারে থাকে (এবং এটি কেবলমাত্র আইপি ঠিকানা ব্যাপ্তির একটি সীমিত সংখ্যায় ব্যবহার করা যেতে পারে) যা ক্লায়েন্ট সম্পর্কে তথ্য রেকর্ড করে (যেমন ব্যবহারকারী এজেন্ট) এবং একটি স্বল্প-লাইভ ক্লায়েন্ট-সাইড কী প্রদান করে যা ক্লায়েন্ট-সাইড এপিআই অনুরোধগুলির জন্য ক্লায়েন্টে ব্যবহারের জন্য জাভাস্ক্রিপ্টে সিন্ডিকেট করা হয়। এটিও অসম্পূর্ণ (কোনও স্পোফার শংসাপত্র পাওয়ার জন্য একই সার্ভার কল ইস্যু করতে পারে) তবে জাভাস্ক্রিপ্ট বা এইচটিএমএল (যা ঘন ঘন পরিবর্তন করা) জাভাস্ক্রিপ্ট বা এইচটিএমএলে অন্তর্ভুক্ত করা হয়েছে যদি ফিরে আসা এপি কীটি অন্তর্ভুক্ত করা হয় তবে এটি আরও কঠিন হবে which নির্ভরযোগ্যভাবে প্রতিক্রিয়া থেকে নিষ্কাশন করতে)। এটি আরও সহজে স্পোফিং সনাক্তকরণের একটি উপায় সরবরাহ করে; ক্লায়েন্ট-সাইড কী এখন একটি নির্দিষ্ট ক্লায়েন্টের সাথে আবদ্ধ (উদাঃ)


8

প্রশ্নে থাকা অ্যাপটিকে অবশ্যই প্রকাশ্যে খোলা রাখা উচিত, আপনার খুব পছন্দ নেই:

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

ক্লায়েন্ট-সাইড এপিআই অনুরোধগুলি এড়াতে এবং আরও সার্ভার-রেন্ডার হওয়ার জন্য আপনি চালিত অ্যাপটির রিফ্যাক্টর প্রয়োজন। আপনি এখনও আপনার এপিআই ডগফুড করতে পারেন, তবে সুস্পষ্ট উপায়ে নয় server সার্ভার দিক থেকে থ্রোটল-মুক্ত এপিআইয়ের সুরক্ষিত অনুরোধগুলি করুন।

আপনার অ্যাপ্লিকেশনটির কাজ করার অনুমতি দেওয়ার জন্য হার সীমাবদ্ধতা সামঞ্জস্য করুন এবং বোঝা পরিচালনা করতে পারফরম্যান্স অপ্টিমাইজেশনে বিনিয়োগ করুন।

এবং হ্যাঁ, প্রথম স্থানে কোর এপিআই থ্রোটল মুক্ত করুন এবং এটি একটি ব্যক্তিগত নেটওয়ার্কের মধ্যে রাখুন। একটি পৃথক জনসাধারণের অ্যাক্সেসযোগ্য স্তরে থ্রোটল।


4

আপনি কি ইউআই এবং থ্রোটল ফ্রি এপিআইয়ের আলাদা উদাহরণ দাঁড়াতে পারেন এবং তারপরে আপনার সংস্থা থেকে আসা আইপি ঠিকানাগুলিতে অ্যাক্সেসকে সীমাবদ্ধ রাখতে পারেন?

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


4

আপনি একটি নির্দিষ্ট আইপি ঠিকানা / ব্যবহারকারীর সাথে আবদ্ধ এবং বেঁচে থাকার জন্য সীমাবদ্ধ সময়ের জন্য একটি অনন্য সেশন আইডি তৈরির চেষ্টা করতে পারেন। যখন কোনও ব্যবহারকারী আপনার অ্যাপ্লিকেশনটি ফ্রন্টএন্ড জাভাস্ক্রিপ্ট কোডটি জাভাস্ক্রিপ্ট উত্স কোডটিতে উত্পন্ন সেশন আইডি ইনজেক্ট করে। আপনার API এ প্রতিটি অনুরোধের সাথে সেশন আইডি সংযুক্ত করা হবে এবং রেট-সীমাটি সরিয়ে নেওয়া হবে।

আইডিটি স্পোফিংয়ের জন্য কেবল অনুলিপি করা যায় না, কারণ এটি কেবলমাত্র একটি আইপি ঠিকানা, ব্যবহারকারী এবং সীমিত সময়ের জন্য বৈধ। সুতরাং কোনও প্রতিপক্ষকে আপনার পৃষ্ঠাতে কল করতে হবে এবং আপনার জাভাস্ক্রিপ্ট উত্স থেকে বা অ্যাজাক্স অনুরোধটি প্রতিবার নতুন ব্যবহারকারী এটি ব্যবহার করতে চাইলে তা ফিল্টার করতে হবে।

অন্য বিকল্প:

আপনার নিজের প্রয়োগের জন্য একটি প্রক্সি সেট আপ করুন এবং অবলম্বন ব্যবহার করুন। প্রক্সিটিতে অ্যাজাক্স অনুরোধ করে প্রকৃত এপিআই-কলগুলি থেকে আলাদা আলাদা নাম ব্যবহার করুন এবং প্রক্সি তাদের আবার অনুবাদ করে। সুতরাং আপনার অ্যাপ্লিকেশনটি getDocumentআপনার আসল এপিআইতে কল করবে না , তবে এটি কল করবেgetFELSUFDSKJE আপনার প্রক্সিটিতে । প্রক্সিটি এই কলটিকে ডকুমেন্টে ফিরে পাওয়ার জন্য অনুবাদ করবে এবং এটি বাস্তব হার-সীমাবদ্ধ API এ ফরোয়ার্ড করবে।

আপনার প্রকৃত এপিআই প্রক্সি দ্বারা অনুরোধগুলি রেট-সীমাবদ্ধ করবে না।

এবং যাতে অন্য লোকেরা তাদের নিজস্ব প্রয়োগের জন্য আপনার প্রক্সি ব্যবহার না করে আপনি দৈনিক অবহেলা প্রকল্পটি পরিবর্তন করেন। অপ্রচলিত কল-নামগুলি আপনার জাভাস্ক্রিপ্ট উত্স কোডে স্বয়ংক্রিয়ভাবে উত্পন্ন হতে পারে এবং প্রক্সিটিতে কনফিগার করা হয়েছে।

কোনও ক্লায়েন্ট এটি ব্যবহার করতে ইচ্ছুক, আপনার প্রক্সি ব্যবহার করার জন্য আপনার পরিবর্তিত অবসন্নতার সাথে তাল মিলিয়ে চলতে হবে। এবং আপনি এখনও লগিংয়ের জন্য রেফারার-শিরোনাম এবং অনুরূপ ব্যবহার করতে পারেন, যাতে আপনি আপনার প্রক্সি ব্যবহার করে লোকগুলি খুঁজে পেতে পারেন। বা আপত্তি স্কিম পরিবর্তন করার সময় তাদের ধরুন।


3
  • হোয়াইটলিস্ট উত্স আইপি ঠিকানা
  • একটি ভিপিএন ব্যবহার করুন , শ্বেত তালিকাভুক্ত ভিপিএন সদস্য
  • প্রক্সি সমাধান বা ব্রাউজার অ্যাডোন যা HTTP শিরোনাম যুক্ত করে তা ঠিক রাখতে হবে যদি আপনি প্রক্সিটি সুরক্ষিত করতে পারেন এবং এমআইটিএম সম্পর্কে উদ্বিগ্ন না হন আক্রমণগুলি ট্রাফিককে
  • গোপনীয়তার সাথে জড়িত যে কোনও সমাধান দৈনিক ভিত্তিতে গোপন ঘোরার মাধ্যমে ফাঁসের প্রভাব হ্রাস করতে পারে

এই সমাধানগুলি কোনও ফ্রন্ট এন্ড ওয়েব ক্লায়েন্টের জন্য প্রযোজ্য নয়। এপিআই অ্যাক্সেস ব্যাকএন্ডে থাকলে নিখুঁত।
জেসন ওয়াল্ড্রিপ 22'16

@ জেসন এগুলি সবগুলিই একটি সম্মুখভাগে প্রয়োগ করা যেতে পারে
The8472

2

একাধিক অ্যাকাউন্ট সেটআপ করুন, এবং প্রতিটি অনুরোধে এলোমেলোভাবে এগুলির মধ্যে একটি বাছুন, বা আপনি প্রতি ঘন্টা বা আরও কয়েকটি ব্যবহার করুন তা পরিবর্তন করুন। এইভাবে আপনি nঅ্যাকাউন্টের ওপরে লোড বিতরণ করতে পারেন , আপনাকে আরও nউচ্চতর সীমাবদ্ধতা দেয়।

আপনি যদি অন্য ব্যবহারকারীদের এটির গ্রাহকদের জন্য অনুমতি না দেওয়া হয় তবে এটি করার চেষ্টা করছেন তবে দুর্ঘটনাক্রমে নিজেকে বন্ধ করে দেওয়ার বিষয়ে সতর্ক হন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.