Apigee SSO চালু করার পরে Edge অ্যাডমিন ইউটিলিটি ও API ব্যবহার করা

Apigee SSO চালু করার পরে কীভাবে Edge সিস্টেম অ্যাডমিন টুল ও কমান্ড রান করতে হয় তা এই বিভাগে বর্ণনা করা হয়েছে। Edge-এ অনেক টাস্কের জন্য সিস্টেম অ্যাডমিনিস্ট্রেটর ক্রেডেনশিয়াল প্রয়োজন, যেমন:

  • প্রতিষ্ঠান এবং পরিবেশ তৈরি করা
  • Edge কম্পোনেন্ট যোগ করা এবং সরানো
  • apigee-adminapi.shটি কমান্ড রান করা হচ্ছে

তবে, Edge-এ SSO চালু করার পরে, আপনি সাধারণত বেসিক অথেন্টিকেশন বন্ধ করে দেন যাতে যাচাইকরণের একমাত্র উপায় OIDC/SAML IDP-এর মাধ্যমে হয়। তাই, আপনাকে অবশ্যই নিশ্চিত করতে হবে যে আপনি নিজের IDP-তে সিস্টেম অ্যাডমিন অ্যাকাউন্ট যোগ করেছেন অথবা অটোমেশনের জন্য একটি লোকাল মেশিন ব্যবহারকারী তৈরি করেছেন।

সিস্টেম অ্যাডমিনিস্ট্রেটর হিসেবে এজ ম্যানেজমেন্ট API কল করা

অনেক Edge API কলের জন্য আপনাকে সিস্টেম অ্যাডমিনিস্ট্রেটরের ক্রেডেনশিয়াল পাস করতে হবে। Edge ম্যানেজমেন্ট API-এর সাথে SAML ব্যবহার করা-তে Edge ম্যানেজমেন্ট API কল করার সময় get_token ইউটিলিটি ব্যবহার করে কীভাবে টোকেন পাওয়া ও রিফ্রেশ করা যায় সেই সংক্রান্ত নির্দেশাবলী রয়েছে।

Apigee SSO-এর সাথে apigee-adminapi.sh ইউটিলিটি ব্যবহার করা

apigee-adminapi.sh ইউটিলিটি ব্যবহার করে একই Edge কনফিগারেশন টাস্ক সম্পূর্ণ করুন যা আপনি Edge ম্যানেজমেন্ট API-তে কল করে করেন। apigee-adminapi.sh ইউটিলিটির সুবিধা হল যে এটি:

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

Apigee SSO চালু করার পরে, আপনি হিউম্যান অ্যাডমিনিস্ট্রেটর নাকি অটোমেটেড স্ক্রিপ্ট তার উপর নির্ভর করে apigee-adminapi.sh ইউটিলিটিতে ক্রেডেনশিয়াল পাস করার দুটি প্রাথমিক উপায় আছে।

আপনি SSO ক্রেডেনশিয়াল নির্দিষ্ট করার বিকল্প সহ যেকোনও apigee-adminapi.sh কমান্ডের জন্য সব বিকল্প দেখতে পারবেন, এর জন্য কমান্ডে -h বিকল্প ব্যবহার করতে হবে। যেমন:

apigee-adminapi.sh orgs list -h

বিয়ারার টোকেন পাস করা (হিউম্যান অ্যাডমিনিস্ট্রেটরের জন্য)

কারণ, আধুনিক Apigee SSO, পুরনো /passcode কপি-পেস্ট ফ্লো কাজ করে না, তাই OAuth 2.0 ডিভাইস কোড ফ্লো সম্পূর্ণ করতে হিউম্যান অ্যাডমিনিস্ট্রেটরদের get_token ইউটিলিটি ব্যবহার করতে হবে এবং তারপরে স্ক্রিপ্টে ফলাফল হিসেবে পাওয়া টোকেন পাস করতে হবে।

প্রথমে, একটি টোকেন পান:

/opt/apigee/apigee-openldap/bin/get_token -u adminEmail

তারপর, কমান্ড কল করার সময় টোকেন ব্যবহার করুন:

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \
  --admin adminEmail --oauth-token token_string

যেখানে:

  • oauth-flow passcode নির্দিষ্ট করে (এটি লিগ্যাসি স্ক্রিপ্টকে সিগন্যাল দেয় যে টোকেন প্রদান করা হচ্ছে)।
  • oauth-token-এ get_token থেকে পাওয়া র-JWT স্ট্রিং থাকে।

পাসওয়ার্ড পাস করা (শুধুমাত্র মেশিন ব্যবহারকারীদের জন্য)

আপনি যদি ইনফ্রাস্ট্রাকচার ডিপ্লয়মেন্ট অটোমেট করেন, তাহলে password_grant ফ্লো ব্যবহার করে সরাসরি ক্রেডেনশিয়াল পাস করতে পারবেন। তবে, SAML/OIDC ফেডারেশন চালু করা থাকলে, MFA বাইপাস করা আটকাতে হিউম্যান শ্যাডো ব্যবহারকারীদের পাসওয়ার্ড দিয়ে লগ-ইন করা থেকে ব্লক করা হয়। আপনাকে প্রথমে OpenLDAP-এ একটি নির্দিষ্ট মেশিন ব্যবহারকারী প্রভিশন করতে হবে।

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \
  --admin machineUserEmail --oauth-password machineUserPassword

যেখানে:

  • sso-url বিকল্পটি Apigee SSO-এর URL নির্দিষ্ট করে। আপনি যদি পোর্ট বা প্রোটোকল 9099 এবং HTTP থেকে পরিবর্তন করে থাকেন, তাহলে সেগুলি পরিবর্তন করুন।
  • oauth-flow password_grant নির্দিষ্ট করে।
  • machineUserEmail হল অটোমেটেড মেশিন ব্যবহারকারীর ইমেল আইডি।
  • oauth-password মেশিন ব্যবহারকারীর পাসওয়ার্ড নির্দিষ্ট করে।

Apigee SSO-এর সাথে Edge ইউটিলিটি ব্যবহার করা

অনেক Edge ইউটিলিটির জন্য সিস্টেম অ্যাডমিন ক্রেডেনশিয়াল প্রয়োজন, যেমন:

  • apigee-provision ব্যবহার করে সংস্থা, এনভায়রনমেন্ট ও ভার্চুয়াল হোস্ট তৈরি করা হয়
  • setup.sh আগে থেকে থাকা সিস্টেমে নোড যোগ করতে ব্যবহার করা হয়
  • অন্য যেকোনও ইউটিলিটি যেখানে আপনাকে কনফিগারেশন ফাইলে সিস্টেম অ্যাডমিন ক্রেডেনশিয়াল উল্লেখ করতে হবে

এইসব ইউটিলিটি ইনপুট হিসেবে একটি কনফিগারেশন ফাইল নেয় যা সিস্টেম অ্যাডমিনের ক্রেডেনশিয়াল নির্দিষ্ট করে। SSO চালু করার আগে, এই প্রপার্টি ব্যবহার করে এটি করা হয়:

ADMIN_EMAIL="adminEmail"
APIGEE_ADMINPW="adminPWord"

Apigee SSO চালু করার পরে, sys অ্যাডমিনের ক্রেডেনশিয়াল উল্লেখ করার জন্য আপনাকে অবশ্যই বিভিন্ন প্রপার্টি ব্যবহার করতে হবে।

বিয়ারার টোকেন ব্যবহার করে (হিউম্যান অ্যাডমিনিস্ট্রেটরের জন্য)

হিউম্যান অ্যাডমিনিস্ট্রেটরের মাধ্যমে ইন্টার‍্যাক্টিভ ডেপ্লয়মেন্টের জন্য, get_token ইউটিলিটি ব্যবহার করে টোকেন পান এবং OAUTH_BEARER_TOKEN প্রপার্টির মাধ্যমে সেটি প্রদান করুন:

ADMIN_EMAIL="adminEmail"
SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
OAUTH_FLOW="passcode"
OAUTH_BEARER_TOKEN="token_string"

যেখানে:

  • OAUTH_FLOW passcode নির্দিষ্ট করে (টোকেন প্রদান করা হয়েছে বলে সিগন্যাল দেয়)।
  • OAUTH_BEARER_TOKEN-এ get_token থেকে পাওয়া কাঁচা JWT স্ট্রিং থাকে।

পাসওয়ার্ড ব্যবহার করা (শুধুমাত্র মেশিন ব্যবহারকারীদের জন্য)

সম্পূর্ণ অটোমেটিক ডেপ্লয়মেন্টের জন্য, password_grant ফ্লো ব্যবহার করে স্পষ্টভাবে প্রোভিশন করা মেশিন ইউজারের ক্রেডেনশিয়াল প্রদান করুন:

ADMIN_EMAIL="machineUserEmail"
SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
OAUTH_FLOW="password_grant"
OAUTH_ADMIN_PASSWORD="machineUserPassword"

যেখানে:

  • SSO_LOGIN_URL Apigee SSO-এর URL নির্দিষ্ট করে।
  • OAUTH_FLOW password_grant নির্দিষ্ট করে।
  • OAUTH_ADMIN_PASSWORD মেশিন ব্যবহারকারীর পাসওয়ার্ড নির্দিষ্ট করে।