মেশিন ব্যবহারকারীর মাধ্যমে টাস্ক অটোমেট করুন

Edge API-এর সাথে এক্সটার্নাল IDP ব্যবহার করার সময়, CLI থেকে OIDC/OAuth2 অ্যাক্সেস টোকেন পাওয়ার স্ট্যান্ডার্ড প্রসেস হল OAuth 2.0 ডিভাইস কোড ফ্লো। এই ফ্লোতে, আপনি get_token ইউটিলিটি ব্যবহার করেন, যা আপনার IDP-এর মাধ্যমে যাচাই করার জন্য ব্রাউজারে একটি URL দেখার জন্য আপনাকে প্রম্পট করে এবং তারপরে অটোমেটিক আপনার টার্মিনাল আনব্লক করে।

তবে, আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট সাধারণ ডেভেলপমেন্ট টাস্কের জন্য অটোমেশন সাপোর্ট করতে পারে, যেমন টেস্ট অটোমেশন বা CI/CD পাইপলাইন। কোনও এক্সটার্নাল IDP চালু করা থাকলে, এইসব টাস্ক অটোমেট করতে, আপনাকে ব্রাউজার ইন্টার‍্যাকশন ছাড়াই হেডলেসভাবে OAuth2 টোকেন পেতে ও রিফ্রেশ করতে হবে।

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

মেশিন ব্যবহারকারী তৈরি করুন

আপনি এমন একটি মেশিন ব্যবহারকারী তৈরি করতে পারেন যা আপনার সমস্ত সংস্থা ব্যবহার করে অথবা প্রতিটি সংস্থার জন্য আলাদা মেশিন ব্যবহারকারী তৈরি করতে পারেন।

মেশিন ব্যবহারকারীকে সরাসরি লোকাল OpenLDAP ডিরেক্টরিতে তৈরি ও স্টোর করা হয় এবং স্পষ্টভাবে মেশিন ব্যবহারকারী (employeeType: machineuser) হিসেবে ট্যাগ করা হয়। এর ফলে, Apigee SSO পাসওয়ার্ড গ্র্যান্টের মাধ্যমে মেশিন ব্যবহারকারীকে নিরাপদে যাচাই করতে পারে, এমনকি হিউম্যান ব্যবহারকারীর জন্য ফেডারেটেড SAML/OIDC কঠোরভাবে প্রয়োগ করা হলেও।

মেশিন ব্যবহারকারী তৈরি, তালিকাভুক্ত ও ম্যানেজ করার বিষয়ে বিস্তারিত নির্দেশাবলীর জন্য, apigee-machineuser.sh-এর মাধ্যমে মেশিন ব্যবহারকারী ম্যানেজ করুন দেখুন।

মেশিন ইউজার টোকেন পাওয়া ও রিফ্রেশ করা

মেশিন ব্যবহারকারীদের জন্য টোকেন পেতে, আপনি /opt/apigee/apigee-openldap/bin/-এ দেওয়া get_token এবং acurl ইউটিলিটি বা স্ট্যান্ডার্ড curl ব্যবহার করতে পারেন।

  • Apigee ইউটিলিটি ব্যবহার করা: get_token এবং acurl র‍্যাপার অটোমেটিক টোকেন ক্যাশিং, পেলোড জেনারেশন এবং অটো-রিফ্রেশিং ম্যানেজ করে। এইসব টুল ব্যবহার করার ব্যাপারে বিস্তারিত নির্দেশাবলী ও উদাহরণ দেখতে, get_token ও acurl ইউটিলিটি ব্যবহার করা নিবন্ধটি দেখুন।
  • স্ট্যান্ডার্ড curl ব্যবহার করে: আপনার অটোমেশন স্ক্রিপ্টে Apigee র‍্যাপারের অ্যাক্সেস না থাকলে, আপনি নিম্নলিখিত স্ট্যান্ডার্ড curl কমান্ড ব্যবহার করে সরাসরি Apigee SSO-এর সাথে ইন্টার‍্যাক্ট করতে পারবেন:

স্ট্যান্ডার্ড curl ব্যবহার করে টোকেন পেতে ও রিফ্রেশ করতে:

  1. Apigee SSO থেকে সরাসরি প্রাথমিক অ্যাক্সেস ও রিফ্রেশ টোকেন জেনারেট করতে নিম্নলিখিত API কল ব্যবহার করুন:
    curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
      -H "accept: application/json;charset=utf-8" \
      -X POST http://Edge_SSO_IP_DNS:9099/token -s \
        -d 'grant_type=password&username=machineUserEmail&password=machineUserPassword&client_id=edgecli&client_secret=edgeclisecret&scope=openid%20profile%20email%20offline_access'
      
  2. Authorization: Bearer হেডারে Edge ম্যানেজমেন্ট API কলে অ্যাক্সেস টোকেন পাস করুন:
    curl -H "Authorization: Bearer access_token" \
      http://MS_IP_DNS:8080/v1/organizations/org_name
  3. পরে নেটিভ পদ্ধতিতে অ্যাক্সেস টোকেন রিফ্রেশ করতে, রিফ্রেশ টোকেন সহ নিম্নলিখিত কল ব্যবহার করুন:
    curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \
      -H "Accept: application/json;charset=utf-8" \
      -X POST http://Edge_SSO_IP_DNS:9099/token \
      -d 'grant_type=refresh_token&refresh_token=refreshToken&client_id=edgecli&client_secret=edgeclisecret'