setOAuthV2Info नीति

आपको 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

नीति का अंदरूनी नाम. name एट्रिब्यूट की वैल्यू ये काम कर सकती है: अक्षरों, संख्याओं, स्पेस, हाइफ़न, अंडरस्कोर, और फ़ुलस्टॉप को शामिल करें. यह मान नहीं हो सकता 255 वर्णों से ज़्यादा होने चाहिए.

इसके अलावा, नीति को लेबल करने के लिए, <DisplayName> एलिमेंट का इस्तेमाल करें प्रबंधन यूज़र इंटरफ़ेस (यूआई) प्रॉक्सी एडिटर को अलग, आम भाषा में इस्तेमाल करने वाले नाम के साथ किया जा सकता है.

लागू नहीं ज़रूरी है
continueOnError

किसी नीति के काम न करने पर, गड़बड़ी दिखाने के लिए false पर सेट करें. यह उम्मीद है व्यवहार की जानकारी देने वाला डेटा.

नीति के लागू होने के बाद भी फ़्लो को एक्ज़ीक्यूट करने के लिए, इसे true पर सेट करें विफल होता है.

गलत वैकल्पिक
enabled

नीति को लागू करने के लिए, true पर सेट करें.

नीति को बंद करने के लिए, false पर सेट करें. नीति लागू किया जाता है, भले ही वह किसी फ़्लो से जुड़ा रहता हो.

सही वैकल्पिक
async

यह एट्रिब्यूट अब काम नहीं करता.

गलत बहिष्कृत

&lt;DisplayName&gt; एलिमेंट

इस कॉलम में नीति को लेबल करने के लिए, name एट्रिब्यूट के साथ-साथ इस्तेमाल करें मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) प्रॉक्सी एडिटर, जिसका नाम अलग और सामान्य भाषा में है.

<DisplayName>Policy Display Name</DisplayName>
डिफ़ॉल्ट

लागू नहीं

अगर आप इस एलिमेंट को छोड़ देते हैं, तो नीति की name एट्रिब्यूट की वैल्यू यह होगी इस्तेमाल किया गया.

मौजूदगी वैकल्पिक
टाइप स्ट्रिंग

&lt;AccessToken&gt; एलिमेंट

उस वैरिएबल की पहचान करता है जहां ऐक्सेस टोकन मौजूद है. उदाहरण के लिए, अगर ऐक्सेस टोकन के साथ एक क्वेरी पैरामीटर के रूप में संदेश का अनुरोध किया गया है, तो request.queryparam.access_token. किसी भी ऐसे मान्य वैरिएबल का इस्तेमाल किया जा सकता है जो टोकन. इसके अलावा, लिटरल टोकन स्ट्रिंग (बहुत कम इस्तेमाल होने वाला केस) में पास किया जा सकता है.

 <AccessToken ref="request.queryparam.access_token"></AccessToken>
डिफ़ॉल्ट: लागू नहीं
मौजूदगी: ज़रूरी है
टाइप: स्ट्रिंग

विशेषताएं

एट्रिब्यूट ब्यौरा डिफ़ॉल्ट मौजूदगी
संदर्भ

ऐक्सेस टोकन वैरिएबल. आम तौर पर, किसी फ़्लो वैरिएबल से लिया जाता है.

लागू नहीं वैकल्पिक

&lt;Attributes&gt; एलिमेंट

ऐक्सेस टोकन प्रोफ़ाइल में मौजूद एट्रिब्यूट का एक सेट, जिसमें बदलाव किया जाएगा या उसे बेहतर बनाया जाएगा.

डिफ़ॉल्ट: लागू नहीं
मौजूदगी: ज़रूरी है
टाइप: लागू नहीं

&lt;Attributes&gt;/&lt;Attribute&gt; एलिमेंट

अपडेट करने के लिए, अलग से दिया जाने वाला एट्रिब्यूट.

नाम एट्रिब्यूट, ऐक्सेस टोकन प्रोफ़ाइल की कस्टम प्रॉपर्टी की पहचान करता है अपडेट किया गया. इस उदाहरण में बताया गया है कि रेफ़रंस वैरिएबल वैल्यू और स्टैटिक वैल्यू को कैसे इस्तेमाल किया जाता है.

  <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>

मिलते-जुलते विषय