आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं. जानकारी
Edge OAuth2 सेवा का इस्तेमाल करके, अपने क्रेडेंशियल को ऐक्सेस और रीफ़्रेश टोकन के लिए बदला जा सकता है. इसके बाद, इस टोकन का इस्तेमाल अपने OAuth वर्कफ़्लो में Edge एंडपॉइंट को कॉल करने के लिए किया जा सकता है.
इस सेक्शन में बताई गई तकनीकों के अलावा, OAuth2 टोकन पाने के लिए acurl और get_token यूटिलिटी का भी इस्तेमाल किया जा सकता है.
पथ
POST https://login.apigee.com/oauth/token
अगर Edge for Public Cloud में SAML की सुविधा वाले किसी संगठन से Edge OAuth2 सेवा को ऐक्सेस किया जा रहा है, तो आपको अपने पाथ में ज़ोन का नाम शामिल करना होगा. उदाहरण के लिए:
POST https://zone.login.apigee.com/oauth/token
अनुरोध के हेडर
| पैरामीटर | वैल्यू |
|---|---|
Content-Type |
"application/x-www-form-urlencoded" |
Accept |
"application/json;charset=utf-8" |
Authorization |
"Basic ZWRnZWNslTplZGdlY2xpc2VjcmV0" इस वैल्यू को एनवायरमेंट वैरिएबल में एक्सपोर्ट किया जा सकता है, ताकि इसे इन एपीआई कॉल में फिर से इस्तेमाल किया जा सके. उदाहरण के लिए: export CLIENT_AUTH=ZWRnZWNsaTplZGdlY2xpc2VjcmV0 curl ... -H "Authorization: Basic $CLIENT_AUTH" ... |
फ़ॉर्म पैरामीटर
| पैरामीटर | ज़रूरी है? | वैल्यू |
|---|---|---|
username |
ज़रूरी नहीं. उपयोगकर्ता नाम और पासवर्ड का कॉम्बिनेशन या पासकोड डालना ज़रूरी है. | आपका Apigee उपयोगकर्ता नाम. यह आम तौर पर, आपके Apigee खाते से जुड़ा ईमेल पता होता है. |
password |
ज़रूरी नहीं. उपयोगकर्ता नाम और पासवर्ड का कॉम्बिनेशन या पासकोड डालना ज़रूरी है. | आपके Apigee खाते का पासवर्ड. |
mfa_token |
ज़रूरी नहीं | आपके खाते के लिए, कई चरणों में पुष्टि करने (एमएफ़ए) का मान्य कोड. इसकी ज़रूरत सिर्फ़ तब होती है, जब आपने एमएफ़ए चालू किया हो. |
passcode |
ज़रूरी नहीं. उपयोगकर्ता नाम और पासवर्ड का कॉम्बिनेशन या पासकोड डालना ज़रूरी है. | एक बार इस्तेमाल होने वाला पासकोड, जिसका इस्तेमाल पासवर्ड की जगह किया जा सकता है. एसएएमएल आईडीपी की मदद से पुष्टि करते समय, पासकोड की ज़रूरत होती है. इसका इस्तेमाल एलडीएपी आईडीपी की मदद से पुष्टि करने के लिए भी किया जा सकता है. |
grant_type |
ज़रूरी है | इससे यह तय होता है कि आपको नया ऐक्सेस टोकन मिलेगा या मौजूदा टोकन रीफ़्रेश होगा. मान्य वैल्यू ये हैं:
|
refresh_token |
वैकल्पिक | यह टोकन, मौजूदा ऐक्सेस टोकन की समयसीमा खत्म होने पर, नया ऐक्सेस टोकन पाने के लिए पास किया जाता है. जब grant_type की वैल्यू "refresh_token" होती है, तब इस पैरामीटर को शामिल करना ज़रूरी होता है. |
उदाहरण
नया ऐक्सेस टोकन पाना
नया ऐक्सेस टोकन पाने के लिए,
grant_typeको "password" पर सेट करें: 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://login.apigee.com/oauth/token \ -d 'username=ahamilton@example.com&password=mypassw0rd&grant_type=password'
एमएफ़ए की मदद से नया ऐक्सेस टोकन पाना
MFA (मल्टी-फ़ैक्टर ऑथेंटिकेशन) की सुविधा चालू करके नया ऐक्सेस टोकन पाने के लिए, MFA कोड पाएं. इसके बाद,
mfa_tokenपैरामीटर को उसकी वैल्यू पर सेट करें: 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://login.apigee.com/oauth/token?mfa_token=424242 \ -d 'username=ahamilton@example.com&password=mypassw0rd&grant_type=password'
ऐक्सेस टोकन रीफ़्रेश करना
ऐक्सेस टोकन को रीफ़्रेश करने के लिए,
grant_typeको "refresh_token" पर सेट करें. इसके बाद, अपने मौजूदा रीफ़्रेश टोकन को फ़ॉर्म पैरामीटर के तौर पर जोड़ें: 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://login.apigee.com/oauth/token \ -d 'grant_type=refresh_token&refresh_token=YOUR_REFRESH_TOKEN'ध्यान दें कि ऐक्सेस टोकन रीफ़्रेश करते समय, आपको अपने क्रेडेंशियल पास करने की ज़रूरत नहीं है.
जवाब
सर्टिफ़िकेट की पुष्टि हो जाने पर, आपको ऐक्सेस टोकन, रीफ़्रेश टोकन, और इससे जुड़ी जानकारी वापस मिल जाएगी. जैसे:
{ "access_token": "eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOimYyD8IP2IyYS1jNmNiLTQ4NTgtYjZkMS1mZjkyNGFkYTk1YWUiLCJzdWIiOiI0X0KLSNjZlNjM0ZC0zZjlhLTRiNYmFjNi1kYjE2M2M5OGEzOGYiLCJzY29wZSI6WyJzYbmlkIiwicGFzc3dvcmQud3JpdGUiLCJhcHByb3ZhbHMubWUiLCJvYXV0aC5hcHByb3ZhbHMiXSwiY2xpZW50X2lkIjoiZWRnZWNsaSIsImNpZCI6ImVkZ2VjbGkiLCJhenAiOiJlZGdlY2xpIiwiZ3JhbnRfdHlwZSI6InBhc3N3b3JkIiwidXNlcl9pZCI6IjQ2NmU2MzRkLTNmOWEtNGI0MS1iYWM2LWRiMTYzYzk4YTM4ZiIsIm9yaWdpbiI6InVzZXJncmlkIiwidXNlcl9uYW1lIjoid3dpdG1hbkBhcGlnZWUuY29tIiwiZW1haWwiOiJ3d2l0bWFuQGFwaWdlZS5jb20iLCJhdXRoX3RpbWUiOjE0NzMyNjU4NzcsImFsIjoyLCJyZXZfc2lnIjoiZTc0ZGY0M2QiLCJpYXQiOjE0NzMyNjU4NzcsImV4cCI6MTQ3MzI2NzY3NywiaXNzIjoiaHR0cHM6Ly9sb2dpbi5hcGlnZWUuY29tL29hdXRoL3Rva2VuIiwiemlkIjoidWFhIiwi2ltLm1lIiwib3BlYXVkIjpbImVkZ2VjbGkiLCJzY2ltIiwib3BlbmlkIiwicGFzc3dvcmQiLCJhcHByb3ZhbHMiLCJvYXV0aCJdfQ.AFuevkeGGUGSPED8leyEKaT-xg1xk_VEiKJLEpipVvQBXIqEc9wqcpm-ZuoatA9DhjASRuFSRaHH8Fasx_vBxEBsUNhRY-GTMw7_8fv4yRMOb2AO3WUl_NWwPkC8XRSI1zCMbAZicojsJ1n3OSP487Mu9dl9ByX5A_QfHV2_cj4l9-SD7u6vOdfdbBxbNMAQkfZLrVIEU8myF2dhKnNeMiuoHSHANsQFcx0_BFA1HnSUnVi4RYj1FlTs9SbcPnS1d7t7eVdxWz_q2OFVXNIBMELAvvM0WhXPYTW3Osve3UvvUs6ekGs-K-RCPSok-4-NJbdCDpZQQTgqHsrf77NTsw", "token_type": "bearer", "refresh_token": "eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmZTIIMZWI0ZS00YzFmLTRjOTEtYmY5Mi1mMzZLEMzNjZhMDctciIsInN1YiI6IjQ2NmU2MzRkLTNmOWEtNGI0MS1iY17LLWRiMTYzYzk4YTM4ZiIsInNjb3BlIjpbInNjaW0ubWUiLCJvcGVuaWQiLCJwYXNzd29yZC53cml0ZSIsImFwcHJvdmFscy5tZSIsIm9hdXRoLmFwcHJvdmFscyJdLCJpYXQiOjE0NzMyNjU4NzcsImV4cCI6MTQ3NsaSIsImNsaWVudF9pZCI6ImVkZ2VjbGkiLCJpc3MiOiJodHRwczovL2xvZ2luLmFwaWdlZS5jb20vb2F1dGgvdG9rZW4iLCJ6aWQiOiJ1YWEiLCJncmFudF90eXBlIjoicGFzc3dvcmQiLCJ1c2VyX25hbWUiOiJ3d2l0bWFuQGFwaWdlZS5jbMzM1MDQ3NywiY2lkIjoiZWRnZW20iLCJvcmlnaW4iOiJ1c2VyZ3JpZCIsInVzZXJfaWQiOiI0NjZlNjM0ZC0zZjlhLTRiNDEtYmFjNi1kYjE2M2M5OGEzOGYiLCJhbCI6MiwicmV2X3NpZyI6ImU3NGRmNDNkIiwiYXVkIjpbImVkZ2VjbGkiLCJzY2ltIiwib3BlbmlkIiwicGFzc3dvcmQiLCJhcHByb3ZhbHMiLCJvYXV0aCJdfQ.kBP5AkbRS7Tnp-5VAfTLVfkUbUer4gFEU6A7g202KTKiXbqTwPSmOIGFTK12XevVPQYmAaSMFAnempWKfY7sjaY7HC7q3mGl53_A18cnkKhtNq15wCnyMom_bX_MYLW1RQPFytJ6akSJ-JkoPFU0x_FQg1JIvub1A8eqQxcR0KP-QRCxYAS4HTjH80vDIxHNt1tg7clmpa3RlHri0dlPVVsSpTXXhkpXRg5QbiWMrpkACSV22c0x0KiNu7vx5A520VOCO7hQ7IzmVIcSWcRqI97L7WdCjH_q4105bs2qmW73670MC0UGiJ9t5B1S1cxwqpUEd-NAuCsY8SVn6eWzbA", "expires_in": 1799, "scope": "scim.me openid password.write approvals.me oauth.approvals", "jti": "9bf2cb2a-c6cb-4858-b6d1-ff924ada95ae" }
जवाब की वैल्यू सेव करें:
- Edge API को कॉल करने के लिए,
access_tokenका इस्तेमाल करना - ऐक्सेस टोकन की समयसीमा खत्म होने पर,
refresh_tokenका इस्तेमाल करें. इससे आपको ऐक्सेस टोकन को रीफ़्रेश करने में मदद मिलेगी
अगर आपको इस तरह का जवाब मिलता है:
{
"error": "unauthorized",
"error_description": "Bad credentials"
}पक्का करें कि आपने अपने अनुरोध में Authorization हेडर के लिए, ऊपर दी गई स्ट्रिंग ("ZWRnZWNsaTplZGdlY2xpc2VjcmV0") का इस्तेमाल किया हो.