आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
इस पेज पर जाएं
Apigee X दस्तावेज़. जानकारी
Apigee Edge की मदद से, Edge एपीआई कॉल किए जा सकते हैं. साथ ही, OAuth2 टोकन की मदद से पुष्टि की जा सकती है. Cloud खातों के लिए Edge पर OAuth2 डिफ़ॉल्ट रूप से काम करता है. अगर Edge का इस्तेमाल किया जा रहा है के बिना OAuth2 का इस्तेमाल नहीं किया जा सकता. पहले SAML या LDAP सेट अप करें.
OAuth2 के काम करने का तरीका (Apigee Edge एपीआई के साथ)
Apigee Edge एपीआई को कॉल करने के लिए, पहचान की पुष्टि करना ज़रूरी होता है, ताकि हम पुष्टि कर सकें कि तुम कह रहे हो कि आप हैं. आपको प्रमाणित करने के लिए, हमें आपके अनुरोध के साथ एक OAuth2 ऐक्सेस टोकन भेजना होगा एपीआई को ऐक्सेस करने के लिए.
उदाहरण के लिए, अगर आपको Edge पर मौजूद किसी संगठन के बारे में जानकारी चाहिए, तो इस तरह का यूआरएल:
https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
हालांकि, अपनी पहचान के बारे में हमें बताए बिना, सिर्फ़ यह अनुरोध नहीं भेजा जा सकता. अगर ऐसा नहीं है, तो कोई भी आपके संगठन की जानकारी देख सकती है.
ऐसे मामलों में OAuth2 की ज़रूरत होती है: आपकी पहचान की पुष्टि करने के लिए, आपको हमें ऐक्सेस टोकन भेजना होगा भी शामिल हैं. ऐक्सेस टोकन हमें आपकी पहचान बताता है, ताकि हम यह पक्का कर सकें कि संगठन की जानकारी देखें.
अच्छी बात यह है कि Edge OAuth2 सेवा को अपने क्रेडेंशियल भेजकर भी टोकन हासिल किया जा सकता है. कॉन्टेंट बनाने सेवा, ऐक्सेस और रीफ़्रेश टोकन के साथ जवाब देती है.
OAuth2 फ़्लो: शुरुआती अनुरोध
Edge API को पहली बार ऐक्सेस करने पर, नीचे दी गई इमेज में OAuth2 फ़्लो दिखाया गया है समय:
जैसा कि पहली इमेज में दिखाया गया है, Edge API से पहली बार अनुरोध करने पर:
- आपने ऐक्सेस टोकन का अनुरोध किया हो. ऐसा करने के लिए
Edge API, acurl या
get_token
. जैसे:get_token Enter username:
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया हैahamilton@apigee.com
Enter the password for user 'ahamilton@apigee.com'[hidden input]
Enter the six-digit code if 'ahamilton@apigee.com' is MFA enabled or press ENTER:123456
- Edge OAuth2 सेवा, ऐक्सेस टोकन के साथ जवाब देती है और उसे
stdout
पर प्रिंट करती है; उदाहरण के लिए:Dy42bGciOiJSUzI1NiJ9.eyJqdGkiOiJhM2YwNjA5ZC1lZTIxLTQ1YjAtOGQyMi04MTQ0MTYxNjNhNTMiLCJz AJpdGUiLCJhcHByb3ZhbHMubWUiLCJvYXV0aC5hcHByb3ZhbHMiXSwiY2xpZW50X2lkIjoiZWRnZWNsaSIsIm NjbGkiLCJhenAiOiJlZGdlY2xpIiwiZ3JhbnRfdHlwZSI6InBhc3N3b3JkIiwidXNlcl9pZCI6IjJkMWU3NDI GzQyMC1kYzgxLTQzMDQtOTM4ZS1hOGNmNmVlODZhNzkiLCJzY29wZSI6WyJzY2ltLm1lIiwib3BlbmlkIiwic ENC05MzhlLWE4Y2Y2ZWU4NmE3OSIsIm9yaWdpbiI6InVzZXJncmlkIiwidXNlcl9uYW1lIjoiZGFuZ2VyNDI0 RI6ImUyNTM2NWQyIiwiaWF0IjoxNTI4OTE2NDA5LCJleHAiOjE1Mjg5MTgyMDksImlzcyI6Imh0dHBzOi8vbG 420iLCJlbWFpbCI6ImRhbmdlcjQyNDJAeWFob28uY29tIiwiYXV0aF90aW1lIjoxNTI4OTE2NDA5LCJhbCI6M 2lLmNvbSIsInppZCI6InVhYSIsImF1ZCI6WyJlZGdlY2xpIiwic2NpbSIsIm9wZW5pZCIsInBhc3N3b3JkIiw
acurl
औरget_token
सुविधाएं, अपने-आप ऐक्सेस सेव करती हैं और~/.sso-cli
के लिए रीफ़्रेश टोकन (रीफ़्रेश टोकन इनके लिए नहीं लिखा गया हैstdout
.) टोकन पाने के लिए Edge OAuth2 सेवा का इस्तेमाल करने पर, आपको उन्हें का इस्तेमाल कैसे करता है. - ऐक्सेस टोकन के साथ Edge API को अनुरोध भेजा जाता है.
acurl
अटैच किया गया उसे अपने-आप ट्रांसफ़र कर दिया जाएगा; उदाहरण के लिए:acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
अगर किसी दूसरे एचटीटीपी क्लाइंट का इस्तेमाल किया जा रहा है, तो ऐक्सेस टोकन जोड़ना न भूलें. उदाहरण के लिए:
curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \ -H "Authorization: Bearer ACCESS_TOKEN"
- Edge API आपके अनुरोध पर काम करता है और आम तौर पर, डेटा के साथ रिस्पॉन्स दिखाता है.
OAuth2 फ़्लो: बाद के अनुरोध
बाद के अनुरोधों पर, आपको टोकन के लिए अपने क्रेडेंशियल शेयर करने की ज़रूरत नहीं है. इसके बजाय, आपके पास पहले से मौजूद ऐक्सेस टोकन को तब तक शामिल करने का विकल्प होता है, जब तक उसकी समयसीमा खत्म न हुई हो:
जैसा कि दूसरी इमेज में दिखाया गया है, जब आपके पास पहले से ही ऐक्सेस टोकन होता है:
- ऐक्सेस टोकन के साथ Edge API को अनुरोध भेजा जाता है.
acurl
अटैच किया गया अपने-आप अपडेट हो जाएगा. अन्य टूल का इस्तेमाल करने पर, आपको मैन्युअल तरीके से टोकन जोड़ना होगा. - Edge API आपके अनुरोध पर काम करता है और आम तौर पर, डेटा के साथ रिस्पॉन्स दिखाता है.
OAuth2 फ़्लो: आपके ऐक्सेस टोकन की समयसीमा खत्म होने पर
जब ऐक्सेस टोकन की समयसीमा 12 घंटे के बाद खत्म हो जाती है, तो नया टोकन पाने के लिए रीफ़्रेश टोकन का इस्तेमाल करें ऐक्सेस टोकन:
जैसा कि तीसरी इमेज में दिखाया गया है, जब आपके ऐक्सेस टोकन की समयसीमा खत्म हो गई है:
- आपने Edge API को अनुरोध भेजा है, लेकिन आपके ऐक्सेस टोकन की समयसीमा खत्म हो गई है.
- Edge API आपके अनुरोध को 'बिना अनुमति के' के तौर पर अस्वीकार कर देता है.
- Edge OAuth2 सेवा पर रीफ़्रेश टोकन भेजा जाता है. अगर आप
acurl
का इस्तेमाल कर रहे हैं, तो यह हो गया है आपके लिए अपने-आप. - Edge OAuth2 सेवा नए ऐक्सेस टोकन के साथ जवाब देती है.
- आपने नए ऐक्सेस टोकन के साथ Edge API को अनुरोध भेजा है.
- Edge API आपके अनुरोध पर काम करता है और आम तौर पर, डेटा के साथ रिस्पॉन्स दिखाता है.
टोकन पाएं
Edge API पर भेजा जा सकने वाला ऐक्सेस टोकन पाने के लिए, इन तरीकों का इस्तेमाल करें
curl
जैसी उपयोगिता के अलावा, Apigee सुविधाएं:
- get_token उपयोगिता: यह आपके Apigee क्रेडेंशियल को ऐक्सेस करता है साथ ही, उन टोकन को रीफ़्रेश करें जिनका इस्तेमाल Edge API को कॉल करने के लिए किया जा सकता है.
- acurl उपयोगिता: स्टैंडर्ड के चारों ओर एक सुविधा रैपर देता है
curl
निर्देश. Edge पर एचटीटीपी अनुरोध बनाता है एपीआई,get_token
से टोकन ऐक्सेस और रीफ़्रेश करता है. साथ ही, Edge API का इस्तेमाल कर सकते हैं. - Edge OAuth2 सेवा में टोकन एंडपॉइंट: अपने Edge API को कॉल करके टोकन को रीफ़्रेश करने और ऐक्सेस करने के लिए, Apigee क्रेडेंशियल.
ये सुविधाएं, आपके Apigee खाते के क्रेडेंशियल (ईमेल पता और पासवर्ड) का इस्तेमाल करें:
- ऐक्सेस टोकन की समयसीमा 12 घंटे में खत्म हो जाती है.
- रीफ़्रेश टोकन की समयसीमा 30 दिन में खत्म हो जाती है.
इस वजह से, acurl
या get_token
के साथ एपीआई कॉल करने के बाद,
टोकन पेयर का इस्तेमाल 30 दिनों तक किया जा सकता है. समयसीमा खत्म होने के बाद, आपको इसे फिर से डालना होगा
क्रेडेंशियल और नए टोकन पाएं.
OAuth2 के साथ Edge API ऐक्सेस करें
Edge API को ऐक्सेस करने के लिए, आपको एपीआई एंडपॉइंट को अनुरोध भेजना होगा और ऐक्सेस टोकन शामिल करना होगा.
यह काम किसी भी एचटीटीपी क्लाइंट के साथ किया जा सकता है. इसमें कमांड-लाइन यूटिलिटी, जैसे कि curl
,
ब्राउज़र पर आधारित यूज़र इंटरफ़ेस (यूआई) जैसे कि Postman या acurl
जैसी Apigee यूटिलिटी.
acurl
और curl
की मदद से Edge API को ऐक्सेस करने के बारे में यहां बताया गया है
सेक्शन.
acurl का इस्तेमाल करें
acurl
के साथ Edge API को ऐक्सेस करने के लिए, आपके शुरुआती अनुरोध में
क्रेडेंशियल डालें. Edge OAuth2 सेवा, ऐक्सेस और रीफ़्रेश टोकन के साथ जवाब देती है. acurl
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
यह टोकन, डिवाइस पर सेव करता है.
बाद के अनुरोधों पर acurl
, ~/.sso-cli
में सेव किए गए टोकन का इस्तेमाल करता है, इसलिए
इसके लिए, आपको टोकन की समयसीमा खत्म होने तक अपने क्रेडेंशियल दोबारा शामिल करने की ज़रूरत नहीं है.
यहां दिए गए उदाहरण में, शुरुआती acurl
अनुरोध को दिखाया गया है. इसमें
"अहमिल्टन-एवल" संगठन:
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \ -u ahamilton@apigee.com Enter the password for user 'ahamilton@apigee.com'[hidden input]
Enter the six-digit code (no spaces) if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:1a2b3c
{ "createdAt" : 1491854501264, "createdBy" : "noreply_iops@apigee.com", "displayName" : "ahamilton", "environments" : [ "prod", "test" ], "lastModifiedAt" : 1491854501264, "lastModifiedBy" : "noreply_iops@apigee.com", "name" : "ahamilton", "properties" : { "property" : [ { "name" : "features.isSmbOrganization", "value" : "false" }, { "name" : "features.isCpsEnabled", "value" : "true" } ] }, "type" : "trial" }acurl https://api.enterprise.apigee.com/v1/o/ahamilton-eval/apis/helloworld/revisions/1/policies
[ "SOAP-Message-Validation-1", "Spike-Arrest-1", "XML-to-JSON-1" ]
संगठन के बारे में जानकारी पाने के अलावा, इस उदाहरण में दूसरा अनुरोध भी दिखाया गया है जिसे "helloworld" के तहत नीतियों की एक सूची मिलती है एपीआई प्रॉक्सी. दूसरा अनुरोध, "o" को छोटा करना "संगठनों" के लिए डालें.
ध्यान दें कि acurl
दूसरे अनुरोध पर ऐक्सेस टोकन को अपने-आप पास कर देता है. आपने लोगों तक पहुंचाया मुफ़्त में
acurl
को OAuth2 टोकन सेव करने के बाद, अपने उपयोगकर्ता क्रेडेंशियल भेजने की ज़रूरत नहीं है. यह
बाद के कॉल के लिए, ~/.sso-cli
से टोकन लेता है.
ज़्यादा जानकारी के लिए, Edge API को ऐक्सेस करने के लिए acurl का इस्तेमाल करना लेख पढ़ें.
कर्ल का इस्तेमाल करें
Edge API को ऐक्सेस करने के लिए, curl
का इस्तेमाल किया जा सकता है. ऐसा करने के लिए, आपको पहले
टोकन ऐक्सेस और रीफ़्रेश करने की सुविधा मिलती है. आप get_token
जैसी यूटिलिटी कंपनी या
Edge OAuth2 सेवा..
अपना ऐक्सेस टोकन सेव करने के बाद, आप उसे
Edge API को किए गए आपके कॉल का Authorization
हेडर, जैसा कि नीचे दिया गया है
दिखाता है:
curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \ -H "Authorization: Bearer ACCESS_TOKEN"
ऐक्सेस टोकन, जारी किए जाने के 12 घंटे बाद तक मान्य होता है. ऐक्सेस टोकन की समयसीमा खत्म होने के बाद, रीफ़्रेश टोकन को जारी करने के लिए 30 दिनों तक इस्तेमाल किया जा सकता है क्रेडेंशियल के बिना कोई दूसरा ऐक्सेस टोकन. Apigee का सुझाव है कि रेफ़रल टोकन की समयसीमा खत्म होने के बाद ही नए ऐक्सेस टोकन का अनुरोध करें, क्रेडेंशियल डालकर और हर एपीआई कॉल के साथ नया अनुरोध करें.
टोकन खत्म होने की तारीख
ऐक्सेस टोकन की समयसीमा खत्म होने के बाद, नया ऐक्सेस टोकन पाने के लिए रीफ़्रेश टोकन का इस्तेमाल करें आपको अपने क्रेडेंशियल फिर से सबमिट करने होंगे.
ऐक्सेस टोकन को रीफ़्रेश करने का तरीका, इस्तेमाल किए जा रहे टूल पर निर्भर करता है:
acurl
: किसी कार्रवाई की ज़रूरत नहीं है.acurl
, ऐक्सेस टोकन को अपने-आप रीफ़्रेश करता है जब कोई ऐसा अनुरोध भेजा जाता है जिसमें कोई पुराना कोड शामिल होता है.get_token
: ऐक्सेस टोकन को रीफ़्रेश करने के लिए,get_token
पर कॉल करें.- Edge OAuth2 सेवा: एक अनुरोध भेजें, जिसमें ये चीज़ें शामिल हों:
- टोकन रीफ़्रेश करें
grant_type
फ़ॉर्म पैरामीटर "refresh_token" पर सेट किया गया
मशीन उपयोगकर्ताओं के लिए OAuth2
अपने-आप ऐक्सेस होने की सुविधा को स्क्रिप्ट करने के लिए, acurl
और get_token
यूटिलिटी का इस्तेमाल किया जा सकता है
को मशीन उपयोगकर्ताओं के लिए OAuth2 प्रमाणीकरण के साथ Edge API से जोड़ा जा सकता है. नीचे दिए गए उदाहरण में,
इसके लिए get_token
का इस्तेमाल करें
ऐक्सेस टोकन का अनुरोध करें और फिर curl
कॉल में टोकन वैल्यू जोड़ें:
USER=me@example.com
PASS=not-that-secret
TOKEN=$(get_token -u $USER:$PASS -m '')
curl -H "Authorization: Bearer $TOKEN" 'https://api.enterprise.apigee.com/v1/organizations/...'
इसके अलावा, टोकन के लिए अनुरोध और curl
कॉल को जोड़ने के लिए, acurl
यूटिलिटी का इस्तेमाल किया जा सकता है.
उदाहरण के लिए:
USER=me@example.com
PASS=not-that-secret
acurl -u $USER:$PASS -m '' 'https://api.enterprise.apigee.com/v1/organizations/...'
दोनों उदाहरणों में, -m
की वैल्यू को खाली स्ट्रिंग पर सेट करने से, मशीन का इस्तेमाल करने वाले लोग ऐसा नहीं कर पाएंगे
को MFA कोड के लिए संकेत दिए जाने से रोका जा सकता है.