आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
इस पेज पर जाएं
Apigee X दस्तावेज़. जानकारी
क्या
यह आपको ऐक्सेस टोकन से जुड़े कस्टम एट्रिब्यूट को जोड़ने या अपडेट करने की सुविधा देता है. कस्टम एट्रिब्यूट इसमें विभाग का नाम, ग्राहक आईडी या सेशन आइडेंटिफ़ायर जैसी चीज़ें शामिल हो सकती हैं. इन्हें भी देखें टोकन को कस्टमाइज़ करना और ऑथराइज़ेशन कोड.
आपके पास सिर्फ़ कस्टम एट्रिब्यूट जोड़ने या उनमें बदलाव करने का विकल्प होता है. इस नीति का इस्तेमाल, इस तरह के फ़ील्ड को बदलने के लिए नहीं किया जा सकता स्कोप, स्थिति, clear_in, developer_email, client_id, org_name, या रीफ़्रेश_count. अगर कोई विशेषता पहले से मौजूद है, तो यह नीति इसे अपडेट करती है. अगर यह मौजूद नहीं है, तो नीति इसे जोड़ देती है. कॉन्टेंट बनाने रेफ़र किया गया ऐक्सेस टोकन मान्य और मंज़ूरी पा चुकी स्थिति में होना चाहिए.
सैंपल
बुनियादी उदाहरण
यहां, OAuth 2.0 ऐक्सेस टोकन को अपडेट करने के लिए इस्तेमाल की जाने वाली नीति का उदाहरण दिया गया है. नीचे दिया गया उदाहरण
वह क्वेरी पैरामीटर को खोजकर, अनुरोध वाले मैसेज पर ऐक्सेस टोकन का पता लगाता है
access_token
. जब क्लाइंट ऐप्लिकेशन, ऐक्सेस टोकन दिखाता है, तो यह नीति
नीचे क्वेरी पैरामीटर में ऐक्सेस टोकन खोजा जाएगा. इसके बाद, ऐक्सेस अपडेट हो जाएगा
टोकन की प्रोफ़ाइल. यहdepartment.id
प्रोफ़ाइल.
<SetOAuthV2Info name="SetOAuthV2Info"> <AccessToken ref="request.queryparam.access_token"></AccessToken> <Attributes> <Attribute name="department.id" ref="request.queryparam.department_id"></Attribute> </Attributes> </SetOAuthV2Info>
एलिमेंट का रेफ़रंस
एलिमेंट का रेफ़रंस, SetOAuthV2 नीति के एलिमेंट और एट्रिब्यूट के बारे में बताता है.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SetOAuthV2Info async="false" continueOnError="false" enabled="true" name="SetOAuthV2Info-1"> <DisplayName>Set OAuth v2.0 Info 1</DisplayName> <AccessToken ref={some-variable}></AccessToken> <Attributes/> </SetOAuthV2Info> </xml>
<SetOAuthV2Info> एट्रिब्यूट
<SetOAuthV2Info async="false" continueOnError="false" enabled="true" name="Set-OAuth-v20-Info-1">
यहां दी गई टेबल में, ऐसे एट्रिब्यूट के बारे में बताया गया है जो नीति के सभी पैरंट एलिमेंट में एक जैसे होते हैं:
एट्रिब्यूट | ब्यौरा | डिफ़ॉल्ट | मौजूदगी |
---|---|---|---|
name |
नीति का अंदरूनी नाम. इसके अलावा, नीति को लेबल करने के लिए, |
लागू नहीं | ज़रूरी है |
continueOnError |
किसी नीति के काम न करने पर, गड़बड़ी दिखाने के लिए नीति के लागू होने के बाद भी फ़्लो को एक्ज़ीक्यूट करने के लिए, इसे |
गलत | वैकल्पिक |
enabled |
नीति को लागू करने के लिए, नीति को बंद करने के लिए, |
सही | वैकल्पिक |
async |
यह एट्रिब्यूट अब काम नहीं करता. |
गलत | बहिष्कृत |
<DisplayName> एलिमेंट
इस कॉलम में नीति को लेबल करने के लिए, name
एट्रिब्यूट के साथ-साथ इस्तेमाल करें
मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) प्रॉक्सी एडिटर, जिसका नाम अलग और सामान्य भाषा में है.
<DisplayName>Policy Display Name</DisplayName>
डिफ़ॉल्ट |
लागू नहीं अगर आप इस एलिमेंट को छोड़ देते हैं, तो नीति की |
---|---|
मौजूदगी | वैकल्पिक |
टाइप | स्ट्रिंग |
<AccessToken> एलिमेंट
उस वैरिएबल की पहचान करता है जहां ऐक्सेस टोकन मौजूद है. उदाहरण के लिए, अगर ऐक्सेस टोकन
के साथ एक क्वेरी पैरामीटर के रूप में संदेश का अनुरोध किया गया है, तो
request.queryparam.access_token
. किसी भी ऐसे मान्य वैरिएबल का इस्तेमाल किया जा सकता है जो
टोकन. इसके अलावा, लिटरल टोकन स्ट्रिंग (बहुत कम इस्तेमाल होने वाला केस) में पास किया जा सकता है.
<AccessToken ref="request.queryparam.access_token"></AccessToken>
डिफ़ॉल्ट: | लागू नहीं |
मौजूदगी: | ज़रूरी है |
टाइप: | स्ट्रिंग |
विशेषताएं
एट्रिब्यूट | ब्यौरा | डिफ़ॉल्ट | मौजूदगी |
---|---|---|---|
संदर्भ |
ऐक्सेस टोकन वैरिएबल. आम तौर पर, किसी फ़्लो वैरिएबल से लिया जाता है. |
लागू नहीं | वैकल्पिक |
<Attributes> एलिमेंट
ऐक्सेस टोकन प्रोफ़ाइल में मौजूद एट्रिब्यूट का एक सेट, जिसमें बदलाव किया जाएगा या उसे बेहतर बनाया जाएगा.
डिफ़ॉल्ट: | लागू नहीं |
मौजूदगी: | ज़रूरी है |
टाइप: | लागू नहीं |
<Attributes>/<Attribute> एलिमेंट
अपडेट करने के लिए, अलग से दिया जाने वाला एट्रिब्यूट.
नाम एट्रिब्यूट, ऐक्सेस टोकन प्रोफ़ाइल की कस्टम प्रॉपर्टी की पहचान करता है अपडेट किया गया. इस उदाहरण में बताया गया है कि रेफ़रंस वैरिएबल वैल्यू और स्टैटिक वैल्यू को कैसे इस्तेमाल किया जाता है.
<Attributes> <Attribute name="department.id" ref="request.queryparam.department_id"></Attribute> <Attribute name="foo">bar</Attribute> </Attributes>
डिफ़ॉल्ट: | लागू नहीं |
मौजूदगी: | वैकल्पिक |
टाइप: | लागू नहीं |
विशेषताएं
एट्रिब्यूट | ब्यौरा | डिफ़ॉल्ट | मौजूदगी |
---|---|---|---|
नाम | जोड़ने या बदलने के लिए प्रोफ़ाइल एट्रिब्यूट का नाम. | लागू नहीं | |
संदर्भ |
प्रोफ़ाइल एट्रिब्यूट को असाइन की जाने वाली वैल्यू. |
लागू नहीं | वैकल्पिक |
फ़्लो वैरिएबल
सफलता मिलने पर, ये फ़्लो वैरिएबल सेट किए जाएंगे:
oauthv2accesstoken.{policyName}.access_token
oauthv2accesstoken.{policyName}.client_id
oauthv2accesstoken.{policyName}.refresh_count
oauthv2accesstoken.{policyName}.organization_name
oauthv2accesstoken.{policyName}.expires_in //--in seconds
oauthv2accesstoken.{policyName}.refresh_token_expires_in //--in seconds
oauthv2accesstoken.{policyName}.issued_at
oauthv2accesstoken.{policyName}.status
oauthv2accesstoken.{policyName}.api_product_list
oauthv2accesstoken.{policyName}.token_type
oauthv2accesstoken.{policyName}.{custom_attribute_name}
स्कीमा
हर तरह की नीति को एक्सएमएल स्कीमा (.xsd
) से तय किया जाता है. रेफ़रंस के लिए, नीति के स्कीमा
GitHub पर उपलब्ध हैं.
गड़बड़ी का रेफ़रंस
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह |
---|---|---|
steps.oauth.v2.access_token_expired |
500 | नीति को भेजे गए ऐक्सेस टोकन की समयसीमा खत्म हो गई है. |
steps.oauth.v2.invalid_access_token |
500 | नीति को भेजा गया ऐक्सेस टोकन अमान्य है. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | कृपया देखें यह Apigee कम्यूनिटी पोस्ट पढ़ें. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
डिप्लॉयमेंट की गड़बड़ियों के बारे में जानकारी के लिए, यूज़र इंटरफ़ेस (यूआई) में रिपोर्ट किया गया मैसेज देखें.
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब यह नीति रनटाइम के दौरान कोई गड़बड़ी ट्रिगर करती है.
वैरिएबल | कहां | उदाहरण |
---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | oauthV2.SetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | oauthV2.SetTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | oauthV2.SetTokenInfo.cause = Invalid Access Token |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault": { "faultstring": "Invalid Access Token", "detail": { "errorcode": "keymanagement.service.invalid_access_token" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name=SetOAuthV2Info Faults"> <Step> <Name>AM-InvalidTokenResponse</Name> <Condition>(fault.name = "invalid_access_token")</Condition> </Step> <Condition>(oauthV2.failed = true) </Condition> </FaultRule>