API কীগুলির প্রয়োজন করে একটি API সুরক্ষিত করুন৷

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

আপনি কি শিখবেন

এই টিউটোরিয়ালের মাধ্যমে, আপনি শিখবেন:

  • একটি API প্রক্সি তৈরি করুন যার জন্য একটি API কী প্রয়োজন৷
  • একটি API পণ্য যোগ করুন।
  • একজন ডেভেলপার যোগ করুন এবং একটি অ্যাপ নিবন্ধন করুন।
  • একটি API কী দিয়ে আপনার API কল করুন।

অননুমোদিত অ্যাক্সেস থেকে আপনার API রক্ষা করা গুরুত্বপূর্ণ। এটি করার একটি উপায় হল API কী (যাকে পাবলিক কী , ভোক্তা কী বা অ্যাপ কীও বলা হয়)।

যখন কোনো অ্যাপ আপনার API-কে অনুরোধ করে, অ্যাপটিকে অবশ্যই একটি বৈধ কী সরবরাহ করতে হবে। রানটাইমে, এপিআই কী নীতি যাচাই করে যে সরবরাহ করা API কী:

  • বৈধ
  • প্রত্যাহার করা হয়নি
  • API পণ্যের জন্য API কী মেলে যা অনুরোধ করা সংস্থানগুলিকে প্রকাশ করে৷

যদি চাবিটি বৈধ হয়, অনুরোধটি অনুমোদিত। যদি কীটি অবৈধ হয়, অনুরোধের ফলে অনুমোদন ব্যর্থ হয়।

এই টিউটোরিয়ালে, আপনি একটি API প্রক্সি তৈরি করবেন যেটি অ্যাক্সেস করার জন্য একটি বৈধ API কী প্রয়োজন।

আপনি কি প্রয়োজন হবে

  • একটি Apigee এজ অ্যাকাউন্ট। আপনার যদি এখনও একটি না থাকে, আপনি একটি Apigee Edge অ্যাকাউন্ট তৈরি করার নির্দেশাবলীর সাথে সাইন আপ করতে পারেন৷
  • API কল করার জন্য একটি ওয়েব ব্রাউজার।
  • (অতিরিক্ত ক্রেডিট বিভাগের জন্য, প্রয়োজন নেই) কমান্ড লাইন থেকে API কল করতে আপনার মেশিনে সিআরএল ইনস্টল করা আছে।

API প্রক্সি তৈরি করুন

'মকটার্গেট' সম্পর্কে

মকটার্গেট পরিষেবা Apigee এ হোস্ট করা হয় এবং সহজ ডেটা প্রদান করে। এটির জন্য কোন API কী বা অ্যাক্সেস টোকেনের প্রয়োজন নেই। আসলে, আপনি এটি একটি ওয়েব ব্রাউজারে অ্যাক্সেস করতে পারেন। নিম্নলিখিত ক্লিক করে এটি চেষ্টা করে দেখুন:

http://mocktarget.apigee.net

লক্ষ্য ফিরে আসে Hello, Guest! . উপলব্ধ অন্যান্য API সংস্থানগুলির একটি সহায়তা পৃষ্ঠা পেতে /help সংস্থান ব্যবহার করুন

  1. https://apigee.com/edge এ যান এবং সাইন ইন করুন।
  2. ব্যবহারকারী প্রোফাইল মেনু প্রদর্শনের জন্য পাশের নেভিগেশন বারের শীর্ষে আপনার ব্যবহারকারীর নাম ক্লিক করে এবং তারপর তালিকা থেকে সংগঠনটি নির্বাচন করে আপনি যে সংস্থাটি চান তাতে স্যুইচ করুন।

    ব্যবহারকারী প্রোফাইল মেনুতে org নির্বাচন করুন
  3. API প্রক্সি তালিকা প্রদর্শন করতে ল্যান্ডিং পৃষ্ঠায় API প্রক্সিতে ক্লিক করুন।

    এজ এপিআই মেনু
  4. + প্রক্সি ক্লিক করুন।
    প্রক্সি বোতাম তৈরি করুন
  5. প্রক্সি তৈরি করুন পৃষ্ঠায়, বিপরীত প্রক্সি (সবচেয়ে সাধারণ) নির্বাচন করুন।
  6. প্রক্সি বিশদ পৃষ্ঠায়, নিম্নরূপ প্রক্সি কনফিগার করুন:
    এই মাঠে এটা করো
    প্রক্সি নাম লিখুন: helloworld_apikey
    প্রকল্পের ভিত্তি পথ

    এ পরিবর্তন করুন: /helloapikey

    প্রজেক্ট বেস পাথ হল URL এর অংশ যা API প্রক্সিতে অনুরোধ করতে ব্যবহৃত হয়।

    দ্রষ্টব্য : API সংস্করণে Apigee-এর সুপারিশের জন্য, ওয়েব API ডিজাইনে সংস্করণ দেখুন : দ্য মিসিং লিঙ্ক ই-বুক।

    বিদ্যমান API

    লিখুন: http://mocktarget.apigee.net

    এটি টার্গেট ইউআরএলকে সংজ্ঞায়িত করে যা এপিজি এজ এপিআই প্রক্সিতে অনুরোধ করে।

    বর্ণনা লিখুন: hello world protected by API key
  7. পরবর্তী ক্লিক করুন.
  8. সাধারণ নীতি পৃষ্ঠায়, নিরাপত্তার জন্য: অনুমোদন , API কী নির্বাচন করুন এবং তারপরে পরবর্তী ক্লিক করুন। এটি আপনার API প্রক্সিতে দুটি নীতি যোগ করবে।
  9. ভার্চুয়াল হোস্ট পৃষ্ঠায়, ডিফল্ট এবং সুরক্ষিত নির্বাচন করুন এবং তারপরে পরবর্তী ক্লিক করুন। ডিফল্ট নির্বাচন করা আপনাকে http:// দিয়ে আপনার API কল করতে দেয়। নিরাপদ নির্বাচন করে, আপনাকে https:// দিয়ে আপনার API কল করতে দেয়।
  10. সারাংশ পৃষ্ঠায়, পরীক্ষা স্থাপনের পরিবেশ নির্বাচন করা হয়েছে তা নিশ্চিত করুন, এবং তারপর তৈরি করুন এবং স্থাপন করুন ক্লিক করুন।
  11. আপনি একটি স্বীকৃতি দেখতে পাবেন যে আপনার নতুন API প্রক্সি এবং একটি API পণ্য সফলভাবে তৈরি করা হয়েছে এবং API প্রক্সিটি আপনার পরীক্ষার পরিবেশে স্থাপন করা হয়েছে।
  12. API প্রক্সির জন্য ওভারভিউ পৃষ্ঠা প্রদর্শন করতে প্রক্সি সম্পাদনা করুন ক্লিক করুন।

নীতিগুলি দেখুন

  1. API প্রক্সি এডিটরে, বিকাশ ট্যাবে ক্লিক করুন। আপনি দেখতে পাবেন যে API প্রক্সির অনুরোধ প্রবাহে দুটি নীতি যোগ করা হয়েছে:
    • API কী যাচাই করুন: একটি বৈধ API কী উপস্থিত রয়েছে তা নিশ্চিত করতে API কলটি পরীক্ষা করে (কোয়েরি প্যারামিটার হিসাবে পাঠানো হয়েছে)।
    • Query Param apikey সরান: একটি AssignMessage নীতি যা এপিআই কী চেক করার পরে সরিয়ে দেয়, যাতে এটি চারপাশে পাস না হয় এবং অপ্রয়োজনীয়ভাবে প্রকাশিত না হয়।
  2. ফ্লো ভিউতে যাচাই API কী নীতি আইকনে ক্লিক করুন এবং নিম্ন কোড ভিউতে নীতির XML কনফিগারেশন দেখুন। <APIKey> উপাদানটি নীতিকে বলে যে এটি কল করার সময় কোথায় API কী সন্ধান করবে৷ ডিফল্টরূপে, এটি HTTP অনুরোধে apikey নামক একটি ক্যোয়ারী প্যারামিটার হিসাবে কীটির সন্ধান করে:

    <APIKey ref="request.queryparam.apikey" />

    apikey নামটি স্বেচ্ছাচারী এবং API কী ধারণ করে এমন কোনো সম্পত্তি হতে পারে।

API কল করার চেষ্টা করুন

এই ধাপে, আপনি সরাসরি টার্গেট সার্ভিসে একটি সফল API কল করবেন, তারপরে আপনি API প্রক্সিতে একটি অসফল কল করবেন কিভাবে নীতিগুলি দ্বারা সুরক্ষিত হচ্ছে তা দেখতে৷

  1. সফলতা

    একটি ওয়েব ব্রাউজারে, নিম্নলিখিত ঠিকানায় যান। এটি সেই টার্গেট পরিষেবা যা এপিআই প্রক্সিকে অনুরোধটি ফরোয়ার্ড করার জন্য কনফিগার করা হয়েছে, তবে আপনি আপাতত এটিকে সরাসরি আঘাত করবেন:

    http://mocktarget.apigee.net

    আপনার এই সফল প্রতিক্রিয়া পাওয়া উচিত: Hello, Guest!

  2. ব্যর্থতা

    এখন আপনার API প্রক্সি কল করার চেষ্টা করুন:

    http://ORG_NAME-test.apigee.net/helloapikey

    আপনার এজ প্রতিষ্ঠানের নামের সাথে ORG_NAME প্রতিস্থাপন করা হচ্ছে।

    যাচাই API কী নীতি ব্যতীত, এই কলটি আপনাকে আগের কলের মতো একই প্রতিক্রিয়া দেবে৷ কিন্তু এই ক্ষেত্রে, আপনি নিম্নলিখিত ত্রুটি প্রতিক্রিয়া পেতে হবে:

    {"fault":{"faultstring":"Failed to resolve API Key variable request.queryparam.apikey","detail":{"errorcode":"steps.oauth.v2.FailedToResolveAPIKey"}}}

    যার অর্থ, সঠিকভাবে, আপনি একটি বৈধ API কী পাস করেননি (কোয়েরি প্যারামিটার হিসাবে)।

পরবর্তী ধাপে, আপনি একটি API পণ্য যোগ করবেন।

একটি API পণ্য যোগ করুন

Apigee UI ব্যবহার করে একটি API পণ্য যোগ করতে:

  1. প্রকাশ করুন > API পণ্য নির্বাচন করুন।
  2. +API পণ্যে ক্লিক করুন।
  3. আপনার API পণ্যের জন্য পণ্য বিবরণ লিখুন.

    মাঠ বর্ণনা
    নাম API পণ্যের অভ্যন্তরীণ নাম। নামে বিশেষ অক্ষর উল্লেখ করবেন না।
    দ্রষ্টব্য: API পণ্য তৈরি হয়ে গেলে আপনি নামটি সম্পাদনা করতে পারবেন না। উদাহরণস্বরূপ, helloworld_apikey-Product
    প্রদর্শনের নাম API পণ্যের জন্য প্রদর্শনের নাম। প্রদর্শনের নামটি UI-তে ব্যবহৃত হয় এবং আপনি যেকোনো সময় এটি সম্পাদনা করতে পারেন। নির্দিষ্ট করা না থাকলে, নামের মান ব্যবহার করা হবে। এই ক্ষেত্রটি নাম মান ব্যবহার করে স্বয়ংক্রিয়ভাবে পূর্ণ হয়; আপনি এর বিষয়বস্তু সম্পাদনা বা মুছে ফেলতে পারেন। প্রদর্শনের নাম বিশেষ অক্ষর অন্তর্ভুক্ত করতে পারে। উদাহরণস্বরূপ, helloworld_apikey-Product
    বর্ণনা API পণ্যের বর্ণনা। উদাহরণস্বরূপ, Test product for tutorial
    পরিবেশ পরিবেশ যেখানে API পণ্য অ্যাক্সেসের অনুমতি দেবে। উদাহরণস্বরূপ, test বা prod
    অ্যাক্সেস পাবলিক নির্বাচন করুন।
    স্বয়ংক্রিয়ভাবে অ্যাক্সেস অনুরোধ অনুমোদন যেকোন অ্যাপ থেকে এই API পণ্যের জন্য মূল অনুরোধের স্বয়ংক্রিয় অনুমোদন সক্ষম করুন।
    কোটা এই টিউটোরিয়ালের জন্য উপেক্ষা করুন।
    OAuth স্কোপ অনুমোদিত এই টিউটোরিয়ালের জন্য উপেক্ষা করুন।
  4. API সংস্থান বিভাগে, আপনি এইমাত্র তৈরি করা API প্রক্সি নির্বাচন করুন। উদাহরণস্বরূপ, helloworld_apikey
  5. যোগ করুন ক্লিক করুন.
  6. পাথস বিভাগে, "/" পাথ যোগ করুন।
  7. যোগ করুন ক্লিক করুন.
  8. Save এ ক্লিক করুন।

পরবর্তী ধাপে, আপনি প্রয়োজনীয় API কী পাবেন।

আপনার প্রতিষ্ঠানে একজন ডেভেলপার এবং অ্যাপ যোগ করুন

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

একটি বিকাশকারী তৈরি করুন

একটি বিকাশকারী তৈরি করতে:

  1. মেনুতে প্রকাশ > বিকাশকারী নির্বাচন করুন।
  2. + বিকাশকারী ক্লিক করুন।
  3. নতুন বিকাশকারী উইন্ডোতে নিম্নলিখিতটি লিখুন:

    এই মাঠে প্রবেশ করা
    প্রথম নাম Keyser
    পদবি Soze
    ব্যবহারকারীর নাম keyser
    ইমেইল keyser@example.com
  4. তৈরি করুন ক্লিক করুন।

একটি অ্যাপ নিবন্ধন করুন

একটি বিকাশকারী অ্যাপ নিবন্ধন করতে:

  1. প্রকাশ করুন > অ্যাপস নির্বাচন করুন।
  2. + অ্যাপে ক্লিক করুন।
  3. নতুন অ্যাপ উইন্ডোতে নিম্নলিখিতটি লিখুন:

    পি
    এই মাঠে এটা করো
    নাম এবং প্রদর্শনের নাম লিখুন: keyser_app
    কোম্পানি / ডেভেলপার নির্বাচন করুন: Developer
    বিকাশকারী নির্বাচন করুন: Keyser Soze (keyser@example.com)
    কলব্যাক URL এবং নোট ফাঁকা ছেড়ে দিন
  4. শংসাপত্র বিভাগে, মেয়াদ শেষ হওয়া মেনু থেকে Never নির্বাচন করুন। এই অ্যাপের শংসাপত্রের মেয়াদ কখনই শেষ হবে না।
  5. পণ্যের অধীনে, পণ্য যোগ করুন ক্লিক করুন।
  6. helloworld_apikey- পণ্য নির্বাচন করুন।
  7. যোগ করুন ক্লিক করুন.
  8. আপনার কাজ সংরক্ষণ করতে উপরে এবং অ্যাপের বিবরণ বিভাগের ডানদিকে তৈরি করুন ক্লিক করুন।

API কী পান

API কী পেতে:

  1. অ্যাপস পৃষ্ঠায় ( প্রকাশ করুন > অ্যাপস ), keyser_app এ ক্লিক করুন।
  2. keyser_app পৃষ্ঠায়, শংসাপত্র বিভাগে কী এর পাশে দেখান ক্লিক করুন। পণ্য বিভাগে, লক্ষ্য করুন যে কীটি helloworld_apikey- এর সাথে যুক্ত

    .
  3. কী নির্বাচন করুন এবং অনুলিপি করুন। আপনি পরবর্তী ধাপে এটি ব্যবহার করবেন।

একটি কী দিয়ে API কল করুন

এখন আপনার কাছে একটি API কী আছে, আপনি API প্রক্সি কল করতে এটি ব্যবহার করতে পারেন। আপনার ওয়েব ব্রাউজারে নিম্নলিখিত লিখুন. ORG_NAME এর জন্য আপনার এজ প্রতিষ্ঠানের নাম এবং API_KEY এর জন্য API কী নীচে প্রতিস্থাপন করুন। ক্যোয়ারী প্যারামিটারে কোন অতিরিক্ত স্পেস নেই তা নিশ্চিত করুন।

http://ORG_NAME-test.apigee.net/helloapikey?apikey=API_KEY

এখন আপনি যখন API প্রক্সিতে কল করবেন, তখন আপনার এই প্রতিক্রিয়া পাওয়া উচিত: Hello, Guest!

অভিনন্দন! আপনি একটি API প্রক্সি তৈরি করেছেন এবং কলটিতে একটি বৈধ API কী অন্তর্ভুক্ত করার প্রয়োজন করে এটি সুরক্ষিত করেছেন৷

মনে রাখবেন যে সাধারণভাবে একটি ক্যোয়ারী প্যারামিটার হিসাবে একটি API কী পাস করা ভাল অনুশীলন নয়। আপনার পরিবর্তে HTTP হেডারে এটি পাস করার কথা বিবেচনা করা উচিত।

সর্বোত্তম অনুশীলন: HTTP হেডারে কী পাস করা

এই ধাপে, আপনি x-apikey নামক হেডারে API কী খুঁজতে প্রক্সি পরিবর্তন করবেন।

  1. API প্রক্সি সম্পাদনা করুন। ডেভেলপ > API প্রক্সি > helloworld_apikey নির্বাচন করুন এবং ডেভেলপ ভিউতে যান।
  2. যাচাই API কী নীতি নির্বাচন করুন, এবং পলিসি XML পরিবর্তন করুন যাতে নীতিটি queryparam পরিবর্তে header দেখতে হয়:

    <APIKey ref="request.header.x-apikey"/>
  3. পরিবর্তনটি স্থাপন করতে API প্রক্সি সংরক্ষণ করুন
  4. x-apikey নামক শিরোনাম হিসাবে API কী পাস করতে cURL ব্যবহার করে নিম্নলিখিত API কল করুন। আপনার প্রতিষ্ঠানের নাম প্রতিস্থাপন করতে ভুলবেন না।

    curl -v -H "x-apikey: API_KEY" http://ORG_NAME-test.apigee.net/helloapikey
    

নোট করুন যে পরিবর্তনটি সম্পূর্ণরূপে সম্পূর্ণ করতে, আপনাকে ক্যোয়ারী প্যারামিটারের পরিবর্তে হেডার সরানোর জন্য AssignMessage নীতি কনফিগার করতে হবে। যেমন:

<Remove>
<Headers>
    <Header name="x-apikey"/>
</Headers>
</Remove>

সম্পর্কিত বিষয়

এখানে কিছু বিষয় রয়েছে যা সরাসরি এই টিউটোরিয়ালের সাথে সম্পর্কিত:

একটু গভীরে গেলে, API কীগুলির সাহায্যে APIগুলিকে সুরক্ষিত করা গল্পের অংশ মাত্র৷ প্রায়শই, API সুরক্ষার সাথে OAuth-এর মতো অতিরিক্ত নিরাপত্তা জড়িত থাকে।

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