Apigee एसएसओ को चालू करने के बाद, Edge एडमिन यूटिलिटी और एपीआई का इस्तेमाल करना

इस सेक्शन में, Apigee SSO चालू करने के बाद, Edge के सिस्टम एडमिन टूल और कमांड चलाने का तरीका बताया गया है. Edge पर कई टास्क के लिए, सिस्टम एडमिन क्रेडेंशियल की ज़रूरत होती है. जैसे:

  • संगठन और एनवायरमेंट बनाना
  • Edge के कॉम्पोनेंट जोड़ना और हटाना
  • apigee-adminapi.sh कमांड चलाना

हालांकि, Edge पर एसएसओ चालू करने के बाद, आम तौर पर बेसिक ऑथेंटिकेशन बंद कर दिया जाता है. ऐसा इसलिए किया जाता है, ताकि पुष्टि करने का सिर्फ़ एक ही तरीका हो, जो OIDC/SAML IDP के ज़रिए हो. इसलिए, आपको यह पक्का करना होगा कि आपने अपने आईडीपी में सिस्टम एडमिन खाता जोड़ा हो या ऑटोमेशन के लिए, स्थानीय मशीन उपयोगकर्ता बनाया हो.

सिस्टम एडमिन के तौर पर, Edge के मैनेजमेंट एपीआई को कॉल करना

Edge के कई एपीआई कॉल के लिए, आपको सिस्टम एडमिन क्रेडेंशियल पास करने की ज़रूरत होती है. Edge के मैनेजमेंट एपीआई के साथ एसएएमएल का इस्तेमाल करना लेख में, Edge के मैनेजमेंट एपीआई कॉल करते समय, get_token यूटिलिटी का इस्तेमाल करके टोकन पाने और उन्हें रीफ़्रेश करने का तरीका बताया गया है.

Apigee SSO के साथ, apigee-adminapi.sh यूटिलिटी का इस्तेमाल करना

Edge के मैनेजमेंट एपीआई को कॉल करके, Edge के कॉन्फ़िगरेशन से जुड़े वही टास्क पूरे करने के लिए, apigee-adminapi.sh यूटिलिटी का इस्तेमाल करें. apigee-adminapi.sh यूटिलिटी का फ़ायदा यह है कि:

  • यह कमांड-लाइन का आसान इंटरफ़ेस इस्तेमाल करती है
  • यह टैब-आधारित कमांड पूरी होने की सुविधा लागू करती है
  • यह मदद और इस्तेमाल के बारे में जानकारी देती है
  • अगर आपको एपीआई आज़माना है, तो यह उससे जुड़ा एपीआई कॉल दिखा सकती है

Apigee SSO चालू करने के बाद, आपके पास apigee-adminapi.sh यूटिलिटी को क्रेडेंशियल पास करने के दो मुख्य तरीके होते हैं. यह इस बात पर निर्भर करता है कि आप एडमिन हैं या कोई ऑटोमेटेड स्क्रिप्ट.

किसी भी 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 फ़्लो का इस्तेमाल करके, सीधे क्रेडेंशियल पास किए जा सकते हैं. हालांकि, अगर एसएएमएल/ओआईडीसी फ़ेडरेशन चालू है, तो शैडो उपयोगकर्ताओं को पासवर्ड से लॉग इन करने से ब्लॉक कर दिया जाता है. ऐसा, एमएफ़ए को बायपास होने से रोकने के लिए किया जाता है. सबसे पहले, आपको 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 का यूआरएल तय करता है. अगर आपने पोर्ट या प्रोटोकॉल को 9099 और एचटीटीपी से बदलकर कोई और वैल्यू सेट की है, तो उनमें बदलाव करें.
  • oauth-flow, password_grant तय करता है.
  • machineUserEmail, ऑटोमेटेड मशीन उपयोगकर्ता का ईमेल पता है.
  • oauth-password, मशीन उपयोगकर्ता का पासवर्ड तय करता है.

Apigee SSO के साथ, Edge की यूटिलिटी का इस्तेमाल करना

Edge की कई यूटिलिटी के लिए, सिस्टम एडमिन क्रेडेंशियल की ज़रूरत होती है. जैसे:

  • apigee-provision का इस्तेमाल, संगठन, एनवायरमेंट, और वर्चुअल होस्ट बनाने के लिए किया जाता है
  • setup.sh का इस्तेमाल, मौजूदा सिस्टम में नोड जोड़ने के लिए किया जाता है
  • कोई भी अन्य यूटिलिटी जिसमें आपको कॉन्फ़िगरेशन फ़ाइल में, सिस्टम एडमिन क्रेडेंशियल तय करने हों

इन यूटिलिटी के लिए, इनपुट के तौर पर एक कॉन्फ़िगरेशन फ़ाइल की ज़रूरत होती है. इसमें सिस्टम एडमिन के क्रेडेंशियल तय किए जाते हैं. एसएसओ चालू होने से पहले, यह काम इन प्रॉपर्टी का इस्तेमाल करके किया जाता है:

ADMIN_EMAIL="adminEmail"
APIGEE_ADMINPW="adminPWord"

Apigee SSO चालू करने के बाद, सिस्टम एडमिन के क्रेडेंशियल तय करने के लिए, आपको अलग-अलग प्रॉपर्टी का इस्तेमाल करना होगा.

धारक टोकन का इस्तेमाल करना (एडमिन के लिए)

एडमिन की ओर से इंटरैक्टिव डिप्लॉयमेंट के लिए, 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 का यूआरएल तय करता है.
  • OAUTH_FLOW, password_grant तय करता है.
  • OAUTH_ADMIN_PASSWORD, मशीन उपयोगकर्ता का पासवर्ड तय करता है.