আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
আপনি কি শিখবেন
- ডাউনলোড করুন এবং একটি নমুনা API প্রক্সি স্থাপন করুন।
- একটি OAuth-সুরক্ষিত API প্রক্সি তৈরি করুন।
- একটি পণ্য, বিকাশকারী এবং অ্যাপ তৈরি করুন।
- OAuth অ্যাক্সেস টোকেনের জন্য ক্রেডেনশিয়াল বিনিময় করুন।
- একটি অ্যাক্সেস টোকেন সহ একটি API কল করুন।
এই টিউটোরিয়াল আপনাকে দেখায় কিভাবে OAuth 2.0 দিয়ে একটি API সুরক্ষিত করতে হয়।
OAuth হল একটি অনুমোদন প্রোটোকল যা অ্যাপগুলিকে ব্যবহারকারীদের ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রকাশ করার প্রয়োজন ছাড়াই ব্যবহারকারীদের পক্ষে তথ্য অ্যাক্সেস করতে সক্ষম করে৷
OAuth-এর সাথে, নিরাপত্তা শংসাপত্র (যেমন ব্যবহারকারীর নাম/পাসওয়ার্ড বা কী/গোপন) একটি অ্যাক্সেস টোকেনের জন্য বিনিময় করা হয়। যেমন:
joe:joes_password
(ব্যবহারকারীর নাম:পাসওয়ার্ড) বা
Nf2moHOASMJeUmXVdDhlMbPaXm2U7eMc:unUOXYpPe74ZfLEb
(কী:গোপন)
এরকম কিছু হয়ে যায়:
b0uiYwjRZLEo4lEu7ky2GGxHkanN
অ্যাক্সেস টোকেনটি অক্ষরের একটি এলোমেলো স্ট্রিং এবং অস্থায়ী (এটি অপেক্ষাকৃত অল্প সময়ের পরে মেয়াদ শেষ হওয়া উচিত), তাই একটি অ্যাপ ওয়ার্কফ্লোতে ব্যবহারকারীকে প্রমাণীকরণ করতে এটিকে পাস করা প্রকৃত শংসাপত্রের কাছাকাছি যাওয়ার চেয়ে অনেক বেশি নিরাপদ।
OAuth 2.0 স্পেসিফিকেশন অ্যাপ্লিকেশানগুলির জন্য অ্যাক্সেস টোকেন বিতরণের জন্য "অনুদান প্রকার" নামে পরিচিত বিভিন্ন প্রক্রিয়া সংজ্ঞায়িত করে৷ OAuth 2.0 দ্বারা সংজ্ঞায়িত সবচেয়ে মৌলিক অনুদানের ধরনটিকে "ক্লায়েন্ট শংসাপত্র" বলা হয়। এই অনুদানের প্রকারে, ক্লায়েন্ট শংসাপত্রের বিনিময়ে OAuth অ্যাক্সেস টোকেন তৈরি করা হয়, যেগুলি হল উপভোক্তা কী/ভোক্তা গোপন জোড়া, যেমন উপরের উদাহরণের মতো।
এজ-এ ক্লায়েন্ট শংসাপত্র অনুদানের ধরন API প্রক্সিগুলিতে নীতি ব্যবহার করে প্রয়োগ করা হয়। একটি সাধারণ OAuth প্রবাহে দুটি ধাপ জড়িত:
- ক্লায়েন্ট শংসাপত্রগুলি থেকে একটি OAuth অ্যাক্সেস টোকেন তৈরি করতে API প্রক্সি 1 এ কল করুন ৷ API প্রক্সিতে একটি OAuth v2.0 নীতি এটি পরিচালনা করে।
- একটি API কলে OAuth অ্যাক্সেস টোকেন পাঠাতে API প্রক্সি 2 এ কল করুন । API প্রক্সি একটি OAuth v2.0 নীতি ব্যবহার করে অ্যাক্সেস টোকেন যাচাই করে।
আপনি কি প্রয়োজন হবে
- একটি Apigee এজ অ্যাকাউন্ট। আপনার যদি এখনও একটি না থাকে, আপনি একটি Apigee Edge অ্যাকাউন্ট তৈরি করার নির্দেশাবলীর সাথে সাইন আপ করতে পারেন৷
- কমান্ড লাইন থেকে API কল করতে আপনার মেশিনে cURL ইনস্টল করা হয়েছে।
একটি টোকেন-উৎপাদনকারী API প্রক্সি ডাউনলোড এবং স্থাপন করুন
এই ধাপে, আপনি API প্রক্সি তৈরি করবেন যা একটি API কলে পাঠানো একটি ভোক্তা কী এবং ভোক্তার গোপনীয়তা থেকে একটি OAuth অ্যাক্সেস টোকেন তৈরি করে। Apigee একটি নমুনা API প্রক্সি প্রদান করে যা এটি করে। আপনি এখন প্রক্সি ডাউনলোড এবং স্থাপন করবেন, তারপর টিউটোরিয়ালে পরে এটি ব্যবহার করবেন। (আপনি সহজেই এই API প্রক্সি তৈরি করতে পারেন। এই ডাউনলোড এবং স্থাপনের পদক্ষেপটি সুবিধার জন্য এবং ইতিমধ্যে তৈরি করা প্রক্সিগুলি ভাগ করা কতটা সহজ তা আপনাকে দেখানোর জন্য।)
- আপনার ফাইল সিস্টেমের যেকোনো ডিরেক্টরিতে 'oauth' নমুনা API প্রক্সি জিপ ফাইলটি ডাউনলোড করুন ।
- https://apigee.com/edge এ যান এবং সাইন ইন করুন।
- বাম নেভিগেশন বারে বিকাশ > API প্রক্সি নির্বাচন করুন।
- + প্রক্সি ক্লিক করুন।
- প্রক্সি তৈরি উইজার্ডে, আপলোড প্রক্সি বান্ডেল ক্লিক করুন।
- আপনার ডাউনলোড করা
oauth.zip
ফাইলটি বেছে নিন এবং পরবর্তীতে ক্লিক করুন। - তৈরি করুন ক্লিক করুন।
- বিল্ড সম্পূর্ণ হওয়ার পরে, API প্রক্সি এডিটরে নতুন প্রক্সি দেখতে প্রক্সি সম্পাদনা করুন এ ক্লিক করুন।
- API প্রক্সি এডিটর ওভারভিউ পৃষ্ঠায়, ডিপ্লয়মেন্ট ড্রপ-ডাউনে ক্লিক করুন এবং পরীক্ষা নির্বাচন করুন। এটি আপনার প্রতিষ্ঠানে পরীক্ষার পরিবেশ।
নিশ্চিতকরণ প্রম্পটে, Deploy এ ক্লিক করুন।
আপনি যখন আবার ডিপ্লয়মেন্ট ড্রপ-ডাউনে ক্লিক করেন, একটি সবুজ আইকন নির্দেশ করে যে প্রক্সিটি পরীক্ষার পরিবেশে স্থাপন করা হয়েছে।
যাবার পথ! আপনি আপনার এজ প্রতিষ্ঠানে একটি অ্যাক্সেস টোকেন-উৎপাদনকারী API প্রক্সি সফলভাবে ডাউনলোড এবং স্থাপন করেছেন।
OAuth প্রবাহ এবং নীতি দেখুন
এপিআই প্রক্সিতে কী আছে তা একটু ঘনিষ্ঠভাবে দেখে নেওয়া যাক।
- API প্রক্সি এডিটরে, বিকাশ ট্যাবে ক্লিক করুন। বাম ন্যাভিগেটর ফলকে, আপনি দুটি নীতি দেখতে পাবেন। এছাড়াও আপনি
Proxy Endpoints
বিভাগে দুটিPOST
ফ্লো দেখতে পাবেন। Proxy Endpoints
অধীনে AccessTokenClientCredential-এ ক্লিক করুন।XML কোড ভিউতে, আপনি
AccessTokenClientCredential
নামে একটিFlow
দেখতে পাবেন:<Flow name="AccessTokenClientCredential"> <Description/> <Request> <Step> <Name>GenerateAccessTokenClient</Name> </Step> </Request> <Response/> <Condition>(proxy.pathsuffix MatchesPath "/accesstoken") and (request.verb = "POST")</Condition> </Flow>
একটি এপিআই প্রক্সিতে একটি প্রবাহ একটি প্রক্রিয়াকরণ পদক্ষেপ। এই ক্ষেত্রে, একটি নির্দিষ্ট শর্ত পূরণ হলে প্রবাহটি ট্রিগার হয় (এটিকে একটি শর্তসাপেক্ষ প্রবাহ বলা হয়)।
<Condition>
এলিমেন্টে সংজ্ঞায়িত শর্তটি বলে যে যদি/accesstoken
রিসোর্সে API প্রক্সি কল করা হয় এবং অনুরোধ ক্রিয়াটিPOST
হয়, তাহলেGenerateAccessTokenClient
নীতিটি চালান, যা অ্যাক্সেস টোকেন তৈরি করে।এখন শর্তসাপেক্ষ প্রবাহ ট্রিগার হবে নীতির দিকে তাকান। ফ্লো ডায়াগ্রামে GenerateAccessTokenClient নীতি আইকনে ক্লিক করুন।
নিম্নলিখিত XML কনফিগারেশন কোড ভিউতে লোড করা হয়েছে:<OAuthV2 name="GenerateAccessTokenClient"> <!-- This policy generates an OAuth 2.0 access token using the client_credentials grant type --> <Operation>GenerateAccessToken</Operation> <!-- This is in millseconds, so expire in an hour --> <ExpiresIn>3600000</ExpiresIn> <SupportedGrantTypes> <!-- This part is very important: most real OAuth 2.0 apps will want to use other grant types. In this case it is important to NOT include the "client_credentials" type because it allows a client to get access to a token with no user authentication --> <GrantType>client_credentials</GrantType> </SupportedGrantTypes> <GrantType>request.queryparam.grant_type</GrantType> <GenerateResponse/> </OAuthV2>
কনফিগারেশন নিম্নলিখিত অন্তর্ভুক্ত:
-
<Operation>
, যা অনেকগুলি পূর্বনির্ধারিত মানগুলির মধ্যে একটি হতে পারে, নীতিটি কী করতে চলেছে তা সংজ্ঞায়িত করে৷ এই ক্ষেত্রে, এটি একটি অ্যাক্সেস টোকেন তৈরি করতে যাচ্ছে। - টোকেন তৈরি হওয়ার পর 1 ঘন্টা (3600000 মিলিসেকেন্ড) মেয়াদ শেষ হবে।
-
<SupportedGrantTypes>
-এ, OAuth<GrantType>
ব্যবহার করা হবে বলে প্রত্যাশিত হলclient_credentials
(একটি ভোক্তা কী বিনিময় করা এবং একটি OAuth টোকেনের গোপনীয়তা)। - OAuth 2.0 স্পেসিফিকেশনের প্রয়োজন অনুসারে অনুদান প্রকারের প্যারামিটারের জন্য API কলে কোথায় দেখতে হবে তা দ্বিতীয়
<GrantType>
উপাদানটি নীতিকে বলে। (আপনি এটি পরে API কলে দেখতে পাবেন)। অনুদানের ধরনটি HTTP শিরোনামে (request.header.grant_type
) বা একটি ফর্ম প্যারামিটার (request.formparam.grant_type
) হিসাবেও পাঠানো যেতে পারে।
-
আপনাকে এই মুহূর্তে API প্রক্সি দিয়ে অন্য কিছু করার দরকার নেই। পরবর্তী ধাপে, আপনি একটি OAuth অ্যাক্সেস টোকেন তৈরি করতে এই API প্রক্সি ব্যবহার করবেন। তবে প্রথমে আপনাকে আরও কিছু জিনিস করতে হবে:
- আপনি আসলে OAuth এর সাথে সুরক্ষিত করতে চান এমন API প্রক্সি তৈরি করুন।
- আরও কিছু আর্টিফ্যাক্ট তৈরি করুন যার ফলে কনজিউমার কী এবং কনজিউমার সিক্রেট হবে যা আপনাকে এক্সেস টোকেনের বিনিময় করতে হবে।
OAuth-সুরক্ষিত API প্রক্সি তৈরি করুন
এখন আপনি API প্রক্সি তৈরি করতে যাচ্ছেন যা আপনি সুরক্ষিত করতে চান। এটি এমন API কল যা আপনি যা চান তা ফেরত দেয়। এই ক্ষেত্রে, API প্রক্সি আপনার IP ঠিকানা ফেরত দেওয়ার জন্য Apigee-এর mocktarget পরিষেবাতে কল করবে। কিন্তু, আপনি যদি আপনার API কলের সাথে একটি বৈধ OAuth অ্যাক্সেস টোকেন পাস করেন তবেই আপনি এটি দেখতে পাবেন।
আপনি এখানে যে API প্রক্সি তৈরি করবেন তাতে একটি নীতি অন্তর্ভুক্ত থাকবে যা অনুরোধে একটি OAuth টোকেন পরীক্ষা করে।
- বাম নেভিগেশন বারে বিকাশ > API প্রক্সি নির্বাচন করুন।
- + প্রক্সি ক্লিক করুন।
- বিল্ড এ প্রক্সি উইজার্ডে, রিভার্স প্রক্সি (সবচেয়ে সাধারণ) নির্বাচন করুন এবং পরবর্তীতে ক্লিক করুন।
- নিম্নলিখিতগুলির সাথে প্রক্সি কনফিগার করুন:
এই মাঠে এটা করো প্রক্সি নাম লিখুন: helloworld_oauth2
প্রকল্পের ভিত্তি পথ এ পরিবর্তন করুন:
/hellooauth2
প্রজেক্ট বেস পাথ হল URL এর অংশ যা API প্রক্সিতে অনুরোধ করতে ব্যবহৃত হয়।
বিদ্যমান API লিখুন:
https://mocktarget.apigee.net/ip
এটি টার্গেট ইউআরএলকে সংজ্ঞায়িত করে যা এপিজি এজ এপিআই প্রক্সিতে অনুরোধ করে।
বর্ণনা লিখুন: hello world protected by OAuth
- পরবর্তী ক্লিক করুন.
- সাধারণ নীতি পৃষ্ঠায়:
এই মাঠে এটা করো নিরাপত্তা: অনুমোদন নির্বাচন করুন: OAuth 2.0 - পরবর্তী ক্লিক করুন.
- ভার্চুয়াল হোস্ট পৃষ্ঠায়, পরবর্তী ক্লিক করুন।
- বিল্ড পৃষ্ঠায়, পরীক্ষার পরিবেশ নির্বাচন করা হয়েছে তা নিশ্চিত করুন এবং তৈরি করুন এবং স্থাপন করুন ক্লিক করুন।
- সারাংশ পৃষ্ঠায়, আপনি একটি স্বীকৃতি দেখতে পাচ্ছেন যে আপনার নতুন API প্রক্সি সফলভাবে তৈরি করা হয়েছে এবং API প্রক্সিটি আপনার পরীক্ষার পরিবেশে স্থাপন করা হয়েছে।
- API প্রক্সির জন্য ওভারভিউ পৃষ্ঠা প্রদর্শন করতে প্রক্সি সম্পাদনা করুন ক্লিক করুন।
লক্ষ্য করুন যে এই সময় API প্রক্সি স্বয়ংক্রিয়ভাবে স্থাপন করা হয়েছে। "পরীক্ষা" পরিবেশের পাশে একটি সবুজ স্থাপনার বিন্দু আছে তা নিশ্চিত করতে স্থাপনার ড্রপ-ডাউনে ক্লিক করুন।
নীতিগুলি দেখুন
আসুন আপনি যা তৈরি করেছেন তা ঘনিষ্ঠভাবে দেখে নেওয়া যাক।
- API প্রক্সি এডিটরে, বিকাশ ট্যাবে ক্লিক করুন। আপনি দেখতে পাবেন যে API প্রক্সির অনুরোধ প্রবাহে দুটি নীতি যোগ করা হয়েছে:
- OAuth v2.0 অ্যাক্সেস টোকেন যাচাই করুন - একটি বৈধ OAuth টোকেন উপস্থিত রয়েছে তা নিশ্চিত করতে API কলটি পরীক্ষা করে।
- শিরোনাম অনুমোদন সরান - একটি অ্যাসাইনমেসেজ নীতি যা চেক করার পরে অ্যাক্সেস টোকেনটি সরিয়ে দেয়, যাতে এটি লক্ষ্য পরিষেবাতে পাস না হয়। (যদি লক্ষ্য পরিষেবাটির OAuth অ্যাক্সেস টোকেনের প্রয়োজন হয়, আপনি এই নীতিটি ব্যবহার করবেন না)।
ফ্লো ভিউতে ভেরিফাই OAuth v2.0 অ্যাক্সেস টোকেন আইকনে ক্লিক করুন এবং কোড প্যানে এর নীচে XML দেখুন।
<OAuthV2 async="false" continueOnError="false" enabled="true" name="verify-oauth-v2-access-token"> <DisplayName>Verify OAuth v2.0 Access Token</DisplayName> <Operation>VerifyAccessToken</Operation> </OAuthV2>
লক্ষ্য করুন যে
<Operation>
হলVerifyAccessToken
। পলিসি কি করতে হবে তা অপারেশন সংজ্ঞায়িত করে। এই ক্ষেত্রে, এটি অনুরোধে একটি বৈধ OAuth টোকেন পরীক্ষা করতে চলেছে৷
একটি API পণ্য যোগ করুন
Apigee UI ব্যবহার করে একটি API পণ্য যোগ করতে:
- প্রকাশ করুন > API পণ্য নির্বাচন করুন।
- +API পণ্যে ক্লিক করুন।
- আপনার API পণ্যের জন্য পণ্য বিবরণ লিখুন.
মাঠ বর্ণনা নাম API পণ্যের অভ্যন্তরীণ নাম। নামে বিশেষ অক্ষর উল্লেখ করবেন না।
দ্রষ্টব্য: API পণ্য তৈরি হয়ে গেলে আপনি নামটি সম্পাদনা করতে পারবেন না। উদাহরণস্বরূপ,helloworld_oauth2-Product
প্রদর্শনের নাম API পণ্যের জন্য প্রদর্শনের নাম। প্রদর্শনের নামটি UI-তে ব্যবহৃত হয় এবং আপনি যেকোনো সময় এটি সম্পাদনা করতে পারেন। নির্দিষ্ট করা না থাকলে, নামের মান ব্যবহার করা হবে। এই ক্ষেত্রটি নাম মান ব্যবহার করে স্বয়ংক্রিয়ভাবে পূর্ণ হয়; আপনি এর বিষয়বস্তু সম্পাদনা বা মুছে ফেলতে পারেন। প্রদর্শনের নাম বিশেষ অক্ষর অন্তর্ভুক্ত করতে পারে। উদাহরণস্বরূপ, helloworld_oauth2-Product
।বর্ণনা API পণ্যের বর্ণনা। পরিবেশ পরিবেশ যেখানে API পণ্য অ্যাক্সেসের অনুমতি দেবে। আপনি যে পরিবেশে API প্রক্সি স্থাপন করেছেন সেটি নির্বাচন করুন। উদাহরণস্বরূপ, test
।অ্যাক্সেস পাবলিক নির্বাচন করুন। স্বয়ংক্রিয়ভাবে অ্যাক্সেস অনুরোধ অনুমোদন যেকোন অ্যাপ থেকে এই API পণ্যের জন্য মূল অনুরোধের স্বয়ংক্রিয় অনুমোদন সক্ষম করুন। কোটা এই টিউটোরিয়ালের জন্য উপেক্ষা করুন। OAuth স্কোপ অনুমোদিত এই টিউটোরিয়ালের জন্য উপেক্ষা করুন। - API প্রক্সি ক্ষেত্রে, আপনার তৈরি করা API প্রক্সি নির্বাচন করুন।
- পাথ ক্ষেত্রে, "/" লিখুন। অন্যান্য ক্ষেত্র উপেক্ষা করুন.
- Save এ ক্লিক করুন।
আপনার প্রতিষ্ঠানে একজন ডেভেলপার এবং অ্যাপ যোগ করুন
এর পরে, আপনি আপনার API ব্যবহার করতে সাইন আপ করা একজন বিকাশকারীর কর্মপ্রবাহ অনুকরণ করতে যাচ্ছেন। আদর্শভাবে, বিকাশকারীরা আপনার বিকাশকারী পোর্টালের মাধ্যমে নিজেদের এবং তাদের অ্যাপগুলি নিবন্ধন করে। এই ধাপে, যদিও, আপনি প্রশাসক হিসাবে একটি বিকাশকারী এবং একটি অ্যাপ যুক্ত করবেন৷
একজন ডেভেলপারের কাছে এক বা একাধিক অ্যাপ থাকবে যা আপনার API-কে কল করে এবং প্রতিটি অ্যাপ একটি অনন্য ভোক্তা কী এবং ভোক্তার গোপনীয়তা পায়। এই কী/গোপন-প্রতি-অ্যাপটি আপনাকে, API প্রদানকারীকে, আপনার API-এ অ্যাক্সেসের উপর আরও দানাদার নিয়ন্ত্রণ এবং API ট্র্যাফিকের উপর আরও দানাদার বিশ্লেষণ প্রতিবেদন দেয়, কারণ এজ জানে কোন বিকাশকারী এবং অ্যাপ কোন OAuth টোকেনের অন্তর্গত।
একটি বিকাশকারী তৈরি করুন
আসুন Nigel Tufnel নামে একটি বিকাশকারী তৈরি করি।
- মেনুতে প্রকাশ > বিকাশকারী নির্বাচন করুন।
- + বিকাশকারী ক্লিক করুন।
- নতুন বিকাশকারী উইন্ডোতে নিম্নলিখিতটি লিখুন:
এই মাঠে প্রবেশ করুন প্রথম নাম Nigel
পদবি Tufnel
ব্যবহারকারীর নাম nigel
ইমেইল nigel@example.com
- তৈরি করুন ক্লিক করুন।
একটি অ্যাপ নিবন্ধন করুন
আসুন নাইজেলের জন্য একটি অ্যাপ তৈরি করি।
- প্রকাশ করুন > অ্যাপস নির্বাচন করুন।
- + অ্যাপে ক্লিক করুন।
- নতুন অ্যাপ উইন্ডোতে নিম্নলিখিতটি লিখুন:
এই মাঠে এটা করো নাম এবং প্রদর্শনের নাম লিখুন: nigel_app
বিকাশকারী বিকাশকারীতে ক্লিক করুন এবং নির্বাচন করুন: Nigel Tufnel (nigel@example.com)
কলব্যাক URL এবং নোট ফাঁকা ছেড়ে দিন - পণ্যের অধীনে, পণ্য যোগ করুন ক্লিক করুন।
- helloworld_oauth2- পণ্য নির্বাচন করুন।
- তৈরি করুন ক্লিক করুন।
ভোক্তা কী এবং ভোক্তা গোপন পান
এখন আপনি ভোক্তা কী এবং ভোক্তার গোপনীয়তা পাবেন যা একটি OAuth অ্যাক্সেস টোকেনের জন্য বিনিময় করা হবে।
- নিশ্চিত করুন যে nigel_app পৃষ্ঠাটি প্রদর্শিত হয়। যদি না হয়, অ্যাপস পৃষ্ঠায় (প্রকাশ করুন > অ্যাপস), nigel_app এ ক্লিক করুন।
nigel_app পৃষ্ঠায়, কী এবং গোপন কলামে দেখান ক্লিক করুন। লক্ষ্য করুন যে কী/গোপনটি "helloworld_oauth2-Product" এর সাথে যুক্ত যা আগে স্বয়ংক্রিয়ভাবে তৈরি হয়েছিল।
- কী এবং সিক্রেট নির্বাচন করুন এবং অনুলিপি করুন। একটি অস্থায়ী টেক্সট ফাইল এ পেস্ট করুন . আপনি সেগুলিকে পরবর্তী ধাপে ব্যবহার করবেন, যেখানে আপনি API প্রক্সিকে কল করবেন যা একটি OAuth অ্যাক্সেস টোকেনের জন্য এই শংসাপত্রগুলি বিনিময় করবে৷
আপনার IP ঠিকানা পেতে API কল করার চেষ্টা করুন (ব্যর্থ!)
শুধু কিক করার জন্য, সুরক্ষিত API প্রক্সিতে কল করার চেষ্টা করুন যা আপনার আইপি ঠিকানা ফেরত দিতে পারে। আপনার এজ প্রতিষ্ঠানের নাম প্রতিস্থাপন করে একটি টার্মিনাল উইন্ডোতে নিম্নলিখিত cURL কমান্ডটি চালান। URL-এ test
শব্দটি হল আপনার প্রতিষ্ঠানের পরীক্ষার পরিবেশ, যেটিতে আপনি আপনার প্রক্সি স্থাপন করেছেন৷ প্রক্সি বেসপাথ হল /hellooauth2
, একই বেসপাথ যা আপনি প্রক্সি তৈরি করার সময় উল্লেখ করেছিলেন। লক্ষ্য করুন যে আপনি কলটিতে একটি OAuth অ্যাক্সেস টোকেন পাস করছেন না ৷
curl https://ORG_NAME-test.apigee.net/hellooauth2
যেহেতু API প্রক্সিতে অনুরোধে একটি বৈধ OAuth টোকেনের জন্য যাচাই করা OAuth v2.0 অ্যাক্সেস টোকেন নীতি পরীক্ষা করা আছে, তাই নিম্নলিখিত বার্তার সাথে কলটি ব্যর্থ হওয়া উচিত:
{"fault":{"faultstring":"Invalid access token","detail":{"errorcode":"oauth.v2.InvalidAccessToken"}}}
এই ক্ষেত্রে, ব্যর্থতা ভাল! এর মানে আপনার API প্রক্সি অনেক বেশি সুরক্ষিত। শুধুমাত্র একটি বৈধ OAuth অ্যাক্সেস টোকেন সহ বিশ্বস্ত অ্যাপগুলি সফলভাবে এই API কল করতে পারে৷
একটি OAuth অ্যাক্সেস টোকেন পান
এখন আমরা বড় পাওনা পেতে. আপনি একটি পাঠ্য ফাইলে অনুলিপি এবং আটকানো কী এবং গোপনীয়তা ব্যবহার করতে চলেছেন এবং একটি OAuth অ্যাক্সেস টোকেনের জন্য সেগুলি বিনিময় করতে চলেছেন৷ আপনি এখন আপনার আমদানি করা API নমুনা প্রক্সিতে একটি API কল করতে যাচ্ছেন, oauth , যা একটি API অ্যাক্সেস টোকেন তৈরি করবে।
সেই কী এবং গোপনীয়তা ব্যবহার করে, নিম্নলিখিত সিআরএল কল করুন (মনে রাখবেন যে প্রোটোকলটি হল https
), আপনার এজ সংস্থার নাম, আপনার কী এবং যেখানে নির্দেশিত আপনার গোপনীয়তা প্রতিস্থাপন করুন:
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" \ "https://ORG_NAME-test.apigee.net/oauth/client_credential/accesstoken?grant_type=client_credentials" \ -d "client_id=CLIENT_KEY&client_secret=CLIENT_SECRET"
মনে রাখবেন যে আপনি যদি কল করার জন্য পোস্টম্যানের মতো ক্লায়েন্ট ব্যবহার করেন, তাহলে client_id
এবং client_secret
অনুরোধের মূল অংশে যাবে এবং অবশ্যই x-www-form-urlencoded
হতে হবে।
আপনি এই মত একটি প্রতিক্রিয়া পেতে হবে:
{ "issued_at" : "1466025769306", "application_name" : "716bbe61-f14a-4d85-9b56-a62ff8e0d347", "scope" : "", "status" : "approved", "api_product_list" : "[helloworld_oauth2-Product]", "expires_in" : "3599", //--in seconds "developer.email" : "nigel@example.com", "token_type" : "BearerToken", "client_id" : "xNnREu1DNGfiwzQZ5HUN8IAUwZSW1GZW", "access_token" : "GTPY9VUHCqKVMRB0cHxnmAp0RXc0", "organization_name" : "myOrg", "refresh_token_expires_in" : "0", //--in seconds "refresh_count" : "0" }
আপনি আপনার OAuth অ্যাক্সেস টোকেন পেয়েছেন! অ্যাক্সেস_টোকেন মানটি অনুলিপি করুন (উদ্ধৃতি চিহ্ন ছাড়া) এবং এটি আপনার পাঠ্য ফাইলে আটকান। আপনি কিছুক্ষণের মধ্যে এটি ব্যবহার করবেন।
কি হয়েছে?
আগে মনে আছে যখন আপনি oauth প্রক্সিতে সেই শর্তসাপেক্ষ প্রবাহটি দেখেছিলেন, যেটি বলেছিল যদি রিসোর্স URI হয় /accesstoken
এবং অনুরোধ ক্রিয়াটি POST
হয়, তাহলে GenerateAccessTokenClient
OAuth নীতি কার্যকর করতে যা একটি অ্যাক্সেস টোকেন তৈরি করে? আপনার cURL কমান্ড সেই শর্তগুলি পূরণ করেছে, তাই OAuth নীতিটি কার্যকর করা হয়েছে৷ এটি আপনার ভোক্তা কী এবং ভোক্তা গোপনীয়তা যাচাই করেছে এবং সেগুলিকে একটি OAuth টোকেনের জন্য বিনিময় করেছে যা 1 ঘন্টার মধ্যে শেষ হবে৷
একটি অ্যাক্সেস টোকেন সহ API কল করুন (সফল!)
এখন আপনার কাছে একটি অ্যাক্সেস টোকেন আছে, আপনি API প্রক্সি কল করতে এটি ব্যবহার করতে পারেন। নিম্নলিখিত CURL কল করুন. আপনার এজ প্রতিষ্ঠানের নাম এবং অ্যাক্সেস টোকেন প্রতিস্থাপন করুন।
curl https://ORG_NAME-test.apigee.net/hellooauth2 -H "Authorization: Bearer TOKEN"
আপনার এখন API প্রক্সিতে একটি সফল কল পাওয়া উচিত যা আপনার IP ঠিকানা ফেরত দেয়। যেমন:
{"ip":"::ffff:192.168.14.136"}
আপনি প্রায় এক ঘন্টার জন্য সেই API কলটি পুনরাবৃত্তি করতে পারেন, এর পরে অ্যাক্সেস টোকেনের মেয়াদ শেষ হয়ে যাবে। এক ঘন্টা পরে কল করতে, আপনাকে পূর্ববর্তী পদক্ষেপগুলি ব্যবহার করে একটি নতুন অ্যাক্সেস টোকেন তৈরি করতে হবে৷
অভিনন্দন! আপনি একটি API প্রক্সি তৈরি করেছেন এবং কলটিতে একটি বৈধ OAuth অ্যাক্সেস টোকেন অন্তর্ভুক্ত করার প্রয়োজন করে এটি সুরক্ষিত করেছেন৷
সম্পর্কিত বিষয়
- OAuth হোম
- OAuthV2 নীতি
- এপিআই প্রক্সি ডাউনলোড করুন (যা দেখায় কিভাবে একটি এপিআই প্রক্সি একটি জিপ ফাইলে বান্ডিল করতে হয় যেমন আপনি ডাউনলোড করেছেন)