Edge ম্যানেজমেন্ট API-তে কল করার সময় যাচাইকরণের একটি উপায় হল প্রাথমিক যাচাইকরণ।
যেমন, আপনার সংস্থা সম্পর্কে তথ্য অ্যাক্সেস করতে, আপনি Edge ম্যানেজমেন্ট API-তে নিম্নলিখিত curl অনুরোধ করতে পারেন:
curl -u USER_NAME:PASSWORD https://MS_IP_DNS:8080/v1/organizations/ORG_NAME
এই উদাহরণে, আপনি সাধারণ যাচাইকরণ
ক্রেডেনশিয়াল পাস করতে curl -u বিকল্প ব্যবহার করেন। অথবা, Edge ম্যানেজমেন্ট API কল করার জন্য Bearer হেডার-এ OAuth2 টোকেন পাস করতে পারেন।
নিচে দেওয়া উদাহরণে তা দেখানো হয়েছে:
curl -H "Authorization: Bearer ACCESS_TOKEN" https://MS_IP_DNS:8080/v1/organizations/ORG_NAME
যাচাইকরণের জন্য এক্সটার্নাল IDP চালু করার পরে, আপনি চাইলে Basic
যাচাইকরণ বন্ধ করে দিতে পারেন। আপনি Basic
যাচাইকরণ বন্ধ করে দিলে, Basic যাচাইকরণ কাজ করে এমন Edge ম্যানেজমেন্ট API কলের উপর নির্ভর করে এমন সব স্ক্রিপ্ট (যেমন, Maven, shell এবং apigeetool) আর কাজ
করবে না। আপনাকে অবশ্যই
Bearer হেডার থেকে OAuth2 অ্যাক্সেস টোকেন পাস করার জন্য বেসিক যাচাইকরণ ব্যবহার করে এমন যেকোনও API কল ও স্ক্রিপ্ট আপডেট
করতে হবে।
get_token-এর মাধ্যমে টোকেন পাওয়া ও রিফ্রেশ করা
get_token ইউটিলিটি আপনার প্রাথমিক যাচাইকরণ ক্রেডেনশিয়াল (এবং কিছু ক্ষেত্রে একটি
পাসকোড) OAuth2 অ্যাক্সেস এবং রিফ্রেশ টোকেনের জন্য এক্সচেঞ্জ করে। get_token ইউটিলিটি আপনার
শংসাপত্র গ্রহণ করে এবং একটি বৈধ অ্যাক্সেস টোকেন রিটার্ন করে। কোনও টোকেন রিফ্রেশ করা গেলে, ইউটিলিটি রিফ্রেশ করে
সেটি ফেরত দেয়। রিফ্রেশ টোকেনের মেয়াদ শেষ হয়ে গেলে, ব্যবহারকারীর ক্রেডেনশিয়াল প্রম্পট করা হবে।
প্রয়োজন হলে ব্যবহার করার জন্য get_token ইউটিলিটি ডিস্কে টোকেন সেভ করে রাখে। এটি
stdout-এর জন্য একটি সঠিক অ্যাক্সেস টোকেনও প্রিন্ট করে। সেখান থেকে, আপনি Postman-এর মতো ব্রাউজার এক্সটেনশন ব্যবহার করতে পারেন
অথবা curl-এ ব্যবহারের জন্য এনভায়রনমেন্ট ভেরিয়েবলে এম্বেড করতে পারেন।
Edge ম্যানেজমেন্ট API কল করার জন্য OAuth2 অ্যাক্সেস টোকেন পেতে:
sso-cliবান্ডেল ডাউনলোড করুন:curl http://EDGE_SSO_IP_DNS:9099/resources/scripts/sso-cli/ssocli-bundle.zip -o "ssocli-bundle.zip"
যেখানে EDGE_SSO_IP_DNS হল Apigee SSO মডিউল হোস্ট করা মেশিনের IP অ্যাড্রেস বা DNS নাম। আপনি Apigee SSO-তে TLS কনফিগার করে থাকলে,
httpsএবং সঠিক TLS পোর্ট নম্বর ব্যবহার করুন।- নিচের উদাহরণে দেখানো পদ্ধতি অনুসরণ করে
ssocli-bundle.zipবান্ডেল আনজিপ করুন:unzip ssocli-bundle.zip
- নিচের উদাহরণে যেভাবে দেখানো হয়েছে সেইভাবে
/usr/local/bin-এget_tokenইনস্টল করুন:./install -b PATH
-bবিকল্পটি অন্য একটি লোকেশন নির্দিষ্ট করে। - নিচে উল্লেখ করা ফর্ম্যাটে আপনার লগ-ইন URL-এ
SSO_LOGIN_URLএনভায়রনমেন্ট ভেরিয়েবল সেট করুন: ফর্ম:export SSO_LOGIN_URL="http://EDGE_SSO_IP_DNS:9099"
যেখানে EDGE_SSO_IP_DNS হল Apigee SSO মডিউল হোস্ট করা মেশিনের IP অ্যাড্রেস। আপনি Apigee SSO-তে TLS কনফিগার করে থাকলে,
httpsএবং সঠিক TLS পোর্ট নম্বর ব্যবহার করুন। - (শুধুমাত্র SAML) ব্রাউজারে, নিম্নলিখিত URL-এ নেভিগেট করে ওয়ান-টাইম
পাসকোড পান:
http://EDGE_SSO_IP_DNS:9099/passcode
আপনি Apigee SSO-তে TLS কনফিগার করে থাকলে,
httpsএবং সঠিক TLS পোর্ট নম্বর ব্যবহার করুন।এই অনুরোধের উত্তরে একটি একবার ব্যবহারের পাসকোড পাঠানো হয়। আপনি নতুন পাসকোড পাওয়ার জন্য URL রিফ্রেশ না করা পর্যন্ত অথবা
get_token-এর সাথে পাসকোড ব্যবহার করে অ্যাক্সেস টোকেন তৈরি না করা পর্যন্ত এটি বৈধ থাকে।মনে রাখবেন, আপনি SAML IDP-এর মাধ্যমে যাচাই করার সময় শুধুমাত্র পাসকোড ব্যবহার করতে পারবেন। আপনি LDAP IDP-এর সাথে যাচাইকরণের জন্য পাসকোড ব্যবহার করতে পারবেন না।
- OAuth2 অ্যাক্সেস টোকেন পেতে
get_token-কে ইনভোক করুন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:get_token -u EMAIL_ADDRESS
যেখানে EMAIL_ADDRESS হল Edge ব্যবহারকারীর ইমেল আইডি।
(শুধুমাত্র SAML) ইমেল আইডির পাশাপাশি কমান্ড লাইনে পাসকোড লিখুন, যেমন নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
get_token -u EMAIL_ADDRESS -p PASSCODE
get_tokenইউটিলিটি OAuth2 অ্যাক্সেস টোকেন পায়, এটি স্ক্রিনে প্রিন্ট করে এবং এটি ও রিফ্রেশ টোকেন~/.sso-cli-এ লেখে। Bearerহেডার হিসেবে Edge ম্যানেজমেন্ট API কলে অ্যাক্সেস টোকেন পাস করুন, যেমন নিম্নলিখিত উদাহরণে দেখানো হয়েছে:curl -H "Authorization: Bearer ACCESS_TOKEN" https://MS_IP:8080/v1/organizations/ORG_NAME
- প্রথমবার নতুন অ্যাক্সেস টোকেন পাওয়ার পরে, আপনি অ্যাক্সেস টোকেন পেতে এবং
নিচে দেখানো উদাহরণের মতো একটি কমান্ডে API কলে পাস করতে পারবেন:
header=`get_token` && curl -H "Authorization: Bearer $header" https://MS_IP:8080/v1/o/ORG_NAME
এই ধরনের কমান্ডের ক্ষেত্রে, অ্যাক্সেস টোকেনের মেয়াদ শেষ হয়ে গেলে, রিফ্রেশ টোকেনের মেয়াদ শেষ না হওয়া পর্যন্ত এটি অটোমেটিক রিফ্রেশ করা হয়।
(শুধুমাত্র SAML) রিফ্রেশ টোকেনের মেয়াদ শেষ হয়ে গেলে, get_token আপনাকে নতুন পাসকোড দিতে বলবে। আপনাকে
অবশ্যই ৩ নম্বর ধাপে দেখানো URL-এ নেভিগেট করতে হবে এবং নতুন OAuth অ্যাক্সেস টোকেন জেনারেট করার আগে একটি নতুন পাসকোড জেনারেট করতে হবে।
টোকেন পেতে ও রিফ্রেশ করতে ম্যানেজমেন্ট API ব্যবহার করুন
Apigee Edge ম্যানেজমেন্ট API-এর সাথে OAuth2 সুরক্ষা ব্যবহার করুন থেকে টোকেন পাওয়া ও রিফ্রেশ করার জন্য Edge ম্যানেজমেন্ট API কীভাবে ব্যবহার করতে হয় তা জানতে পারবেন। এছাড়াও, SAML অ্যাসারশন থেকে জেনারেট করা টোকেন পেতে আপনি Edge API কল ব্যবহার করতে পারেন।
Apigee Edge ম্যানেজমেন্ট API-এর সাথে OAuth2 নিরাপত্তা ব্যবহার করা ডকুমেন্টে উল্লেখ করা API কলের সাথে একমাত্র পার্থক্য হল, কলের URL-এ আপনার জোনের নাম উল্লেখ করতে হবে। এছাড়াও, SAML IDP-এর মাধ্যমে প্রাথমিক অ্যাক্সেস টোকেন তৈরি করার জন্য, আপনাকে অবশ্যই পাসকোড অন্তর্ভুক্ত করতে হবে, যেমনটি উপরের পদ্ধতির ৩ নম্বর ধাপে দেখানো হয়েছে।
অনুমোদনের জন্য, Authorization
হেডারে একটি সংরক্ষিত OAuth2 ক্লায়েন্ট ক্রেডেনশিয়াল পাস করুন। কলটি স্ক্রিনে অ্যাক্সেস ও রিফ্রেশ টোকেন প্রিন্ট করে।
অ্যাক্সেস টোকেন পান
(LDAP) প্রাথমিক অ্যাক্সেস ও রিফ্রেশ টোকেন জেনারেট করতে নিম্নলিখিত API কল ব্যবহার করুন:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ http://EDGE_SSO_IP_DNS:9099/oauth/token -s \ -d 'grant_type=password&username=USER_EMAIL&password=USER_PASSWORD'
(SAML) প্রাথমিক অ্যাক্সেস ও রিফ্রেশ টোকেন জেনারেট করতে নিম্নলিখিত API কল ব্যবহার করুন: টোকেন:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://EDGE_SSO_IP_DNS:9099/oauth/token -s \ -d 'grant_type=password&response_type=token&passcode=PASSCODE'
মনে রাখবেন, SAML IDP-এর মাধ্যমে যাচাইকরণের জন্য সাময়িক পাসকোড প্রয়োজন হয়, তবে LDAP IDP-এর ক্ষেত্রে প্রয়োজন হয় না।
অ্যাক্সেস টোকেন রিফ্রেশ করা
পরে অ্যাক্সেস টোকেন রিফ্রেশ করতে, রিফ্রেশ টোকেন সহ নিম্নলিখিত কল ব্যবহার করুন:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://EDGE_SSO_IP_DNS:9099/oauth/token \ -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'