मिटाएंOAuthV2Info नीति

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

यह क्या है

बताए गए OAuth V2 ऑथराइज़ेशन कोड या ऐक्सेस टोकन को मिटाता है.

सैंपल

ऐक्सेस टोकन मिटाएं

नीचे एक उदाहरण नीति दी गई है, जिसका इस्तेमाल OAuth 2.0 ऐक्सेस टोकन को मिटाने के लिए किया गया है. नीचे दिए गए उदाहरण में, access_token नाम के हेडर को खोजकर, ऐक्सेस टोकन का पता लगाया गया है. इसे अनुरोध के मैसेज पर मिटाया जा सकता है.

<DeleteOAuthV2Info name="DeleteAccessToken">
     <AccessToken ref="request.header.access_token"></AccessToken>
</DeleteOAuthV2Info>

पुष्टि करने वाला कोड मिटाएं

यहां OAuth 2.0 के ऑथराइज़ेशन कोड को मिटाने के लिए इस्तेमाल की गई नीति का एक उदाहरण दिया गया है. नीचे दिया गया उदाहरण, code नाम के क्वेरी पैरामीटर को खोजकर, अनुरोध वाले मैसेज पर मिटाए जाने वाले ऑथराइज़ेशन कोड का पता लगाता है.

<DeleteOAuthV2Info name="DeleteAuthCode">
     <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
</DeleteOAuthV2Info>

एलिमेंट का रेफ़रंस

एलिमेंट रेफ़रंस, DeleteOAuthV2Info नीति के एलिमेंट और एट्रिब्यूट के बारे में बताता है.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="DeleteOAuthV2Info-1">    
    <DisplayName>Delete OAuth v2.0 Info 1</DisplayName>
    <AccessToken ref={some-variable}></AccessToken>
    <!--<AuthorizationCode ref={some-variable}></AuthorizationCode>-->
    <Attributes/>
</DeleteOAuthV2Info

<DeleteOAuthV2Info> एट्रिब्यूट

<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v20-Info-1">
एट्रिब्यूट ब्यौरा डिफ़ॉल्ट मौजूदगी
एक साथ काम नहीं करने वाली प्रोसेस

यह बताने के लिए true पर सेट करें कि नीति को थ्रेड पूल में चलाया जाना चाहिए. यह अनुरोध/रिस्पॉन्स फ़्लो को प्रोसेस करने वाले पूल से अलग होना चाहिए. डिफ़ॉल्ट false है.

इस सेटिंग का इस्तेमाल सिर्फ़ अंदरूनी ऑप्टिमाइज़ेशन के लिए किया जाता है.

गलत ज़रूरी नहीं
जारी रखें पर गड़बड़ी

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

गलत ज़रूरी नहीं
चालू किया गया इससे यह तय होता है कि कोई नीति लागू की गई है या नहीं. अगर नीति को false पर सेट किया जाता है, तो नीति 'बंद' हो जाती है और लागू नहीं होती. भले ही, नीति किसी फ़्लो से जुड़ी हो. सही ज़रूरी नहीं
नाम

नीति का अंदरूनी नाम. फ़्लो में नीति को अटैच करने के लिए, इस नाम का रेफ़रंस 'चरण एलिमेंट' में दिया गया है.

ध्यान दें: नाम में इस्तेमाल किए जा सकने वाले वर्ण, इन चीज़ों पर लागू नहीं होते: A-Z0-9._\-$ %. मैनेजमेंट यूज़र इंटरफ़ेस (यूआई), अतिरिक्त पाबंदियां लागू करता है, जैसे कि उन वर्णों को अपने-आप हटाना जो अक्षर और अंक नहीं हैं.

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

<AccessToken> एलिमेंट

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

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

विशेषताएं

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

ऐक्सेस टोकन वैरिएबल. आम तौर पर, फ़्लो वैरिएबल से लिया जाता है. उदाहरण के लिए: request.header.token या request.queryparam.token.

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

<AuthorizeCode> एलिमेंट

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

 <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
डिफ़ॉल्ट: लागू नहीं
मौजूदगी: इसके लिए, <AccessToken> या <AuthorizationCode> ज़रूरी है.
टाइप: String

विशेषताएं

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

ऐक्सेस टोकन वैरिएबल. आम तौर पर, फ़्लो वैरिएबल से लिया जाता है. उदाहरण के लिए: request.header.code या request.queryparam.code.

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

<DisplayName> एलिमेंट

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

<DisplayName>DeleteOAuthV2Info 1</DisplayName>
डिफ़ॉल्ट: नीति के name एट्रिब्यूट की वैल्यू.
मौजूदगी: ज़रूरी नहीं
टाइप: String

गड़बड़ी का रेफ़रंस

यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.

रनटाइम से जुड़ी गड़बड़ियां

नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.

गड़बड़ी का कोड एचटीटीपी कोड स्थिति वजह
steps.oauth.v2.invalid_access_token 401 नीति को भेजा गया ऐक्सेस टोकन अमान्य है.
steps.oauth.v2.invalid_request-authorization_code_invalid 401 नीति को भेजा गया ऑथराइज़ेशन कोड अमान्य है.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 इस गड़बड़ी को ठीक करने के बारे में जानने के लिए, कृपया यह Apigee कम्यूनिटी पोस्ट देखें.

डिप्लॉयमेंट से जुड़ी गड़बड़ियां

डिप्लॉयमेंट की गड़बड़ियों के बारे में जानकारी के लिए, यूज़र इंटरफ़ेस (यूआई) में रिपोर्ट किया गया मैसेज देखें.

गड़बड़ी वाले वैरिएबल

ये वैरिएबल तब सेट किए जाते हैं, जब यह नीति रनटाइम के दौरान कोई गड़बड़ी ट्रिगर करती है.

वैरिएबल जगह उदाहरण
fault.name="fault_name" fault_name, गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम की गड़बड़ियां टेबल में दिया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name, उस नीति का उपयोगकर्ता तय किया गया नाम है जिसकी वजह से गड़बड़ी हुई है. oauthV2.DeleteTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name, उस नीति का उपयोगकर्ता तय किया गया नाम है जिसकी वजह से गड़बड़ी हुई है. oauthV2.DeleteTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name, उस नीति का उपयोगकर्ता तय किया गया नाम है जिसकी वजह से गड़बड़ी हुई है. oauthV2.DeleteTokenInfo.cause = Invalid Access Token

गड़बड़ी के जवाब का उदाहरण

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

गड़बड़ी के नियम का उदाहरण

<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>

स्कीमा

हर तरह की नीति को एक्सएमएल स्कीमा (.xsd) से तय किया जाता है. रेफ़रंस के लिए, नीति के स्कीमा GitHub पर उपलब्ध हैं.

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