Edge for Private Cloud v. 4.17.09
Edge API के साथ एसएएमएल का इस्तेमाल करते समय, एसएएमएल असर्शन से OAuth2 ऐक्सेस और रीफ़्रेश टोकन पाने के लिए इस्तेमाल की जाने वाली प्रोसेस को पासकोड फ़्लो कहा जाता है. पासकोड फ़्लो की मदद से, ब्राउज़र का इस्तेमाल करके एक बार इस्तेमाल होने वाला पासकोड हासिल किया जाता है. इसके बाद, इस पासकोड का इस्तेमाल करके OAuth2 टोकन हासिल किए जाते हैं.
हालांकि, हो सकता है कि आपका डेवलपमेंट एनवायरमेंट, डेवलपमेंट से जुड़े सामान्य टास्क के लिए ऑटोमेशन की सुविधा देता हो. जैसे, टेस्ट ऑटोमेशन या लगातार इंटिग्रेशन/लगातार डिप्लॉयमेंट (सीआई/सीडी). SAML चालू होने पर इन टास्क को ऑटोमेट करने के लिए, आपको OAuth2 टोकन पाने और उन्हें रीफ़्रेश करने का तरीका चाहिए. इसके लिए, आपको ब्राउज़र से पासकोड को कॉपी/पेस्ट करने की ज़रूरत नहीं है.
Edge, मशीन यूज़र का इस्तेमाल करके अपने-आप टोकन जनरेट करने की सुविधा देता है. मशीन उपयोगकर्ता, पासकोड डाले बिना OAuth2 टोकन हासिल कर सकता है. इसका मतलब है कि Edge Management API का इस्तेमाल करके, OAuth2 टोकन पाने और उन्हें रीफ़्रेश करने की प्रोसेस को पूरी तरह से ऑटोमेट किया जा सकता है.
मशीन यूज़र बनाना
एसएएमएल संगठन के लिए मशीन उपयोगकर्ता बनाने के लिए, apigee-ssoadminapi.sh यूटिलिटी का इस्तेमाल करें. ज़्यादा जानकारी के लिए, apigee-ssoadminapi.sh का इस्तेमाल करना देखें. आपके पास एक मशीन यूज़र बनाने का विकल्प है, जिसका इस्तेमाल आपके सभी संगठन कर सकते हैं. इसके अलावा, हर संगठन के लिए अलग मशीन यूज़र भी बनाया जा सकता है.
मशीन यूज़र को Edge डेटास्टोर में बनाया और सेव किया जाता है, न कि आपके एसएएमएल आइडेंटिटी प्रोवाइडर में. इसलिए, Edge यूज़र इंटरफ़ेस (यूआई) और Edge मैनेजमेंट एपीआई का इस्तेमाल करके, मशीन यूज़र को मैनेज करने की ज़िम्मेदारी आपकी नहीं है.
मशीन यूज़र बनाते समय, आपको एक ईमेल पता और पासवर्ड डालना होगा. मशीन यूज़र बनाने के बाद, उसे एक या उससे ज़्यादा संगठनों को असाइन किया जाता है.
मशीन यूज़र बनाने के लिए:
- मशीन यूज़र बनाने के लिए, इस apigee-ssoadminapi.sh कमांड का इस्तेमाल करें:
> apigee-ssoadminapi.sh saml machineuser add --admin SSO_ADMIN_NAME --secret SSO_ADMIN_SECRET --host edge_sso_IP_or_DNS -u machine_user_email -p machine_user_password
जहां:- SSO_ADMIN_NAME, एडमिन का वह उपयोगकर्ता नाम है जिसे Edge SSO मॉड्यूल को कॉन्फ़िगर करने के लिए इस्तेमाल की जाने वाली कॉन्फ़िगरेशन फ़ाइल में, SSO_ADMIN_NAME प्रॉपर्टी से तय किया गया है. डिफ़ॉल्ट रूप से, यह ssoadmin पर सेट होता है.
- SSO_ADMIN_SECRET, एडमिन का पासवर्ड है. इसके बारे में कॉन्फ़िगरेशन फ़ाइल में, SSO_ADMIN_SECRET प्रॉपर्टी में बताया गया है.
इस उदाहरण में, --port और --ssl की वैल्यू को छोड़ा जा सकता है. ऐसा इसलिए, क्योंकि apigee-sso मॉड्यूल, --port के लिए 9099 और --ssl के लिए http की डिफ़ॉल्ट वैल्यू का इस्तेमाल करता है. अगर आपके इंस्टॉलेशन में इन डिफ़ॉल्ट वैल्यू का इस्तेमाल नहीं किया जाता है, तो ज़रूरत के हिसाब से वैल्यू तय करें.
- Edge यूज़र इंटरफ़ेस (यूआई) में लॉग इन करें और मशीन यूज़र का ईमेल पता अपने संगठनों में जोड़ें. साथ ही, मशीन यूज़र को ज़रूरी भूमिका असाइन करें. ज़्यादा जानकारी के लिए, ग्लोबल उपयोगकर्ताओं को जोड़ना लेख पढ़ें.
मशीन यूज़र टोकन पाना और उसे रीफ़्रेश करना
पासकोड के बजाय मशीन उपयोगकर्ता के क्रेडेंशियल पास करके, OAuth2 टोकन पाने और उन्हें रीफ़्रेश करने के लिए, Edge API का इस्तेमाल करें.
मशीन यूज़र के लिए OAuth2 टोकन पाने के लिए:
- शुरुआती ऐक्सेस और रीफ़्रेश टोकन जनरेट करने के लिए, इस एपीआई कॉल का इस्तेमाल करें:
> 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=m_user_email&password=m_user_password '
अनुमति देने के लिए, अनुमति हेडर में रिज़र्व किया गया OAuth2 क्लाइंट क्रेडेंशियल पास करें. कॉल, स्क्रीन पर ऐक्सेस और रीफ़्रेश टोकन दिखाता है. टोकन को बाद में इस्तेमाल करने के लिए सेव करें. - ऐक्सेस टोकन को Bearer हेडर के तौर पर Edge मैनेजमेंट एपीआई कॉल को पास करें:
> curl -H "Authorization: Bearer access_token" http://ms_IP_DNS:8080/v1/organizations/orgName
जहां orgName उस संगठन का नाम है जिसमें मशीन उपयोगकर्ता मौजूद है. - ऐक्सेस टोकन को बाद में रीफ़्रेश करने के लिए, इस कॉल का इस्तेमाल करें. इसमें रीफ़्रेश टोकन शामिल होता है:
> 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 /
-d 'grant_type=refresh_token&refresh_token=refreshToken'
अनुमति देने के लिए, अनुमति हेडर में रिज़र्व किया गया OAuth2 क्लाइंट क्रेडेंशियल पास करें.
Edge मैनेजमेंट एपीआई का इस्तेमाल करके, मशीन यूज़र बनाना
apigee-ssoadminapi.sh यूटिलिटी का इस्तेमाल करने के बजाय, Edge Management API का इस्तेमाल करके मशीन यूज़र बनाया जा सकता है. मशीन यूज़र बनाने के लिए:
- ssoadmin उपयोगकर्ता के लिए टोकन पाने के लिए, यहां दिए गए cURL कमांड का इस्तेमाल करें. यह apigee-sso के लिए एडमिन खाते का उपयोगकर्ता नाम है:
> curl "http://edge_sso_IP_DNS:9099/oauth/token" -i -X POST /
-H 'Accept: application/json' / -H 'Content-Type: application/x-www-form-urlencoded' /
-d "response_type=token" -d "grant_type=client_credentials" /
--data-urlencode "client_secret=SSO_ADMIN_SECRET" /
--data-urlencode "client_id=ssoadmin"
यहां SSO_ADMIN_SECRET, एडमिन का वह पासवर्ड है जिसे आपने apigee-sso इंस्टॉल करते समय सेट किया था. यह पासवर्ड, कॉन्फ़िगरेशन फ़ाइल में SSO_ADMIN_SECRET प्रॉपर्टी के हिसाब से सेट किया जाता है.
यह कमांड एक टोकन दिखाता है, जिसकी ज़रूरत आपको अगला कॉल करने के लिए होगी. - मशीन यूज़र बनाने के लिए, यहां दिए गए cURL कमांड का इस्तेमाल करें. इसमें, पिछले चरण में मिले टोकन को पास करें:
> curl "http://edge_sso_IP_DNS:9099/Users" -i -X POST /
-H "Accept: application/json" -H "Content-Type: application/json" /
-d '{"userName" : "machine_user_email", "name" : {"formatted":"DevOps", "familyName" : "last_name", "givenName" : "first_name"}, "emails" : [ {"value" : "machine_user_email", "primary" : true } ], "active" : true, "verified" : true, "password" : "machine_user_password" }' /
-H "Authorization: Bearer token"
आपको आगे के चरणों में, मशीन यूज़र के पासवर्ड की ज़रूरत पड़ेगी. - Edge यूज़र इंटरफ़ेस (यूआई) में लॉग इन करें और मशीन यूज़र का ईमेल पता अपने संगठनों में जोड़ें. साथ ही, मशीन यूज़र को ज़रूरी भूमिका असाइन करें. ज़्यादा जानकारी के लिए, ग्लोबल उपयोगकर्ताओं को जोड़ना लेख पढ़ें.