यहां Apigee Edge का दस्तावेज़ देखा जा रहा है.
Go to the
Apigee X documentation. info
AccessControl नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
accesscontrol.IPDeniedAccess |
403 | क्लाइंट का आईपी पता या पास किया गया आईपी पता
एपीआई अनुरोध में, इसके अंदर <SourceAddress> एलिमेंट में बताए गए आईपी पते से मैच करता है
ऐक्सेस कंट्रोल नीति का <MatchRule> एलिमेंट औरaction
<MatchRule> एलिमेंट को DENY पर सेट किया गया है. |
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, नीति से जुड़ी गड़बड़ियों के लिए खास वैरिएबल देखें.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "IPDeniedAccess" |
acl.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | acl.AC-AllowAccess.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{
"fault":{
"faultstring":"Access Denied for client ip : 52.211.243.3"
"detail":{
"errorcode":"accesscontrol.IPDeniedAccess"
}
}
}गड़बड़ी के नियम का उदाहरण
<FaultRule name="IPDeniedAccess">
<Step>
<Name>AM-IPDeniedAccess</Name>
<Condition>(fault.name Matches "IPDeniedAccess") </Condition>
</Step>
<Condition>(acl.failed = true) </Condition>
</FaultRule>AccessEntity नीति
इसी विषय से जुड़ी जानकारी के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
कोई नहीं.
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
| गड़बड़ी का नाम | गड़बड़ी वाली स्ट्रिंग | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|---|
InvalidEntityType |
Invalid type [entity_type] in ACCESSENTITYStepDefinition
[policy_name] |
लागू नहीं | इस्तेमाल की गई इकाई का टाइप, इस्तेमाल किए जा सकने वाले टाइप में से एक होना चाहिए. |
AssignMessage नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | Fix |
|---|---|---|---|
steps.assignmessage.SetVariableFailed |
500 | The policy was not able to set a variable. See the fault string for the name of the unresolved variable. | |
steps.assignmessage.VariableOfNonMsgType |
500 |
This error occurs if the Message type variables represent entire HTTP requests and responses. The built-in Edge
flow variables |
build |
steps.assignmessage.UnresolvedVariable |
500 |
This error occurs if a variable specified in the Assign Message policy is either:
|
build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | Fix |
|---|---|---|
InvalidIndex |
If the index specified in the <Copy> and/or <Remove> elements of the Assign Message
policy is 0 or a negative number, then deployment of the API Proxy fails.
|
build |
InvalidVariableName |
If the child element <Name> is empty or not specified in the <AssignVariable> element,
then the deployment of the API proxy fails because there is no valid variable name to
which to assign a value. A valid variable name is required.
|
build |
InvalidPayload |
A payload specified in the policy is invalid. |
Fault variables
These variables are set when this policy triggers an error at runtime. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "UnresolvedVariable" |
assignmessage.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | assignmessage.AM-SetResponse.failed = true |
Example error response
{ "fault":{ "detail":{ "errorcode":"steps.assignmessage.VariableOfNonMsgType" }, "faultstring":"AssignMessage[AM-SetResponse]: value of variable is not of type Message" } }
Example fault rule
<FaultRule name="Assign Message Faults"> <Step> <Name>AM-CustomNonMessageTypeErrorResponse</Name> <Condition>(fault.name Matches "VariableOfNonMsgType") </Condition> </Step> <Step> <Name>AM-CustomSetVariableErrorResponse</Name> <Condition>(fault.name = "SetVariableFailed")</Condition> </Step> <Condition>(assignmessage.failed = true) </Condition> </FaultRule>
BasicAuthentication नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.basicauthentication.InvalidBasicAuthenticationSource |
500 | जब Base64 कोड में बदली गई स्ट्रिंग में कोई मान्य वैल्यू नहीं होती है, तो या हेडर गलत है (उदाहरण के लिए, "बेसिक" से शुरू नहीं होता). | build |
steps.basicauthentication.UnresolvedVariable |
500 | डिकोड या एन्कोड करने के लिए ज़रूरी सोर्स वैरिएबल मौजूद नहीं हैं. इस गड़बड़ी की वजह से
सिर्फ़ तब होता है, जब IgnoreUnresolvedVariables गलत हो. |
build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | कब होता है | ठीक करें |
|---|---|---|
UserNameRequired |
नाम वाली कार्रवाई के लिए, <User> एलिमेंट मौजूद होना चाहिए. |
build |
PasswordRequired |
नाम वाली कार्रवाई के लिए, <Password> एलिमेंट मौजूद होना चाहिए. |
build |
AssignToRequired |
नाम वाली कार्रवाई के लिए, <AssignTo> एलिमेंट मौजूद होना चाहिए. |
build |
SourceRequired |
नाम वाली कार्रवाई के लिए, <Source> एलिमेंट मौजूद होना चाहिए. |
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "UnresolvedVariable" |
BasicAuthentication.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | BasicAuthentication.BA-Authenticate.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault":{ "detail":{ "errorcode":"steps.basicauthentication.UnresolvedVariable" }, "faultstring":"Unresolved variable : request.queryparam.password" } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name="Basic Authentication Faults">
<Step>
<Name>AM-UnresolvedVariable</Name>
<Condition>(fault.name Matches "UnresolvedVariable") </Condition>
</Step>
<Step>
<Name>AM-AuthFailedResponse</Name>
<Condition>(fault.name = "InvalidBasicAuthenticationSource")</Condition>
</Step>
<Condition>(BasicAuthentication.BA-Authentication.failed = true) </Condition>
</FaultRule>ConcurrentRateLimit नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|
policies.concurrentratelimit.ConcurrentRatelimtViolation |
503 |
ConcurrentRatelimit का कनेक्शन पार हो गया है. कनेक्शन सीमा : {0} ध्यान दें: बाईं ओर दिखाया गया फ़ॉल्ट कोड सही है, हालांकि यह गलत स्पेलिंग ("लिट") मौजूद है. पक्का करें कि कोड, यहां दिखाए गए तरीके से ही इस्तेमाल किया जा रहा हो गड़बड़ी के नियम बनाते समय इनका इस्तेमाल करें. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
| गड़बड़ी का नाम | कब होता है |
|---|---|
InvalidCountValue |
ConcurrentRatelimit की अमान्य गणना मान दर्ज किया गया. |
ConcurrentRatelimitStepAttachment\ |
प्रॉक्सी पर समवर्ती दर सीमा नीति {0} अटैचमेंट की अनुमति नहीं है request/response/गलत पाथ में मौजूद है. इस नीति को टारगेट एंडपॉइंट पर डाला जाना चाहिए. |
ConcurrentRatelimitStepAttachment\ |
समवर्ती दर सीमा नीति {0} अटैचमेंट लक्ष्य अनुरोध/रिस्पॉन्स/गलती में मौजूद नहीं है पाथ. इस नीति को टारगेट रिक्वेस्ट प्रीफ़्लो, टारगेट रिस्पॉन्स पोस्टफ़्लो, और defaultFaultRule को चुनें. |
InvalidTTLForMessageTimeOut |
मैसेज टाइम आउट के लिए, ConcurrentRatelimit की अमान्य ttl वैल्यू दी गई है. इसे धनात्मक पूर्णांक. |
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति की वजह से कोई गड़बड़ी होती है. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "ConcurrentRatelimtViolation"
ध्यान दें: उदाहरण में दिखाया गया गड़बड़ी कोड सही है, हालांकि यह गलत स्पेलिंग ("limt") मौजूद है. कृपया यहां दिखाए गए कोड जैसे कोड का ही इस्तेमाल करें गड़बड़ी के नियम बनाते समय इनका इस्तेमाल करें. |
concurrentratelimit.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | concurrentratelimit.CRL-RateLimitPolicy.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
अगर अनुरोध की संख्या तय सीमा से ज़्यादा हो जाती है, तो यह नीति क्लाइंट को सिर्फ़ एचटीटीपी स्टेटस 503 दिखाती है.
गड़बड़ी के नियम का उदाहरण
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRules>
<FaultRule name="Quota Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "ConcurrentRatelimtViolation") </Condition>
</Step>
<Condition>concurrentratelimit.CRL-RateLimitPolicy.failed=true</Condition>
</FaultRule>
</FaultRules>DecodeJWS नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|
steps.jws.FailedToDecode |
401 | यह नीति, JWS को डिकोड नहीं कर सकी. शायद JWS में कोई गड़बड़ी है. |
steps.jws.FailedToResolveVariable |
401 | ऐसा तब होता है, जब नीति के <Source> एलिमेंट में बताया गया फ़्लो वैरिएबल
मौजूद न हो. |
steps.jws.InvalidClaim |
401 | ऐसा दावा जो मौजूद नहीं है या दावे से मेल नहीं खाता, या हेडर या हेडर मेल नहीं खाता. |
steps.jws.InvalidJsonFormat |
401 | JWS हेडर में अमान्य JSON मिला. |
steps.jws.InvalidJws |
401 | यह गड़बड़ी तब होती है, जब JWS हस्ताक्षर की पुष्टि नहीं हो पाती. |
steps.jws.InvalidPayload |
401 | JWS पेलोड अमान्य है. |
steps.jws.InvalidSignature |
401 | <DetachedContent> को हटाया गया है और JWS में अलग कॉन्टेंट पेलोड है. |
steps.jws.MissingPayload |
401 | JWS पेलोड मौजूद नहीं है. |
steps.jws.NoAlgorithmFoundInHeader |
401 | ऐसा तब होता है, जब JWS इस एल्गोरिदम हेडर को छोड़ देता है. |
steps.jws.UnknownException |
401 | एक अज्ञात अपवाद हुआ. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | कब होता है |
|---|---|
InvalidAlgorithm |
सिर्फ़ ये वैल्यू मान्य हैं: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512. |
|
|
डिप्लॉयमेंट की दूसरी संभावित गड़बड़ियां. |
Fault variables
These variables are set when a runtime error occurs. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "TokenExpired" |
JWS.failed |
All JWS policies set the same variable in the case of a failure. | jws.JWS-Policy.failed = true |
Example error response
For error handling, the best practice is to trap the errorcode part of the error
response. Do not rely on the text in the faultstring, because it could change.
Example fault rule
<FaultRules>
<FaultRule name="JWS Policy Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "TokenExpired")</Condition>
</Step>
<Condition>JWS.failed=true</Condition>
</FaultRule>
</FaultRules>DecodeJWT नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | वजह | समाधान |
|---|---|---|---|
steps.jwt.FailedToDecode |
401 | ऐसा तब होता है, जब नीति, JWT को डिकोड नहीं कर पाती. JWT गलत हो सकता है, अमान्य हो सकता है या इसे डिकोड नहीं किया जा सकता. | build |
steps.jwt.FailedToResolveVariable |
401 | ऐसा तब होता है, जब नीति के <Source> एलिमेंट में बताया गया फ़्लो वैरिएबल
मौजूद न हो. |
|
steps.jwt.InvalidToken |
401 | ऐसा तब होता है, जब नीति के <Source> एलिमेंट में दिया गया फ़्लो वैरिएबल
दायरे से बाहर हो या उसे हल नहीं किया जा सकता हो. |
build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
InvalidEmptyElement |
ऐसा तब होता है, जब डिकोड किए जाने वाले JWT वाले फ़्लो वैरिएबल को
नीति के <Source> एलिमेंट में न बताया गया हो.
|
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "TokenExpired" |
JWT.failed |
कोई गड़बड़ी होने पर, JWT की सभी नीतियां एक ही वैरिएबल सेट करती हैं. | JWT.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
गड़बड़ी ठीक करने के लिए, सबसे सही तरीका यह है कि गड़बड़ी के errorcode वाले हिस्से को छिपाया जाए
जवाब. faultstring में मौजूद टेक्स्ट पर पूरी तरह भरोसा न करें, क्योंकि इससे बदलाव हो सकता है.
गड़बड़ी के नियम का उदाहरण
<FaultRules>
<FaultRule name="JWT Policy Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "TokenExpired")</Condition>
</Step>
<Condition>JWT.failed=true</Condition>
</FaultRule>
</FaultRules>
ExtractVariables नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.extractvariables.ExecutionFailed |
500 |
यह गड़बड़ी तब होती है, जब:
|
build |
steps.extractvariables.ImmutableVariable |
500 | नीति में इस्तेमाल किए गए वैरिएबल में बदलाव नहीं किया जा सकता. नीति इसे सेट नहीं कर सकी वैरिएबल. | |
steps.extractvariables.InvalidJSONPath |
500 | यह गड़बड़ी तब होती है, जब किसी अमान्य JSON पाथ का इस्तेमाल JSONPath एलिमेंट में किया जाता है
की नीति देखें. उदाहरण के लिए, अगर JSON पेलोड में ऑब्जेक्ट Name नहीं है, तो
हालांकि, नीति में पाथ के तौर पर Name को तय करने पर यह गड़बड़ी दिखती है. |
build |
steps.extractvariables.JsonPathParsingFailure |
500 | यह गड़बड़ी तब होती है, जब नीति JSON पाथ को पार्स नहीं कर पाती और
Source एलिमेंट में दिए गए फ़्लो वैरिएबल से डेटा निकालें. आम तौर पर यह
ऐसा तब होता है, जब Source एलिमेंट में दिया गया फ़्लो वैरिएबल मौजूदा कॉलम में मौजूद न हो
फ़्लो. |
build |
steps.extractvariables.SetVariableFailed |
500 | यह गड़बड़ी तब होती है, जब नीति वैल्यू को वैरिएबल पर सेट नहीं कर पाती. आम तौर पर गड़बड़ी तब होती है, जब ऐसे कई वैरिएबल को वैल्यू असाइन करने की कोशिश की जाती है जिनके नाम से शुरू होते हैं जिसमें समान शब्द नेस्ट किए गए डॉट से अलग किए गए फ़ॉर्मैट में हों. | build |
steps.extractvariables.SourceMessageNotAvailable |
500 | यह गड़बड़ी तब होती है, जब मैसेज
नीति के Source एलिमेंट में दिया गया वैरिएबल
इनमें से कोई एक हो:
|
build |
steps.extractvariables.UnableToCast |
500 | यह गड़बड़ी तब होती है, जब नीति एक्सट्रैक्ट किए गए कॉन्टेंट को कास्ट नहीं कर पाती है मान को किसी वैरिएबल के लिए बदलें. आम तौर पर, ऐसा तब होता है, जब आप एक डेटा टाइप को दूसरे डेटा टाइप के वैरिएबल में बदल देना चाहिए. | build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
NothingToExtract |
अगर नीति में URIPath, QueryParam, में से कोई भी एलिमेंट नहीं है, तो
Header, FormParam, XMLPayload या JSONPayload,
एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता, क्योंकि एक्सट्रैक्ट करने के लिए कुछ नहीं है. |
build |
NONEmptyPrefixMappedToEmptyURI |
यह गड़बड़ी तब होती है, जब नीति में कोई प्रीफ़िक्स शामिल हो
XMLPayload एलिमेंट के नीचे Namespace एलिमेंट है, लेकिन कोई यूआरआई नहीं है
तय किया गया है. |
build |
DuplicatePrefix |
यह गड़बड़ी तब होती है, जब नीति में वही प्रीफ़िक्स इससे ज़्यादा हो
XMLPayload एलिमेंट के अंदर Namespace एलिमेंट में एक बार. |
build |
NoXPathsToEvaluate |
अगर नीति के अंदर XPath एलिमेंट नहीं है
XMLPayload एलिमेंट का इस्तेमाल करने पर, इस गड़बड़ी की वजह से एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.
|
build |
EmptyXPathExpression |
अगर नीति में XMLPayload में कोई खाली XPath एक्सप्रेशन है
एलीमेंट का उपयोग नहीं कर पाते हैं तो API प्रॉक्सी का परिनियोजन नहीं हो पाता है. |
build |
NoJSONPathsToEvaluate |
अगर नीति के अंदर JSONPath एलिमेंट नहीं है
JSONPayload एलिमेंट का इस्तेमाल करने पर, इस गड़बड़ी की वजह से एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
EmptyJSONPathExpression |
अगर नीति के अंदर कोई खाली XPath एक्सप्रेशन है, तो
XMLPayload एलिमेंट का इस्तेमाल करने पर, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
MissingName |
अगर नीति के किसी भी हिस्से में, name एट्रिब्यूट मौजूद नहीं है, तो
एलिमेंट, जैसे कि QueryParam, Header, FormParam या
Variable, जहां इसकी ज़रूरत होती है वहां एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
PatternWithoutVariable |
अगर नीति के Pattern एलिमेंट में कोई वैरिएबल तय नहीं किया गया है, तो
तब एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. Pattern एलिमेंट के लिए यह नाम होना ज़रूरी है
वह वैरिएबल जिसमें एक्सट्रैक्ट किया गया डेटा सेव किया जाएगा. |
build |
CannotBeConvertedToNodeset |
अगर इस नीति में ऐसा XPath एक्सप्रेशन है जिसमें Variable टाइप
nodeset के तौर पर तय किया जाता है,
लेकिन एक्सप्रेशन को नोडसेट में नहीं बदला जा सकता. इसके बाद, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
JSONPathCompilationFailed |
यह नीति, दिए गए JSON पाथ को कंपाइल नहीं कर सकी. | |
InstantiationFailed |
नीति इंस्टैंशिएट नहीं की जा सकी. | |
XPathCompilationFailed |
अगर XPath एलिमेंट में इस्तेमाल किया गया प्रीफ़िक्स या वैल्यू, इनमें से किसी का भी हिस्सा नहीं है
नीति में बताए गए नेमस्पेस, फिर एपीआई प्रॉक्सी के डिप्लॉयमेंट की
विफल होता है. |
build |
InvalidPattern |
अगर URIPath जैसे किसी भी एलिमेंट में Pattern एलिमेंट की डेफ़िनिशन अमान्य है, तो
QueryParam, Header, FormParam, और XMLPayload
या JSONPayload, फिर
एपीआई प्रॉक्सी काम नहीं कर रहा है.
|
build |
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब यह नीति रनटाइम के दौरान कोई गड़बड़ी ट्रिगर करती है. ज़्यादा जानकारी के लिए, देखें आपको क्या नीति से जुड़ी गड़बड़ियों के बारे में जानकारी होनी चाहिए.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name = "SourceMessageNotAvailable" |
extractvariables.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | extractvariables.EV-ParseJsonResponse.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault":{ "detail":{ "errorcode":"steps.extractvariables.SourceMessageNotAvailable" }, "faultstring":"request message is not available for ExtractVariable: EV-ParseJsonResponse" } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name="Extract Variable Faults"> <Step> <Name>AM-CustomErrorMessage</Name> <Condition>(fault.name = "SourceMessageNotAvailable") </Condition> </Step> <Condition>(extractvariables.EM-ParseJsonResponse.failed = true) </Condition> </FaultRule>
GenerateJWS नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियां ठीक करना देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|
steps.jws.GenerationFailed |
401 | यह नीति, JWS को जनरेट नहीं कर सकी. |
steps.jws.InsufficientKeyLength |
401 | HS256 एल्गोरिदम के लिए, 32 बाइट से कम की कुंजी के लिए |
steps.jws.InvalidClaim |
401 | ऐसा दावा जो मौजूद नहीं है या दावे से मेल नहीं खाता, या हेडर या हेडर मेल नहीं खाता. |
steps.jws.InvalidCurve |
401 | कुंजी से तय किया गया कर्व, एलिप्टिक कर्व एल्गोरिदम के लिए मान्य नहीं है. |
steps.jws.InvalidJsonFormat |
401 | JWS हेडर में अमान्य JSON मिला. |
steps.jws.InvalidPayload |
401 | JWS पेलोड अमान्य है. |
steps.jws.InvalidSignature |
401 | <DetachedContent> को हटाया गया है और JWS में अलग कॉन्टेंट पेलोड है. |
steps.jws.KeyIdMissing |
401 | पुष्टि करने की नीति के तहत, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल किया जाता है. हालांकि, साइन की गई JWS नीति के हेडर में
kid प्रॉपर्टी शामिल नहीं होती. |
steps.jws.KeyParsingFailed |
401 | सार्वजनिक कुंजी को दी गई कुंजी से पार्स नहीं किया जा सका. |
steps.jws.MissingPayload |
401 | JWS पेलोड मौजूद नहीं है. |
steps.jws.NoAlgorithmFoundInHeader |
401 | ऐसा तब होता है, जब JWS इस एल्गोरिदम हेडर को छोड़ देता है. |
steps.jws.SigningFailed |
401 | GeneJWS में, HS384 या HS512 एल्गोरिदम के कम से कम साइज़ से कम वाली कुंजी के लिए |
steps.jws.UnknownException |
401 | एक अज्ञात अपवाद हुआ. |
steps.jws.WrongKeyType |
401 | कुंजी का गलत प्रकार बताया गया. उदाहरण के लिए, अगर आपने एलिप्टिक कर्व एल्गोरिदम के लिए आरएसए कुंजी या आरएसए एल्गोरिदम के लिए कोई कर्व कुंजी तय की है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | कब होता है |
|---|---|
InvalidAlgorithm |
सिर्फ़ ये वैल्यू मान्य हैं: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512. |
|
|
डिप्लॉयमेंट की दूसरी संभावित गड़बड़ियां. |
Fault variables
These variables are set when a runtime error occurs. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "TokenExpired" |
JWS.failed |
All JWS policies set the same variable in the case of a failure. | jws.JWS-Policy.failed = true |
Example error response
For error handling, the best practice is to trap the errorcode part of the error
response. Do not rely on the text in the faultstring, because it could change.
Example fault rule
<FaultRules>
<FaultRule name="JWS Policy Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "TokenExpired")</Condition>
</Step>
<Condition>JWS.failed=true</Condition>
</FaultRule>
</FaultRules>GenerateJWT नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|
steps.jwt.AlgorithmInTokenNotPresentInConfiguration |
401 | ऐसा तब होता है, जब पुष्टि की नीति में एक से ज़्यादा एल्गोरिदम होते हैं. |
steps.jwt.AlgorithmMismatch |
401 | जनरेट करने की नीति में बताए गए एल्गोरिदम, पुष्टि करने की नीति में मौजूद एल्गोरिदम से मेल नहीं खाते. तय किए गए एल्गोरिदम मेल खाने चाहिए. |
steps.jwt.FailedToDecode |
401 | नीति, JWT को डिकोड नहीं कर सकी. JWT शायद खराब है. |
steps.jwt.GenerationFailed |
401 | नीति, JWT जनरेट नहीं कर सकी. |
steps.jwt.InsufficientKeyLength |
401 | HS256 एल्गोरिदम के लिए 32 बाइट से कम की कुंजी के लिए, HS386 एल्गोरिदम के लिए 48 बाइट से कम और HS512 एल्गोरिदम के लिए 64 बाइट से कम की कुंजी के लिए. |
steps.jwt.InvalidClaim |
401 | ऐसा दावा जो मौजूद नहीं है या दावे से मेल नहीं खाता, या हेडर या हेडर मेल नहीं खाता. |
steps.jwt.InvalidCurve |
401 | कुंजी से तय किया गया कर्व, एलिप्टिक कर्व एल्गोरिदम के लिए मान्य नहीं है. |
steps.jwt.InvalidJsonFormat |
401 | हेडर या पेलोड में अमान्य JSON मिला है. |
steps.jwt.InvalidToken |
401 | यह गड़बड़ी तब होती है, जब JWT हस्ताक्षर की पुष्टि नहीं हो पाती. |
steps.jwt.JwtAudienceMismatch |
401 | टोकन की पुष्टि नहीं करने पर ऑडियंस क्लेम नहीं किया जा सका. |
steps.jwt.JwtIssuerMismatch |
401 | टोकन की पुष्टि करने के दौरान, कार्ड जारी करने वाले बैंक या कंपनी का दावा नहीं किया जा सका. |
steps.jwt.JwtSubjectMismatch |
401 | टोकन की पुष्टि नहीं होने की वजह से, विषय पर दावा नहीं किया जा सका. |
steps.jwt.KeyIdMissing |
401 | पुष्टि करने की नीति, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल करती है, लेकिन हस्ताक्षर किए गए JWT में हेडर में kid प्रॉपर्टी शामिल नहीं होती. |
steps.jwt.KeyParsingFailed |
401 | सार्वजनिक कुंजी को दी गई कुंजी से पार्स नहीं किया जा सका. |
steps.jwt.NoAlgorithmFoundInHeader |
401 | ऐसा तब होता है, जब JWT में कोई एल्गोरिदम हेडर नहीं होता. |
steps.jwt.NoMatchingPublicKey |
401 | पुष्टि करने की नीति, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल करती है. हालांकि, साइन किए गए JWT में मौजूद kid, JWKS की सूची में शामिल नहीं है. |
steps.jwt.SigningFailed |
401 | GenJWT में, HS384 या HS512 एल्गोरिदम के लिए तय की गई सबसे कम साइज़ से कम कुंजी के लिए |
steps.jwt.TokenExpired |
401 | नीति ऐसे टोकन की पुष्टि करने की कोशिश करती है जिसकी समयसीमा खत्म हो चुकी है. |
steps.jwt.TokenNotYetValid |
401 | टोकन अभी तक मान्य नहीं है. |
steps.jwt.UnhandledCriticalHeader |
401 | crit हेडर में, ‘JWT की पुष्टि करें’ नीति से मिले हेडर की जानकारी
KnownHeaders में नहीं दी गई है. |
steps.jwt.UnknownException |
401 | एक अज्ञात अपवाद हुआ. |
steps.jwt.WrongKeyType |
401 | कुंजी का गलत प्रकार बताया गया. उदाहरण के लिए, अगर आपने एलिप्टिक कर्व एल्गोरिदम के लिए आरएसए कुंजी या आरएसए एल्गोरिदम के लिए कोई कर्व कुंजी तय की है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
InvalidNameForAdditionalClaim |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में इस्तेमाल किया गया दावा, इनमें से कोई एक रजिस्टर किया गया नाम है, तो डिप्लॉयमेंट नहीं हो पाएगा:
kid, iss, sub, aud, iat,
exp, nbf या jti.
|
build |
InvalidTypeForAdditionalClaim |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim>
में इस्तेमाल किया गया दावा string, number, boolean या map टाइप का नहीं है, तो डिप्लॉयमेंट नहीं हो पाएगा.
|
build |
MissingNameForAdditionalClaim |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में दावे का नाम नहीं बताया गया है, तो डिप्लॉयमेंट की प्रोसेस पूरी नहीं हो पाएगी.
|
build |
InvalidNameForAdditionalHeader |
यह गड़बड़ी तब होती है, जब <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में इस्तेमाल किए गए दावे का नाम alg या typ होता है.
|
build |
InvalidTypeForAdditionalHeader |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में इस्तेमाल किए गए दावे का टाइप string, number, boolean या map नहीं है, तो डिप्लॉयमेंट की प्रोसेस रद्द नहीं होगी.
|
build |
InvalidValueOfArrayAttribute |
यह गड़बड़ी तब होती है, जब <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में ऐरे एट्रिब्यूट की वैल्यू, true या false पर सेट न की गई हो.
|
build |
InvalidConfigurationForActionAndAlgorithm |
अगर <PrivateKey> एलिमेंट का इस्तेमाल एचएस फ़ैमिली एल्गोरिदम के साथ किया गया है या
<SecretKey> एलिमेंट का इस्तेमाल आरएसए फ़ैमिली एल्गोरिदम के साथ किया गया है, तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
InvalidValueForElement |
अगर <Algorithm> एलिमेंट में दी गई वैल्यू, इस्तेमाल की जा सकने वाली वैल्यू नहीं है,
तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
MissingConfigurationElement |
यह गड़बड़ी तब होती है, जब <PrivateKey> एलिमेंट का इस्तेमाल आरएसए फ़ैमिली एल्गोरिदम के साथ न किया गया हो या <SecretKey> एलिमेंट का इस्तेमाल एचएस फ़ैमिली एल्गोरिदम के साथ न किया गया हो.
|
build |
InvalidKeyConfiguration |
अगर <PrivateKey>
या <SecretKey> एलिमेंट में चाइल्ड एलिमेंट <Value> के बारे में नहीं बताया गया है, तो डिप्लॉयमेंट नहीं हो पाएगा.
|
build |
EmptyElementForKeyConfiguration |
अगर <PrivateKey> या <SecretKey> एलिमेंट के चाइल्ड एलिमेंट <Value> का रेफ़रंस एट्रिब्यूट खाली है या इसके बारे में नहीं बताया गया है, तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
InvalidVariableNameForSecret |
यह गड़बड़ी तब होती है, जब <PrivateKey> या <SecretKey> एलिमेंट के चाइल्ड एलिमेंट <Value> के ref एट्रिब्यूट में दिए गए फ़्लो वैरिएबल के नाम में निजी प्रीफ़िक्स (private.) शामिल न हो.
|
build |
InvalidSecretInConfig |
यह गड़बड़ी तब होती है, जब <PrivateKey>
या <SecretKey> एलिमेंट के चाइल्ड एलिमेंट <Value> में निजी प्रीफ़िक्स (private.) शामिल न हो.
|
build |
InvalidTimeFormat |
अगर <NotBefore> एलिमेंट में दी गई वैल्यू, काम करने वाले फ़ॉर्मैट का इस्तेमाल नहीं करती है, तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "TokenExpired" |
JWT.failed |
कोई गड़बड़ी होने पर, JWT की सभी नीतियां एक ही वैरिएबल सेट करती हैं. | JWT.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
गड़बड़ी ठीक करने के लिए, सबसे सही तरीका यह है कि गड़बड़ी के errorcode वाले हिस्से को छिपाया जाए
जवाब. faultstring में मौजूद टेक्स्ट पर पूरी तरह भरोसा न करें, क्योंकि इससे बदलाव हो सकता है.
गड़बड़ी के नियम का उदाहरण
<FaultRules>
<FaultRule name="JWT Policy Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "TokenExpired")</Condition>
</Step>
<Condition>JWT.failed=true</Condition>
</FaultRule>
</FaultRules>
JavaCallout नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | Fix |
|---|---|---|---|
steps.javacallout.ExecutionError |
500 | Occurs when Java code throws an exception or returns null during the execution of a JavaCallout policy. | build |
Deployment errors
These errors can occur when the proxy containing the policy is deployed.
| Error name | Fault string | HTTP status | Occurs when |
|---|---|---|---|
ResourceDoesNotExist |
Resource with name
[name] and type [type] does not exist |
N/A | The file specified in the <ResourceURL> element does not exist. |
JavaCalloutInstantiationFailed |
Failed to instantiate the JavaCallout Class [classname] |
N/A | The class file specified in the <ClassName> element is not in the
jar. |
IncompatibleJavaVersion |
Failed to load java class [classname] definition due to - [reason] |
N/A | See fault string. See also Supported software and supported versions. |
JavaClassNotFoundInJavaResource |
Failed to find the ClassName in java resource [jar_name] -
[class_name] |
N/A | See fault string. |
JavaClassDefinitionNotFound |
Failed to load java class [class_name] definition due to - [reason] |
N/A | See fault string. |
NoAppropriateConstructor |
No appropriate constructor found in JavaCallout class [class_name] |
N/A | See fault string. |
NoResourceForURL |
Could not locate a resource with URL [string] |
N/A | See fault string. |
Fault variables
These variables are set when this policy triggers an error. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "ExecutionError" |
javacallout.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | javacallout.JC-GetUserData.failed = true |
Example error response
{ "fault":{ "faultstring":"Failed to execute JavaCallout. [policy_name]", "detail":{ "errorcode":"javacallout.ExecutionError" } } }
Example fault rule
<FaultRule name="JavaCalloutFailed"> <Step> <Name>AM-JavaCalloutError</Name> </Step> <Condition>(fault.name Matches "ExecutionError") </Condition> </FaultRule>
JavaScript नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के साथ-साथ गड़बड़ी के वैरिएबल के बारे में बताया गया है ये सेटिंग, Edge की मदद से सेट की जाती हैं. ऐसा तब होता है, जब इस नीति की वजह से कोई गड़बड़ी होती है. यह जानकारी जानना ज़रूरी है अगर आप गड़बड़ी के नियम बना रहे हैं, गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.javascript.ScriptExecutionFailed |
500 | JavaScript नीति की वजह से, कई तरह की स्क्रिप् ट एक्ज़ीक्यूशनविल् ड गड़बड़ियां हो सकती हैं. आम तौर पर आम तौर पर होने वाली गड़बड़ियों में RangeError शामिल है. ReferenceError, SyntaxError, TypeError, और URIError. | build |
steps.javascript.ScriptExecutionFailedLineNumber |
500 | JavaScript कोड में कोई गड़बड़ी हुई. ज़्यादा जानकारी के लिए गड़बड़ी वाली स्ट्रिंग देखें. | लागू नहीं |
steps.javascript.ScriptSecurityError |
500 | JavaScript लागू होने के दौरान सुरक्षा से जुड़ी कोई गड़बड़ी हुई. इसके लिए गड़बड़ी वाली स्ट्रिंग देखें विवरण. | लागू नहीं |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
InvalidResourceUrlFormat |
अगर JavaScript नीति के <ResourceURL> या <IncludeURL> एलिमेंट में बताए गए रिसॉर्स यूआरएल का फ़ॉर्मैट अमान्य है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
InvalidResourceUrlReference |
अगर <ResourceURL> या <IncludeURL> एलिमेंट
कोई ऐसी JavaScript फ़ाइल देखें जो मौजूद नहीं है, तो एपीआई प्रॉक्सी का डिप्लॉयमेंट नहीं हो पाता है.
रेफ़र की गई सोर्स फ़ाइल, एपीआई प्रॉक्सी, एनवायरमेंट या संगठन के लेवल पर मौजूद होनी चाहिए. |
build |
WrongResourceType |
डिप्लॉयमेंट के दौरान यह गड़बड़ी तब होती है, जब <ResourceURL> या <IncludeURL>
JavaScript नीति के एलिमेंट, jsc (JavaScript फ़ाइल) के अलावा किसी भी अन्य संसाधन टाइप के बारे में बताते हैं. |
build |
NoResourceURLOrSource |
इस गड़बड़ी की वजह से, हो सकता है कि JavaScript नीति को लागू नहीं किया जा सके, अगर <ResourceURL>
एलिमेंट का एलान नहीं किया गया हो या उसमें रिसॉर्स का यूआरएल तय नहीं किया गया हो.
<ResourceURL> एलिमेंट ज़रूरी है. इसके अलावा, <IncludeURL> एलिमेंट का एलान किया गया है
लेकिन इस एलिमेंट में, रिसॉर्स के यूआरएल के बारे में नहीं बताया गया है. <IncludeURL> एलिमेंट ज़रूरी नहीं है
अगर एलान किया गया हो, तो रिसॉर्स के यूआरएल को <IncludeURL> एलिमेंट में ही बताया जाना चाहिए. |
build |
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब यह नीति रनटाइम के दौरान कोई गड़बड़ी ट्रिगर करती है. ज़्यादा जानकारी के लिए, देखें आपको क्या नीति से जुड़ी गड़बड़ियों के बारे में जानकारी होनी चाहिए.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "ScriptExecutionFailed" |
javascript.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | javascript.JavaScript-1.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault": { "faultstring": "Execution of SetResponse failed with error: Javascript runtime error: "ReferenceError: "status" is not defined. (setresponse.js:6)\"", "detail": { "errorcode": "steps.javascript.ScriptExecutionFailed" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name="JavaScript Policy Faults"> <Step> <Name>AM-CustomErrorResponse</Name> <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition> </Step> <Condition>(javascript.JavaScript-1.failed = true) </Condition> </FaultRule>
JSONThreatProtection नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.jsonthreatprotection.ExecutionFailed |
500 | JSONHTMLProtection की नीति के तहत, कई अलग-अलग तरह की CancelutionFailed गड़बड़ियां हो सकती हैं. इस तरह की ज़्यादातर गड़बड़ियां तब होती हैं, जब नीति में सेट किया गया कोई थ्रेशोल्ड पार हो जाता है. ये इस तरह की गड़बड़ियां हो सकती हैं: ऑब्जेक्ट एंट्री के नाम की लंबाई, ऑब्जेक्ट की एंट्री की संख्या, अरे एलिमेंट की संख्या, कंटेनर की गहराई, स्ट्रिंग स्ट्रिंग की वैल्यू की लंबाई. यह गड़बड़ी तब भी होती है, जब पेलोड में अमान्य JSON ऑब्जेक्ट शामिल हो. | build |
steps.jsonthreatprotection.SourceUnavailable |
500 |
यह गड़बड़ी तब होती है, जब मैसेज
<Source> एलिमेंट में दिया गया वैरिएबल या तो:
|
build |
steps.jsonthreatprotection.NonMessageVariable |
500 |
यह गड़बड़ी तब होती है, जब <Source> एलिमेंट किसी ऐसे वैरिएबल पर सेट होता है जो
का प्रकार नहीं है
मैसेज.
|
build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
कोई नहीं.
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति की वजह से कोई गड़बड़ी होती है. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "SourceUnavailable" |
jsonattack.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | jsonattack.JTP-SecureRequest.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{
"fault": {
"faultstring": "JSONThreatProtection[JPT-SecureRequest]: Execution failed. reason: JSONThreatProtection[JTP-SecureRequest]: Exceeded object entry name length at line 2",
"detail": {
"errorcode": "steps.jsonthreatprotection.ExecutionFailed"
}
}
}गड़बड़ी के नियम का उदाहरण
<FaultRule name="JSONThreatProtection Policy Faults">
<Step>
<Name>AM-CustomErrorResponse</Name>
<Condition>(fault.name Matches "ExecutionFailed") </Condition>
</Step>
<Condition>(jsonattack.JPT-SecureRequest.failed = true) </Condition>
</FaultRule>
JSONThreatProtection नीति के टाइप, ये गड़बड़ी कोड तय करते हैं:
JSONtoXML नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.jsontoxml.ExecutionFailed |
500 | इनपुट पेलोड (JSON) खाली है या एक्सएमएल नीति को JSON को भेजा गया इनपुट (JSON) है अमान्य या गलत है. | build |
steps.jsontoxml.InCompatibleTypes |
500 | यह गड़बड़ी तब होती है, जब <Source> एलिमेंट में तय किया गया वैरिएबल टाइप और
<OutputVariable> एलिमेंट एक जैसे नहीं हैं. यह ज़रूरी है कि
<Source> एलिमेंट और <OutputVariable> एलिमेंट में शामिल वैरिएबल
मैच करता है. मान्य टाइप message और string हैं. |
build |
steps.jsontoxml.InvalidSourceType |
500 | यह गड़बड़ी तब होती है, जब <Source> एलिमेंट को तय करने के लिए इस्तेमाल किए गए वैरिएबल का टाइप
अमान्य है. message और string मान्य वैरिएबल टाइप होते हैं. |
build |
steps.jsontoxml.OutputVariableIsNotAvailable |
500 | यह गड़बड़ी तब होती है, जब JSON के <Source> एलिमेंट में, किसी वैरिएबल को
एक्सएमएल नीति का टाइप स्ट्रिंग है और <OutputVariable> एलिमेंट के बारे में नहीं बताया गया है.
<Source> में वैरिएबल तय करने पर, <OutputVariable> एलिमेंट ज़रूरी है
एलिमेंट, स्ट्रिंग टाइप का है. |
build |
steps.jsontoxml.SourceUnavailable |
500 |
यह गड़बड़ी तब होती है, जब मैसेज
JSON से एक्सएमएल नीति के <Source> एलिमेंट में तय किया गया वैरिएबल या तो:
|
build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
कोई नहीं.
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "SourceUnavailable" |
jsontoxml.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | jsontoxml.JSON-to-XML-1.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{
"fault": {
"faultstring": "JSONToXML[JSON-to-XML-1]: Source xyz is not available",
"detail": {
"errorcode": "steps.json2xml.SourceUnavailable"
}
}
}गड़बड़ी के नियम का उदाहरण
<FaultRule name="JSON To XML Faults">
<Step>
<Name>AM-SourceUnavailableMessage</Name>
<Condition>(fault.name Matches "SourceUnavailable") </Condition>
</Step>
<Step>
<Name>AM-BadJSON</Name>
<Condition>(fault.name = "ExecutionFailed")</Condition>
</Step>
<Condition>(jsontoxml.JSON-to-XML-1.failed = true) </Condition>
</FaultRule>KeyValueMapOperations नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | Fix |
|---|---|---|---|
steps.keyvaluemapoperations.SetVariableFailed |
500 |
This error occurs if you try to retrieve a value from an encrypted key value map and set
the value to a variable whose name does not have the prefix |
build |
steps.keyvaluemapoperations.UnsupportedOperationException |
500 |
This error occurs if the |
build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | Fix |
|---|---|---|
InvalidIndex |
If the index attribute specified in the <Get> element of Key Value Map Operations policy is
zero or a negative number, then the deployment of the API proxy fails. The index starts from
1, so an index of zero or negative integer is considered as invalid.
|
build |
KeyIsMissing |
This error occurs if the <Key> element is completely missing or <Parameter> element is
missing within <Key> element underneath the <Entry> of the <InitialEntries> element
of the Key Value Map Operations policy.
|
build |
ValueIsMissing |
This error occurs if the <Value> element is missing underneath the <Entry> element of
the <InitialEntries> element of the Key Value Map Operations policy. |
build |
LDAP नीति
इस नीति में इन गड़बड़ी कोड का इस्तेमाल किया जाता है:
| गड़बड़ी कोड | मैसेज |
|---|---|
InvalidAttributeName |
Invalid attribute name {0}. |
InvalidSearchBase |
Search base can not be empty. |
InvalidValueForPassword |
Invalid value for password field. It can not be empty. |
InvalidSearchScope |
Invalid scope {0}. Allowed scopes are {1}. |
InvalidUserCredentials |
Invalid user credentials. |
InvalidExternalLdapReference |
Invalid external ldap reference {0}. |
LdapResourceNotFound |
Ldap resource {0} not found. |
BaseDNRequired |
Base DN required. |
OnlyReferenceOrValueIsAllowed |
Only value or reference is allowed for {0}. |
AttributesRequired |
At least one attribute required for search action. |
UserNameIsNull |
User name is null. |
SearchQueryAndUserNameCannotBePresent |
Both search query and username can not be present in the authentication action.
Please specify either one of them. |
MessageLogging नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह |
|---|---|---|
steps.messagelogging.StepDefinitionExecutionFailed |
500 | गड़बड़ी वाली स्ट्रिंग देखें. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
InvalidProtocol |
इस गड़बड़ी की वजह से, MessageLogging नीति को लागू नहीं किया जा सकता, अगर प्रोटोकॉल
<Protocol> एलिमेंट में बताया गया, मान्य नहीं है. मान्य प्रोटोकॉल, टीसीपी और यूडीपी हैं.
TLS/एसएसएल पर syslog मैसेज भेजने के लिए, सिर्फ़ टीसीपी का इस्तेमाल किया जा सकता है. |
build |
InvalidPort |
इस गड़बड़ी की वजह से हो सकता है कि MessageLogging नीति को लागू न करें: पोर्ट नंबर
को <Port> एलिमेंट में नहीं बताया गया है या वह मान्य नहीं है. पोर्ट नंबर
शून्य से बड़ा पूर्णांक. |
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "StepDefinitionExecutionFailed" |
messagelogging.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | messagelogging.ML-LogMessages.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{
"fault":{
"detail":{
"errorcode":"steps.messagelogging.StepDefinitionExecutionFailed"
},
"faultstring":"Execution failed"
}
}गड़बड़ी के नियम का उदाहरण
<FaultRule name="MessageLogging">
<Step>
<Name>ML-LogMessages</Name>
<Condition>(fault.name Matches "StepDefinitionExecutionFailed") </Condition>
</Step>
<Condition>(messagelogging.ML-LogMessages.failed = true) </Condition>
</FaultRule>OASValidation नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | |
|---|---|---|---|
steps.oasvalidation.Failed |
500 | Request message body cannot be validated against the provided OpenAPI Specification. | |
steps.oasvalidation.SourceMessageNotAvailable |
500 |
Variable specified in the |
|
steps.oasvalidation.NotMessageVariable |
500 |
|
build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | |
|---|---|---|
ResourceDoesNotExist |
OpenAPI Specification referenced in the <OASResource> element does not exist.
|
|
ResourceCompileFailed |
OpenAPI Specification that is included in the deployment contains errors that prevent it from being compiled. This generally indicates that the specification is not a well-formed OpenAPI Specification 3.0. | |
BadResourceURL |
OpenAPI Specification referenced in the <OASResource> element cannot be processed. This can occur if the file is not a JSON or YAML file or the
file URL is not specified correctly.
|
Fault variables
These variables are set when this policy triggers an error at runtime. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "ResourceDoesNotExist" |
oasvalidation.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | oasvalidation.myoaspolicy.failed = true |
PopulateCache नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी स्थिति | कब होता है |
|---|---|---|
policies.populatecache.EntryCannotBeCached |
500 | एंट्री को कैश मेमोरी में सेव नहीं किया जा सकता. कैश मेमोरी में सेव किया जा रहा मैसेज ऑब्जेक्ट, ऐसी क्लास है जिसे क्रम में लगाया जा सकता है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
InvalidCacheResourceReference |
यह गड़बड़ी तब होती है, जब पॉप-अप कैश नीति में <CacheResource> एलिमेंट को इस पर सेट किया गया हो
यह नाम उस एनवायरमेंट में मौजूद नहीं है जहां एपीआई प्रॉक्सी डिप्लॉय किया जा रहा है. |
build |
CacheNotFound |
<CacheResource> एलिमेंट में दी गई कैश मेमोरी,
मौजूद हैं. |
build |
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति की वजह से कोई गड़बड़ी होती है. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name = "EntryCannotBeCached" |
populatecache.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | populatecache.POP-CACHE-1.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault": { "faultstring": "[entry] can not be cached. Only serializable entries are cached.", "detail": { "errorcode": "steps.populatecache.EntryCannotBeCached" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name="Populate Cache Fault">
<Step>
<Name>AM-EntryCannotBeCached</Name>
<Condition>(fault.name Matches "EntryCannotBeCached") </Condition>
</Step>
<Condition>(populatecache.POP-CACHE-1.failed = true) </Condition>
</FaultRule>LookupCache नीति
इस सेक्शन में गड़बड़ी के मैसेज और फ़्लो वैरिएबल के बारे में बताया गया है. ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति के तहत कोई गड़बड़ी ट्रिगर होती है. यह जानकारी जानना ज़रूरी है कि क्या प्रॉक्सी के लिए गड़बड़ी के नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
गड़बड़ी कोड प्रीफ़िक्स
लागू नहीं
रनटाइम से जुड़ी गड़बड़ियां
इस नीति के तहत रनटाइम में कोई गड़बड़ी नहीं होती है.
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
InvalidCacheResourceReference |
यह गड़बड़ी तब होती है, जब <CacheResource> एलिमेंट को किसी ऐसे नाम पर सेट किया गया हो जो उस एनवायरमेंट में मौजूद नहीं है जहां एपीआई प्रॉक्सी को डिप्लॉय किया जा रहा है. |
build |
InvalidTimeout |
अगर <CacheLookupTimeoutInSeconds> एलिमेंट को
नेगेटिव नंबर पर सेट किया गया है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
CacheNotFound |
यह गड़बड़ी तब होती है, जब गड़बड़ी के मैसेज में बताए गए कैश को किसी खास Message प्रोसेसर कॉम्पोनेंट पर न बनाया गया हो. | build |
गड़बड़ी वाले वैरिएबल
लागू नहीं
गड़बड़ी के जवाब का उदाहरण
लागू नहीं
InvalidateCache नीति
इस सेक्शन में गड़बड़ी के मैसेज और फ़्लो वैरिएबल के बारे में बताया गया है. ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति के तहत कोई गड़बड़ी ट्रिगर होती है. यह जानकारी जानना ज़रूरी है कि क्या प्रॉक्सी के लिए गड़बड़ी के नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
गड़बड़ी कोड प्रीफ़िक्स
लागू नहीं
रनटाइम से जुड़ी गड़बड़ियां
इस नीति के तहत रनटाइम में कोई गड़बड़ी नहीं होती है.
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
InvalidCacheResourceReference |
यह गड़बड़ी तब होती है, जब अमान्यैट कैश नीति में <CacheResource> एलिमेंट को किसी ऐसे नाम पर सेट किया गया हो जो उस एनवायरमेंट में मौजूद नहीं है जहां एपीआई प्रॉक्सी को डिप्लॉय किया जा रहा है. |
build |
CacheNotFound |
यह गड़बड़ी तब होती है, जब गड़बड़ी के मैसेज में बताए गए कैश को किसी खास Message प्रोसेसर कॉम्पोनेंट पर न बनाया गया हो. | build |
गड़बड़ी वाले वैरिएबल
लागू नहीं
गड़बड़ी के जवाब का उदाहरण
लागू नहीं
ResponseCache नीति
This section describes the error messages and flow variables that are set when this policy triggers an error. This information is important to know if you are developing fault rules for a proxy. To learn more, see What you need to know about policy errors and Handling faults.
Error code prefix
N/A
Runtime errors
This policy does not throw any runtime errors.
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | Fix |
|---|---|---|
InvalidTimeout |
If the
<CacheLookupTimeoutInSeconds> element of the ResponseCache policy is set to a negative number,
then the deployment of the API proxy fails. |
build |
InvalidCacheResourceReference |
This error occurs if the <CacheResource> element in a ResponseCache policy is set to a
name that does not exist in the environment where the API proxy is being deployed. |
build |
ResponseCacheStepAttachmentNotAllowedReq |
This error occurs if the same ResponseCache policy is attached to multiple request paths within any flows of an API proxy. | build |
ResponseCacheStepAttachmentNotAllowedResp |
This error occurs if the same ResponseCache policy is attached to multiple response paths within any flows of an API proxy. | build |
InvalidMessagePatternForErrorCode |
This error occurs if either the <SkipCacheLookup> or the <SkipCachePopulation>
element in a ResponseCache policy contains an invalid condition. |
build |
CacheNotFound |
This error occurs if the specific cache mentioned in the error message has not been created on a specific Message Processor component. | build |
Fault variables
N/A
Example error response
N/A
OAuthV2 नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, यह भी बताया गया है कि जब यह नीति किसी गड़बड़ी को ट्रिगर करती है, तो Edge किन गड़बड़ी वाले वैरिएबल सेट करता है. गड़बड़ियों को मैनेज करने के लिए, गड़बड़ी के नियम बनाते समय यह जानकारी ज़रूरी है. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपको क्या जानना चाहिए और गड़बड़ियों को ठीक करने के बारे में जानकारी देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | वजह | ऑपरेशन की वजह से थ्रो किया गया |
|---|---|---|---|
steps.oauth.v2.access_token_expired |
401 | ऐक्सेस टोकन की समयसीमा खत्म हो गई है. |
VerifyAccessToken |
steps.oauth.v2.access_token_not_approved |
401 | ऐक्सेस टोकन रद्द कर दिया गया. | VerifyAccessToken |
steps.oauth.v2.apiresource_doesnot_exist |
401 | अनुरोध किया गया संसाधन, ऐक्सेस टोकन से जुड़े किसी भी एपीआई प्रॉडक्ट में मौजूद नहीं है. | VerifyAccessToken |
steps.oauth.v2.FailedToResolveAccessToken |
500 | नीति को <AccessToken> एलिमेंट में बताए गए वैरिएबल में ऐक्सेस टोकन मिलना चाहिए था, लेकिन वैरिएबल को हल नहीं किया जा सका. |
GenerateAccessToken |
steps.oauth.v2.FailedToResolveAuthorizationCode |
500 | नीति को <Code> एलिमेंट में बताए गए वैरिएबल में अनुमति कोड मिलना चाहिए था, लेकिन वैरिएबल को हल नहीं किया जा सका. |
GenerateAuthorizationCode |
steps.oauth.v2.FailedToResolveClientId |
500 | नीति को <ClientId> एलिमेंट में बताए गए वैरिएबल में क्लाइंट आईडी मिलना चाहिए था, लेकिन वैरिएबल को हल नहीं किया जा सका. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
steps.oauth.v2.FailedToResolveRefreshToken |
500 | नीति को <RefreshToken> एलिमेंट में बताए गए वैरिएबल में रीफ़्रेश टोकन मिलना चाहिए था, लेकिन वैरिएबल को हल नहीं किया जा सका. |
RefreshAccessToken |
steps.oauth.v2.FailedToResolveToken |
500 | नीति को <Tokens> एलिमेंट में बताए गए वेरिएबल में टोकन मिलना चाहिए था, लेकिन वेरिएबल को हल नहीं किया जा सका. |
ValidateToken |
steps.oauth.v2.InsufficientScope |
403 | अनुरोध में दिए गए ऐक्सेस टोकन का स्कोप, ऐक्सेस टोकन की पुष्टि करने के लिए बनी नीति में बताए गए स्कोप से मेल नहीं खाता. स्कोप के बारे में जानने के लिए, OAuth2 स्कोप के साथ काम करना लेख पढ़ें. | VerifyAccessToken |
steps.oauth.v2.invalid_access_token |
401 | क्लाइंट से भेजा गया ऐक्सेस टोकन अमान्य है. | VerifyAccessToken |
steps.oauth.v2.invalid_client |
401 |
गड़बड़ी का यह नाम तब दिखता है, जब नीति की ध्यान दें: हमारा सुझाव है कि आप गड़बड़ी के मौजूदा नियम की शर्तों को बदलें, ताकि |
GenerateAccessToken RefreshAccessToken |
steps.oauth.v2.InvalidRequest |
400 | गड़बड़ी के इस नाम का इस्तेमाल कई तरह की गड़बड़ियों के लिए किया जाता है. आम तौर पर, अनुरोध में मौजूद पैरामीटर के अमान्य या मौजूद न होने पर यह गड़बड़ी दिखती है. अगर <GenerateResponse> को false पर सेट किया गया है, तो गड़बड़ी के नाम और वजह जैसी जानकारी पाने के लिए, गड़बड़ी के वैरिएबल (नीचे बताया गया है) का इस्तेमाल करें. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
steps.oauth.v2.InvalidAccessToken |
401 | अनुमति वाले हेडर में "Bearer" शब्द मौजूद नहीं है, जो ज़रूरी है. उदाहरण के लिए: Authorization: Bearer your_access_token |
VerifyAccessToken |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 |
एपीआई प्रॉक्सी, ऐक्सेस टोकन से जुड़े प्रॉडक्ट में नहीं है. सलाह: पक्का करें कि ऐक्सेस टोकन से जुड़ा प्रॉडक्ट सही तरीके से कॉन्फ़िगर किया गया हो. उदाहरण के लिए, अगर आपने संसाधन पाथ में वाइल्डकार्ड का इस्तेमाल किया है, तो पक्का करें कि वाइल्डकार्ड का इस्तेमाल सही तरीके से किया जा रहा हो. ज़्यादा जानकारी के लिए, एपीआई प्रॉडक्ट बनाना देखें. इस गड़बड़ी की वजहों के बारे में ज़्यादा जानने के लिए, Apigee कम्यूनिटी की यह पोस्ट भी देखें. |
VerifyAccessToken |
steps.oauth.v2.InvalidClientIdentifier |
500 |
गड़बड़ी का यह नाम तब दिखता है, जब नीति की |
GenerateAccessToken |
steps.oauth.v2.InvalidParameter |
500 | नीति में ऐक्सेस टोकन या ऑथराइज़ेशन कोड में से किसी एक के बारे में बताया जाना चाहिए, दोनों के बारे में नहीं. | GenerateAuthorizationCode GenerateAccessTokenImplicitGrant |
steps.oauth.v2.InvalidTokenType |
500 | <Tokens>/<Token> एलिमेंट के लिए, आपको टोकन का टाइप बताना होगा. उदाहरण के लिए, refreshtoken. अगर क्लाइंट गलत टाइप पास करता है, तो यह गड़बड़ी दिखती है. |
ValidateToken InvalidateToken |
steps.oauth.v2.MissingParameter |
500 | रिस्पॉन्स टाइप token है, लेकिन अनुदान का कोई टाइप नहीं बताया गया है. |
GenerateAuthorizationCode GenerateAccessTokenImplicitGrant |
steps.oauth.v2.UnSupportedGrantType |
500 |
क्लाइंट ने अनुदान का ऐसा टाइप बताया है जो नीति के मुताबिक काम नहीं करता. यह टाइप, <SupportedGrantTypes> एलिमेंट में मौजूद नहीं है. ध्यान दें: फ़िलहाल, एक गड़बड़ी है, जिसमें गैर-काम करने वाले अनुदान टाइप की गड़बड़ियां ठीक से नहीं दिखती हैं. अगर ग़ैर-काम करने वाले अनुदान टाइप की गड़बड़ी होती है, तो प्रोक्सी, उम्मीद के मुताबिक गड़बड़ी के फ़्लो में नहीं जाती. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
इस नीति वाली किसी प्रॉक्सी को डिप्लॉय करने पर, ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का नाम | वजह |
|---|---|
InvalidValueForExpiresIn |
|
InvalidValueForRefreshTokenExpiresIn |
<RefreshTokenExpiresIn> एलिमेंट के लिए, पॉज़िटिव
इंटिजर और -1 मान्य वैल्यू हैं. |
InvalidGrantType |
<SupportedGrantTypes>
एलिमेंट में, अनुदान का अमान्य टाइप दिया गया है. मान्य टाइप की सूची के लिए, नीति का रेफ़रंस देखें. |
ExpiresInNotApplicableForOperation |
पक्का करें कि <Operations> एलिमेंट में बताए गए ऑपरेशन, समयसीमा खत्म होने की सुविधा के साथ काम करते हों. उदाहरण के लिए, VerifyToken ऑपरेशन में ऐसा नहीं होता. |
RefreshTokenExpiresInNotApplicableForOperation |
पक्का करें कि <Operations> एलिमेंट में बताए गए ऑपरेशन, रीफ़्रेश करने के लिए ज़रूरी हों और टोकन की समयसीमा खत्म होने पर, टोकन को रिन्यू किया जा सके. उदाहरण के लिए, VerifyToken ऑपरेशन में ऐसा नहीं होता. |
GrantTypesNotApplicableForOperation |
पक्का करें कि <SupportedGrantTypes> में बताए गए अनुदान टाइप, बताए गए ऑपरेशन के लिए काम करते हों. |
OperationRequired |
आपको इस नीति में, ध्यान दें: अगर |
InvalidOperation |
आपको इस नीति में,
ध्यान दें: अगर |
TokenValueRequired |
आपको <Tokens> एलिमेंट में टोकन <Token> की वैल्यू बतानी होगी. |
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट होते हैं, जब रनटाइम के दौरान यह नीति किसी गड़बड़ी को ट्रिगर करती है.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name, गड़बड़ी का नाम है, जैसा कि ऊपर दी गई रनटाइम गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name = "InvalidRequest" |
oauthV2.policy_name.failed |
policy_name, उस नीति का नाम है जिसकी वजह से गड़बड़ी हुई. यह नाम उपयोगकर्ता ने तय किया है. | oauthV2.GenerateAccesstoken.failed = true |
oauthV2.policy_name.fault.name |
policy_name, उस नीति का नाम है जिसकी वजह से गड़बड़ी हुई. यह नाम उपयोगकर्ता ने तय किया है. | oauthV2.GenerateAccesstoken.fault.name = InvalidRequest
ध्यान दें: VerifyAccessToken ऑपरेशन के लिए, गड़बड़ी के नाम में यह सफ़िक्स शामिल होता है: |
oauthV2.policy_name.fault.cause |
policy_name, उस नीति का नाम है जिसकी वजह से गड़बड़ी हुई. यह नाम उपयोगकर्ता ने तय किया है. | oauthV2.GenerateAccesstoken.cause = Required param : grant_type |
गड़बड़ी के रिस्पॉन्स का उदाहरण
अगर <GenerateResponse>
एलिमेंट true है, तो ये रिस्पॉन्स क्लाइंट को भेजे जाते हैं.
अगर <GenerateResponse> सही है, तो नीति, टोकन और कोड जनरेट करने वाले ऑपरेशन के लिए, इस फ़ॉर्मैट में गड़बड़ियां दिखाती है. पूरी सूची के लिए, OAuth एचटीटीपी गड़बड़ी के रिस्पॉन्स का रेफ़रंस देखें.
{"ErrorCode" : "invalid_client", "Error" :"ClientId is Invalid"}अगर <GenerateResponse> सही है, तो नीति पुष्टि करने और पुष्टि की पुष्टि करने के लिए, इस फ़ॉर्मैट में गड़बड़ियां दिखाती है. पूरी सूची के लिए, OAuth एचटीटीपी गड़बड़ी के रिस्पॉन्स का रेफ़रंस देखें.
{ { "fault":{ "faultstring":"Invalid Access Token", "detail":{ "errorcode":"keymanagement.service.invalid_access_token" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name=OAuthV2 Faults">
<Step>
<Name>AM-InvalidClientResponse</Name>
<Condition>(fault.name = "invalid_client") OR (fault.name = "InvalidClientIdentifier")</Condition>
</Step>
<Step>
<Name>AM-InvalidTokenResponse</Name>
<Condition>(fault.name = "invalid_access_token")</Condition>
</Step>
<Condition>(oauthV2.failed = true) </Condition>
</FaultRule>GetOAuthV2Info नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं. नीचे दिखाए गए गड़बड़ी के नाम स्ट्रिंग हैं
जिन्हें कोई गड़बड़ी होने पर fault.name वैरिएबल को असाइन किया जाता है. गलती देखें
'वैरिएबल' सेक्शन में जाएं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह |
|---|---|---|
steps.oauth.v2.access_token_expired |
500 | नीति को भेजे गए ऐक्सेस टोकन की समयसीमा खत्म हो गई है. |
steps.oauth.v2.authorization_code_expired |
500 | नीति को भेजे गए ऑथराइज़ेशन कोड की समयसीमा खत्म हो गई है. |
steps.oauth.v2.invalid_access_token |
500 | नीति को भेजा गया ऐक्सेस टोकन अमान्य है. |
steps.oauth.v2.invalid_client-invalid_client_id |
500 | नीति को भेजा गया क्लाइंट आईडी अमान्य है. |
steps.oauth.v2.invalid_refresh_token |
500 | नीति को भेजा गया रीफ़्रेश टोकन अमान्य है. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
500 | नीति को भेजा गया ऑथराइज़ेशन कोड अमान्य है. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | कृपया देखें यह Apigee कम्यूनिटी पोस्ट पढ़ें. |
steps.oauth.v2.refresh_token_expired |
500 | नीति को भेजे गए रीफ़्रेश टोकन की समयसीमा खत्म हो गई है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
डिप्लॉयमेंट की गड़बड़ियों के बारे में जानकारी के लिए, यूज़र इंटरफ़ेस (यूआई) में रिपोर्ट किया गया मैसेज देखें.
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब यह नीति रनटाइम के दौरान कोई गड़बड़ी ट्रिगर करती है.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "IPDeniedAccess" |
oauthV2.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | oauthV2.GetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | oauthV2.GetToKenInfo.fault.name = invalid_client-invalid_client_id |
oauthV2.policy_name.fault.cause |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | oauthV2.GetTokenInfo.cause = ClientID is Invalid |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault":{ "faultstring":"ClientId is Invalid", "detail":{ "errorcode":"keymanagement.service.invalid_client-invalid_client_id" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name="OAuthV2 Faults">
<Step>
<Name>AM-InvalidClientIdResponse</Name>
</Step>
<Condition>(fault.name = "invalid_client-invalid_client_id")</Condition>
</FaultRule>SetOAuthV2Info नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause |
|---|---|---|
steps.oauth.v2.access_token_expired |
500 | The access token sent to the policy is expired. |
steps.oauth.v2.invalid_access_token |
500 | The access token sent to the policy is invalid. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | Please see this Apigee Community post for information about troubleshooting this error. |
Deployment errors
Refer to the message reported in the UI for information about deployment errors.
Fault variables
These variables are set when this policy triggers an error at runtime.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | oauthV2.SetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name is the user-specified name of the policy that threw the fault. | oauthV2.SetTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name is the user-specified name of the policy that threw the fault. | oauthV2.SetTokenInfo.cause = Invalid Access Token |
Example error response
{
"fault": {
"faultstring": "Invalid Access Token",
"detail": {
"errorcode": "keymanagement.service.invalid_access_token"
}
}
}Example fault rule
<FaultRule name=SetOAuthV2Info Faults">
<Step>
<Name>AM-InvalidTokenResponse</Name>
<Condition>(fault.name = "invalid_access_token")</Condition>
</Step>
<Condition>(oauthV2.failed = true) </Condition>
</FaultRule>DeleteOAuthV2Info नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause |
|---|---|---|
steps.oauth.v2.invalid_access_token |
401 | The access token sent to the policy is invalid. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
401 | The authorization code sent to the policy is invalid. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | Please see this Apigee Community post for information about troubleshooting this error. |
Deployment errors
Refer to the message reported in the UI for information about deployment errors.
Fault variables
These variables are set when this policy triggers an error at runtime.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | oauthV2.DeleteTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name is the user-specified name of the policy that threw the fault. | oauthV2.DeleteTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name is the user-specified name of the policy that threw the fault. | oauthV2.DeleteTokenInfo.cause = Invalid Access Token |
Example error response
{
"fault": {
"faultstring": "Invalid Access Token",
"detail": {
"errorcode": "keymanagement.service.invalid_access_token"
}
}
}Example fault rule
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
<Step>
<Name>AM-InvalidTokenResponse</Name>
</Step>
<Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>OAuthv1.0a नीति
OAuthV1 नीति के टाइप से इन गड़बड़ी के बारे में पता चलता है.
OAuth से जुड़ी एचटीटीपी गड़बड़ी के कोड के लिए, OAuth एचटीटीपी गड़बड़ी रिस्पॉन्स रेफ़रंस देखें.
| गड़बड़ी कोड | मैसेज |
|---|---|
AppKeyNotResolved |
Could not resolve the app key with variable {0} |
ConsumerKeyNotResolved |
Could not resolve the consumer key with variable {0} |
RequestTokenNotResolved |
Could not resolve the request token with the variable {0} |
AccessTokenNotResolved |
Could not resolve the access token with the variable {0} |
ResponseGenerationError |
Error while generating response : {0} |
UnableToDetermineOperation |
Unable to determine an operation for stepDefinition {0} |
UnableToResolveOAuthConfig |
Unable to resolve the OAuth configuration for {0} |
AtLeastOneParamRequired |
At least one of AccessToken, RequestToken or ConsumerKey must be specified in
stepDefinition {0} |
SpecifyValueOrRefReqToken |
Specify Request Token as value or ref in stepDefinition {0} |
SpecifyValueOrRefAccToken |
Specify Access Token as value or ref in stepDefinition {0} |
SpecifyValueOrRefConKey |
Specify Consumer Key as value or ref in stepDefinition {0} |
SpecifyValueOrRefAppKey |
Specify App Key as value or ref in stepDefinition {0} |
ExpiresInNotApplicableForOperation |
ExpiresIn element is not valid for operation {0} |
InvalidValueForExpiresIn |
Invalid value for ExpiresIn element for operation {0} |
FailedToFetchApiProduct |
Failed to fetch api product for key {0} |
InvalidTokenType |
Valid token types : {0}, Invalid toke type {1} in stepDefinition {2} |
TokenValueRequired |
Token value is required in stepDefinition {0} |
FailedToResolveRealm |
Failed to resolve realm {0} |
GetOAuthV1Info नीति
'OAuth v1.0a की जानकारी के लिए नीति' के लिए कोई गड़बड़ी कोड नहीं दिया गया है.
DeleteOAuthV1Info नीति
नीति के लागू होने पर, 200 स्टेटस दिखता है.
गड़बड़ी होने पर, नीति 404 और इसके जैसा आउटपुट दिखाती है (यह इस बात पर निर्भर करता है कि क्या किसी ऐक्सेस टोकन, अनुरोध टोकन या पुष्टि करने वाले को मिटाया जा रहा है.):
HTTP/1.1 404 Not Found Content-Type: application/json Content-Length: 144 Connection: keep-alive {"fault":{"faultstring":"Invalid Access Token","detail":{"errorcode":"keymanagement.service.invalid_request-access_token_invalid"}}}
PythonScript नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | Fix |
|---|---|---|---|
steps.script.ScriptEvaluationFailed |
500 | The PythonScript policy can throw several different types of ScriptExecutionFailed errors. Commonly seen types of errors include NameError and ZeroDivisionError. | build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | Fix |
|---|---|---|
InvalidResourceUrlFormat |
If the format of the resource URL specified within the <ResourceURL> or
the <IncludeURL> element of the PythonScript policy is invalid, then the deployment of the API proxy fails. |
build |
InvalidResourceUrlReference |
If the <ResourceURL> or the <IncludeURL> elements
refer to a PythonScript file that does not exist, then the deployment of the API proxy fails.
The referenced source file must exist either the API proxy, environment, or organization level. |
build |
Fault variables
These variables are set when this policy triggers an error at runtime. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "ScriptExecutionFailed" |
pythonscript.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | pythonscript.PythonScript-1.failed = true |
Example error response
{ "fault": { "faultstring": "Execution of SetResponse failed with error: Pythonscript runtime error: "ReferenceError: "status" is not defined.\"", "detail": { "errorcode": "steps.script.ScriptExecutionFailed" } } }
Example fault rule
<FaultRule name="PythonScript Policy Faults"> <Step> <Name>AM-CustomErrorResponse</Name> <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition> </Step> <Condition>(pythonscript.PythonScript-1.failed = true) </Condition> </FaultRule>
Quota नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
policies.ratelimit.FailedToResolveQuotaIntervalReference |
500 | ऐसा तब होता है, जब कोटा की नीति में <Interval> एलिमेंट के बारे में नहीं बताया गया हो. यह एलिमेंट
होना ज़रूरी है. इसका इस्तेमाल, कोटे पर लागू होने वाले समय की अवधि के बारे में बताने के लिए किया जाता है. समय अंतराल
<TimeUnit> एलिमेंट के मुताबिक, ये मिनट, घंटे, दिन, हफ़्ते या महीने भी हो सकते हैं. |
build |
policies.ratelimit.FailedToResolveQuotaIntervalTimeUnitReference |
500 | ऐसा तब होता है, जब कोटा की नीति में <TimeUnit> एलिमेंट के बारे में नहीं बताया गया हो. यह एलिमेंट
होना ज़रूरी है. इसका इस्तेमाल कोटे पर लागू समय की इकाई के बारे में बताने के लिए किया जाता है. समय अंतराल
मिनट, घंटे, दिन, हफ़्ते या महीने में भी हो सकता है. |
build |
policies.ratelimit.InvalidMessageWeight |
500 | ऐसा तब होता है, जब किसी फ़्लो वैरिएबल के ज़रिए <MessageWeight> एलिमेंट की वैल्यू तय की गई हो
अमान्य है (गैर-पूर्णांक मान). |
build |
policies.ratelimit.QuotaViolation |
500 | कोटे की तय सीमा पार हो गई थी. | लागू नहीं |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
InvalidQuotaInterval |
अगर <Interval> एलिमेंट में तय किया गया कोटा इंटरवल नहीं है
पूर्णांक का इस्तेमाल करने पर, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. उदाहरण के लिए, यदि कोटा अंतराल
<Interval> एलिमेंट में 0.1 दिया गया है, फिर
एपीआई प्रॉक्सी काम नहीं कर रहा है.
|
build |
InvalidQuotaTimeUnit |
अगर <TimeUnit> एलिमेंट में दी गई समय की इकाई काम नहीं करती है, तो
तब एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. समय की यूनिट minute हैं, जिनका इस्तेमाल किया जा सकता है.
hour, day, week, और month.
|
build |
InvalidQuotaType |
अगर <Quota> में type एट्रिब्यूट से तय किए गए कोटा का टाइप
एलिमेंट अमान्य है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. कॉन्टेंट बनाने
default, calendar, flexi, और rollingwindow जैसे कोटे का इस्तेमाल किया जा सकता है.
|
build |
InvalidStartTime |
अगर <StartTime> एलिमेंट में दिए गए समय का फ़ॉर्मैट ऐसा है
अमान्य है, तो एपीआई प्रॉक्सी का डिप्लॉयमेंट नहीं हो पाता है. मान्य फ़ॉर्मैट yyyy-MM-dd HH:mm:ss है,
जो ISO 8601 तारीख और समय फ़ॉर्मैट है. इसके लिए
उदाहरण के लिए, अगर <StartTime> एलिमेंट में तय किया गया समय
7-16-2017 12:00:00 का इस्तेमाल करने पर, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.
|
build |
StartTimeNotSupported |
अगर <StartTime> एलिमेंट के बारे में बताया गया है, जिसका कोटा टाइप नहीं है
calendar टाइप का इस्तेमाल करने पर, एपीआई प्रॉक्सी का डिप्लॉयमेंट नहीं हो पाता. यह <StartTime> एलिमेंट है
यह सिर्फ़ calendar कोटा टाइप के लिए काम करता है. उदाहरण के लिए, अगर type एट्रिब्यूट सेट है
<Quota> एलिमेंट में, flexi या rolling window के लिए
एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सका.
|
build |
InvalidTimeUnitForDistributedQuota |
अगर <Distributed> एलिमेंट true पर सेट है और <TimeUnit> एलिमेंट
second का इस्तेमाल करने पर, एपीआई प्रॉक्सी का डिप्लॉयमेंट नहीं हो पाता. इसके लिए समय इकाई second अमान्य है
एक डिस्ट्रिब्यूट किया गया कोटा. |
build |
InvalidSynchronizeIntervalForAsyncConfiguration |
अगर इवेंट में <SyncIntervalInSeconds> एलिमेंट के लिए दी गई वैल्यू
कोटा नीति में <AsynchronousConfiguration> एलिमेंट शून्य से कम है, तो
एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सका. |
build |
InvalidAsynchronizeConfigurationForSynchronousQuota |
अगर कोटे की नीति में <AsynchronousConfiguration> एलिमेंट की वैल्यू को true पर सेट किया जाता है, तो
एसिंक्रोनस कॉन्फ़िगरेशन को <AsynchronousConfiguration> एलिमेंट का इस्तेमाल करके तय किया गया है
एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सका. |
build |
गड़बड़ी के वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति की वजह से कोई गड़बड़ी होती है. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "QuotaViolation" |
ratelimit.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | ratelimit.QT-QuotaPolicy.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault":{ "detail":{ "errorcode":"policies.ratelimit.QuotaViolation" }, "faultstring":"Rate limit quota violation. Quota limit exceeded. Identifier : _default" } }
गड़बड़ी के नियम का उदाहरण
<FaultRules>
<FaultRule name="Quota Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "QuotaViolation") </Condition>
</Step>
<Condition>ratelimit.Quota-1.failed=true</Condition>
</FaultRule>
</FaultRules>ResetQuota नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | वजह | समाधान |
|---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 | कोटा रीसेट करने की नीति के <Quota> एलिमेंट में बताई गई कोटा नीति की जानकारी, एपीआई प्रॉक्सी में नहीं दी गई है. इसलिए, यह फ़्लो के दौरान उपलब्ध नहीं होती. <Quota>
एलिमेंट ज़रूरी है. यह टारगेट कोटा नीति की पहचान करता है, जिसके काउंटर को
कोटा रीसेट करने की नीति की मदद से अपडेट किया जाना चाहिए. |
build |
policies.resetquota.FailedToResolveAllowCountRef |
लागू नहीं | नीति के <Allow> एलिमेंट में
उस वैरिएबल के रेफ़रंस को किसी वैल्यू के तौर पर नहीं रखा जा सकता जिसमें अनुमति देने की संख्या शामिल है. यह एलिमेंट ज़रूरी है और यह कोटा काउंटर को कम करने के लिए
रकम बताता है. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 | <Quota> एलिमेंट में ref एट्रिब्यूट से रेफ़र किए गए वैरिएबल
को हल नहीं किया जा सकता. |
build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
InvalidCount |
अगर कोटा रीसेट करने की नीति के <Allow> एलिमेंट में बताई गई संख्या की वैल्यू कोई पूर्णांक नहीं है,
तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.
|
build |
RaiseFault नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के साथ-साथ गड़बड़ी के वैरिएबल के बारे में बताया गया है ये सेटिंग, Edge की मदद से सेट की जाती हैं. ऐसा तब होता है, जब इस नीति की वजह से कोई गड़बड़ी होती है. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. इस बारे में ज़्यादा जानने के लिए, यह देखें नीति से जुड़ी गड़बड़ियों के बारे में आपको क्या पता होना चाहिए और गड़बड़ियां ठीक करना.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह |
|---|---|---|
steps.raisefault.RaiseFault |
500 | गड़बड़ी वाली स्ट्रिंग देखें. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
कोई नहीं.
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि रनटाइम की गड़बड़ियों की टेबल ऊपर दी गई है. गड़बड़ी का नाम आखिरी है का हिस्सा है. | fault.name = "RaiseFault" |
raisefault.policy_name.failed |
policy_name, उस नीति का नाम है जिसे उपयोगकर्ता ने तय किया है गलती हुई. | raisefault.RF-ThrowError.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault":{ "detail":{ "errorcode":"steps.raisefault.RaiseFault" }, "faultstring":"Raising fault. Fault name: [name]" } }
RegularExpressionProtection नीति
यह सेक्शन, इस नीति के ट्रिगर होने पर
Edge से सेट किए गए गड़बड़ी कोड और दिखाए गए मैसेज के साथ-साथ गड़बड़ी वाले वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बना रहे हैं. अगर आपको किसी गड़बड़ी को कैप्चर करना है और कस्टम गड़बड़ी को बढ़ाना है, तो
नीति के रूट एलिमेंट पर continueOnError="true" एट्रिब्यूट सेट करें.
ज़्यादा जानने के लिए,
नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
Edge की नीतियों से मिली गड़बड़ियां, एक जैसे फ़ॉर्मैट में होती हैं जैसा कि गड़बड़ी कोड के रेफ़रंस में बताया गया है.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | मैसेज |
|---|---|
| ExecutionFailed | regularExpressionProtection चरण के बारे में {0} को लागू नहीं किया जा सका. कारण: {1} |
| InstantiationFailed | regularExpressionProtection के चरण की परिभाषा को इंस्टैंशिएट नहीं किया जा सका {0} |
| NonMessageVariable | चर {0} किसी संदेश का समाधान नहीं करता |
| SourceMessageNotAvailable | {0} RegularExpressionProtection के चरण की परिभाषा के लिए {0}मैसेज उपलब्ध नहीं है {1} |
| ThreatDetected | {0} में रेगुलर एक्सप्रेशन को खतरे का पता चला: रेगुलर एक्सप्रेशन: {1} इनपुट: {2} |
| VariableResolutionFailed | वैरिएबल {0} का समाधान नहीं किया जा सका |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
| गड़बड़ी कोड | मैसेज | समाधान |
|---|---|---|
| CannotBeConvertedToNodeset | regularExpressionProtection {0}: xpath {1} का परिणाम नोडसेट में रूपांतरित नहीं किया जा सकता. संदर्भ {2} | build |
| DuplicatePrefix | regularExpressionProtection {0}: डुप्लीकेट प्रीफ़िक्स {1} | build |
| EmptyJSONPathExpression | regularExpressionProtection {0}: JSONPath के खाली एक्सप्रेशन को खाली करें | build |
| EmptyXPathExpression | regularExpressionProtection {0}: खाली XPath एक्सप्रेशन | build |
| InvalidRegularExpression | रेगुलर एक्सप्रेशन प्रोटेक्शन {0}: अमान्य रेगुलर एक्सप्रेशन {1}, कॉन्टेक्स्ट {2} | build |
| JSONPathCompilationFailed | regularExpressionProtection {0}: jsonpath{1} कंपाइल नहीं किया जा सका. संदर्भ {2} | build |
| nonखालीPrefixmappedToEmpty विरोधी | रेगुलर एक्सप्रेशन सुरक्षा {0}: खाली प्रीफ़िक्स {1} को खाली यूआरआई पर मैप नहीं किया जा सकता | build |
| NoPatternsToEnforce | regularExpressionProtection {0}: {1} में लागू करने के लिए कोई पैटर्न नहीं है | build |
| NothingToEnforce | regularExpressionProtection {0}: यूआरआईPath, QueryParam, हेडर, FormsParam, XMLPayload, और JSONPayload में से कम से कम एक ज़रूरी है | build |
| XPathCompilationFailed | regularExpressionProtection {0}: xpath {1} को कंपाइल नहीं किया जा सका. संदर्भ {2} | build |
गड़बड़ी वाले वैरिएबल
ये वैरिएबल तब सेट किए जाते हैं, जब इस नीति से कोई गड़बड़ी ट्रिगर होती है. ज़्यादा जानकारी के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी देखें.
| वैरिएबल | जगह | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name, गड़बड़ी का नाम है, जैसा कि ऊपर दी गई टेबल में बताया गया है. | fault.name Matches "ThreatDetected" |
regularexpressionprotection.policy_name.failed |
policy_name, उस नीति का उपयोगकर्ता तय किया गया नाम है जिसकी वजह से गड़बड़ी हुई है. | regularexpressionprotection.Regular-Expressions-Protection-1.failed = true |
SOAPMessageValidation नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | Fix |
|---|---|---|---|
steps.messagevalidation.SourceMessageNotAvailable |
500 |
This error occurs if a variable specified in the
|
build |
steps.messagevalidation.NonMessageVariable |
500 |
This error occurs if the Message type variables represent entire HTTP requests and responses. The built-in Edge
flow variables |
build |
steps.messagevalidation.Failed |
500 | This error occurs if the SOAPMessageValidation policy fails to validate the input message payload against the XSD schema or WSDL definition. It will also occur if there is malformed JSON or XML in the payload message. | build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | Fix |
|---|---|---|
InvalidResourceType |
The <ResourceURL> element in the SOAPMessageValidation policy is set to a resource type
not supported by the policy.
|
build |
ResourceCompileFailed |
The resource script referenced in the <ResourceURL> element of the SOAPMessageValidation
policy contains an error that prevents it from compiling.
|
build |
RootElementNameUnspecified |
The <Element> element in the SOAPMessageValidation policy does not contain the root
element's name. |
build |
InvalidRootElementName |
The <Element> element in the SOAPMessageValidation policy contains a root element name
that does not adhere to XML rules for valid element naming. |
build |
SAMLAssertion नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है और गड़बड़ी वाले ऐसे वैरिएबल होते हैं जिन्हें Edge की मदद से सेट किया जाता है. ऐसा तब होता है, जब इस नीति के तहत कोई गड़बड़ी होती है. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
SourceNotConfigured |
एसएएमएल के दावे की पुष्टि करने के लिए, इनमें से एक या एक से ज़्यादा एलिमेंट
इस नीति की जानकारी नहीं है या इसमें कोई जानकारी नहीं है: <Source>, <XPath>,
<Namespaces>, <Namespace>.
|
build |
TrustStoreNotConfigured |
अगर <TrustStore> एलिमेंट खाली है या
VerifySAMLAssertion नीति की पुष्टि होने के बाद, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.
एक मान्य ट्रस्ट स्टोर का होना ज़रूरी है.
|
build |
NullKeyStoreAlias |
अगर चाइल्ड एलिमेंट <Alias> खाली है या <Keystore> में इसकी जानकारी नहीं दी गई है
एसएएमएल असर नीति जनरेट करने की नीति का एलिमेंट और इसके बाद एपीआई के डिप्लॉयमेंट
प्रॉक्सी विफल. मान्य कीस्टोर उपनाम ज़रूरी है.
|
build |
NullKeyStore |
अगर चाइल्ड एलिमेंट <Name> खाली है या <Keystore> में इसकी जानकारी नहीं दी गई है
generateSAMLAssertion नीति का एलिमेंट है. इसके बाद, एपीआई को डिप्लॉय किया जा सकता है
प्रॉक्सी विफल. मान्य कीस्टोर नाम डालना ज़रूरी है.
|
build |
NullIssuer |
अगर <Issuer> एलिमेंट खाली है या एसएएमएल जनरेट करें में इसकी जानकारी नहीं दी गई है
दावा करने की नीति सेट करने के बाद, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. ऐप्लिकेशन
<Issuer> की मान्य वैल्यू डालना ज़रूरी है.
|
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name, गड़बड़ी का नाम है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name = "InvalidMediaTpe" |
GenerateSAMLAssertion.failed |
एसएएमएल दावे की नीति के कॉन्फ़िगरेशन की पुष्टि करने के लिए, गड़बड़ी का प्रीफ़िक्स यह है
ValidateSAMLAssertion. |
GenerateSAMLAssertion.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault": { "faultstring": "GenerateSAMLAssertion[GenSAMLAssert]: Invalid media type", "detail": { "errorcode": "steps.saml.generate.InvalidMediaTpe" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRules>
<FaultRule name="invalid_saml_rule">
<Step>
<Name>invalid-saml</Name>
</Step>
<Condition>(GenerateSAMLAssertion.failed = "true")</Condition>
</FaultRule>
</FaultRules>ServiceCallout नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.servicecallout.ExecutionFailed |
500 |
यह गड़बड़ी तब हो सकती है, जब:
|
build |
steps.servicecallout.RequestVariableNotMessageType |
500 | नीति में दिए गए अनुरोध वैरिएबल का टाइप मैसेज नहीं है. उदाहरण के लिए, अगर यह कोई स्ट्रिंग या कोई दूसरा गैर-मैसेज टाइप है, तो आपको यह गड़बड़ी दिखेगी. | build |
steps.servicecallout.RequestVariableNotRequestMessageType |
500 | नीति में दिए गए अनुरोध वैरिएबल का टाइप, अनुरोध मैसेज नहीं है. इसके लिए उदाहरण के लिए, अगर यह रिस्पॉन्स का टाइप है, तो आपको यह गड़बड़ी दिखेगी. | build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
URLMissing |
<HTTPTargetConnection> में <URL> एलिमेंट
मौजूद नहीं है या खाली है. |
build |
ConnectionInfoMissing |
यह गड़बड़ी तब होती है, जब नीति में
<HTTPTargetConnection> या <LocalTargetConnection>
एलिमेंट. |
build |
InvalidTimeoutValue |
यह गड़बड़ी तब होती है, जब <Timeout> की वैल्यू नेगेटिव या शून्य होती है. |
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name = "RequestVariableNotMessageType" |
servicecallout.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | servicecallout.SC-GetUserData.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault":{ "detail":{ "errorcode":"steps.servicecallout.RequestVariableNotMessageType" }, "faultstring":"ServiceCallout[ServiceCalloutGetMockResponse]: request variable data_str value is not of type Message" } }
गड़बड़ी के नियम का उदाहरण
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="RequestVariableNotMessageType">
<Step>
<Name>AM-RequestVariableNotMessageType</Name>
</Step>
<Condition>(fault.name = "RequestVariableNotMessageType")</Condition>
</FaultRule>SpikeArrest नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के साथ-साथ गड़बड़ी के वैरिएबल के बारे में बताया गया है ये सेटिंग, Edge की मदद से सेट की जाती हैं. ऐसा तब होता है, जब इस नीति की वजह से कोई गड़बड़ी होती है. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. इस बारे में ज़्यादा जानने के लिए, यह देखें आपके लिए काम की जानकारी नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
policies.ratelimit.FailedToResolveSpikeArrestRate |
500 |
यह गड़बड़ी तब होती है, जब रेट सेटिंग वाले वैरिएबल का रेफ़रंस होता है
<Rate> एलिमेंट के अंदर, Spike Arrest में मौजूद वैल्यू नहीं हटाई जा सकती
की नीति देखें. यह एलिमेंट ज़रूरी है. इसका इस्तेमाल, गिरफ़्तारी की दर के बारे में बताने के लिए किया जाता है
intpm या intps का फ़ॉर्मैट. |
build |
policies.ratelimit.InvalidMessageWeight |
500 |
यह गड़बड़ी तब होती है, जब <MessageWeight> एलिमेंट के लिए वैल्यू इसके ज़रिए तय की जाती है
फ़्लो वैरिएबल अमान्य है (गैर-पूर्णांक मान). |
build |
policies.ratelimit.SpikeArrestViolation |
429 |
दर सीमा पार हो गई थी. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाली प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
InvalidAllowedRate |
अगर स्पाइक अरेस्ट के <Rate> एलिमेंट में, गिरफ़्तारी की ज़्यादा दर बताई गई है, तो
नीति कोई पूर्णांक नहीं है या अगर दर में सफ़िक्स के तौर पर ps या pm नहीं है, तो
तब एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि रनटाइम की गड़बड़ियों की टेबल ऊपर दी गई है. गड़बड़ी का नाम आखिरी हिस्सा है . | fault.name Matches "SpikeArrestViolation" |
ratelimit.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | ratelimit.SA-SpikeArrestPolicy.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
यहां गड़बड़ी के रिस्पॉन्स का उदाहरण दिया गया है:
{ "fault":{ "detail":{ "errorcode":"policies.ratelimit.SpikeArrestViolation" }, "faultstring":"Spike arrest violation. Allowed rate : 10ps" } }
गड़बड़ी के नियम का उदाहरण
SpikeArrestViolation गड़बड़ी को ठीक करने के लिए, यहां उदाहरण के तौर पर गड़बड़ी का नियम दिया गया है:
<FaultRules>
<FaultRule name="Spike Arrest Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "SpikeArrestViolation") </Condition>
</Step>
<Condition>ratelimit.Spike-Arrest-1.failed=true</Condition>
</FaultRule>
</FaultRules>StatisticsCollector नीति
इस सेक्शन में, गड़बड़ी के मैसेज और फ़्लो वैरिएबल के बारे में बताया गया है. ये मैसेज और वैरिएबल तब सेट होते हैं, जब यह नीति किसी गड़बड़ी को ट्रिगर करती है. अगर आपको किसी प्रोक्सी के लिए गड़बड़ी के नियम बनाने हैं, तो यह जानकारी ज़रूरी है. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपको क्या जानना चाहिए और गड़बड़ियों को ठीक करने के बारे में जानकारी देखें.
रनटाइम से जुड़ी गड़बड़ियां
कोई नहीं.
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
| गड़बड़ी का नाम | वजह | ठीक करें |
|---|---|---|
UnsupportedDatatype |
अगर आंकड़ों को इकट्ठा करने वाली नीति के <Statistic> एलिमेंट में, रेफ़ एट्रिब्यूट से तय किए गए वेरिएबल का टाइप काम नहीं करता है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. इस तरह के डेटा के लिए यह तय किया जा सकता है कि इसे कब मिटाया जाए: string, integer,
float, long, double, और boolean. |
build |
InvalidName |
अगर आंकड़ों को इकट्ठा करने वाली नीति के <Statistic> एलिमेंट में बताए गए वैरिएबल के लिए इकट्ठा किए गए डेटा का रेफ़रंस देने के लिए इस्तेमाल किया गया नाम, सिस्टम के तय किए गए वैरिएबल से मेल नहीं खाता है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. सिस्टम से तय किए गए कुछ वैरिएबल organization और environment हैं. |
build |
DatatypeMissing |
अगर आंकड़ों को इकट्ठा करने वाली नीति के <Statistic> एलिमेंट में ref एट्रिब्यूट से तय किए गए वैरिएबल का टाइप मौजूद नहीं है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |
गड़बड़ी के वैरिएबल
कोई नहीं.
VerifyAPIKey नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, उन गड़बड़ी वाले वैरिएबल के बारे में बताया गया है जिन्हें Edge सेट करता है. ऐसा तब होता है, जब यह नीति गड़बड़ी को ट्रिगर करती है. अगर आपको गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाने हैं, तो यह जानकारी आपके लिए ज़रूरी है. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में ज़रूरी जानकारी और गड़बड़ियों को ठीक करना लेख पढ़ें.
रनटाइम से जुड़ी गड़बड़ियां
ये गड़बड़ियां, नीति लागू करते समय हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | वजह |
|---|---|---|
keymanagement.service.CompanyStatusNotActive |
401 | जिस डेवलपर ऐप्लिकेशन से जुड़ी कंपनी की एपीआई कुंजी का इस्तेमाल किया जा रहा है उसका स्टेटस 'चालू नहीं है' के तौर पर सेट है. जब किसी कंपनी का स्टेटस 'बंद है' पर सेट होता है, तब उस कंपनी से जुड़े डेवलपर या ऐप्लिकेशन को ऐक्सेस नहीं किया जा सकता. संगठन का एडमिन, मैनेजमेंट एपीआई का इस्तेमाल करके किसी कंपनी की स्थिति बदल सकता है. किसी कंपनी का स्टेटस सेट करना लेख पढ़ें. |
keymanagement.service.DeveloperStatusNotActive |
401 |
जिस डेवलपर ने उस डेवलपर ऐप्लिकेशन को बनाया है जिसमें इस्तेमाल की जा रही एपीआई कुंजी है उसका स्टेटस 'कार्रवाई नहीं की जा सकती' के तौर पर सेट है. जब किसी ऐप्लिकेशन डेवलपर के स्टेटस को 'इस्तेमाल में नहीं है' पर सेट किया जाता है, तो उस डेवलपर के बनाए गए सभी डेवलपर ऐप्लिकेशन बंद हो जाते हैं. एडमिन के तौर पर काम करने वाला कोई उपयोगकर्ता, डेवलपर की स्थिति में बदलाव कर सकता है. इसके लिए, उसके पास ज़रूरी अनुमतियां होनी चाहिए. जैसे, संगठन के एडमिन की अनुमति. वह डेवलपर की स्थिति में इन तरीकों से बदलाव कर सकता है:
|
keymanagement.service.invalid_client-app_not_approved |
401 | एपीआई पासकोड से जुड़े डेवलपर ऐप्लिकेशन का ऐक्सेस रद्द कर दिया गया है. जिस ऐप्लिकेशन का ऐक्सेस रद्द कर दिया गया है वह किसी भी एपीआई प्रॉडक्ट को ऐक्सेस नहीं कर सकता. साथ ही, Apigee Edge से मैनेज किए जाने वाले किसी भी एपीआई को शुरू नहीं कर सकता. संगठन का एडमिन, मैनेजमेंट एपीआई का इस्तेमाल करके डेवलपर ऐप्लिकेशन की स्थिति बदल सकता है. डेवलपर ऐप्लिकेशन को मंज़ूरी देना या उसे रद्द करना लेख पढ़ें. |
oauth.v2.FailedToResolveAPIKey |
401 | नीति के मुताबिक, एपीआई पासकोड को उस वैरिएबल में होना चाहिए जिसे नीति के <APIKey> एलिमेंट में तय किया गया है. यह गड़बड़ी तब होती है, जब अनुमानित वैरिएबल मौजूद नहीं होता (इसे ठीक नहीं किया जा सकता). |
oauth.v2.InvalidApiKey |
401 | Edge को एक एपीआई पासकोड मिला है, लेकिन वह अमान्य है. जब Edge अपने डेटाबेस में कुंजी खोजता है, तो यह ज़रूरी है कि वह अनुरोध में भेजी गई कुंजी से पूरी तरह मेल खाए. अगर एपीआई पहले काम करता था, तो पक्का करें कि कुंजी फिर से जनरेट न की गई हो. अगर कुंजी को फिर से जनरेट किया गया है, तो पुरानी कुंजी का इस्तेमाल करने पर आपको यह गड़बड़ी दिखेगी. ज़्यादा जानकारी के लिए, ऐप्लिकेशन रजिस्टर करना और एपीआई कुंजियां मैनेज करना लेख पढ़ें. |
oauth.v2.InvalidApiKeyForGivenResource |
401 | Edge को एक एपीआई पासकोड मिला है और यह मान्य है. हालांकि, यह उस डेवलपर ऐप्लिकेशन में मौजूद मंज़ूरी पा चुके पासकोड से मेल नहीं खाता है जो किसी प्रॉडक्ट के ज़रिए आपकी एपीआई प्रॉक्सी से जुड़ा है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
इस नीति का इस्तेमाल करने वाली प्रॉक्सी को डिप्लॉय करते समय, ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का नाम | वजह |
|---|---|
SpecifyValueOrRefApiKey |
<APIKey> एलिमेंट के लिए, वैल्यू या कुंजी तय नहीं की गई है. |
फ़ॉल्ट वैरिएबल
ये वैरिएबल, रनटाइम में गड़बड़ी होने पर सेट किए जाते हैं. ज़्यादा जानकारी के लिए, नीति के उल्लंघन से जुड़ी गड़बड़ियों के बारे में ज़रूरी जानकारी लेख पढ़ें.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है. इसके बारे में ऊपर दी गई रनटाइम से जुड़ी गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "FailedToResolveAPIKey" |
oauthV2.policy_name.failed |
policy_name, नीति का वह नाम है जिसे उपयोगकर्ता ने तय किया है और जिसकी वजह से गड़बड़ी हुई है. | oauthV2.VK-VerifyAPIKey.failed = true |
गड़बड़ी के जवाबों के उदाहरण
{
"fault":{
"faultstring":"Invalid ApiKey",
"detail":{
"errorcode":"oauth.v2.InvalidApiKey"
}
}
}{
"fault":{
"detail":{
"errorcode":"keymanagement.service.DeveloperStatusNotActive"
},
"faultstring":"Developer Status is not Active"
}
}गड़बड़ी के नियम का उदाहरण
<FaultRule name="FailedToResolveAPIKey">
<Step>
<Name>AM-FailedToResolveAPIKey</Name>
</Step>
<Condition>(fault.name Matches "FailedToResolveAPIKey") </Condition>
</FaultRule>VerifyJWS नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|
steps.jws.AlgorithmInTokenNotPresentInConfiguration |
401 | ऐसा तब होता है जब पुष्टि करने की नीति में एक से ज़्यादा एल्गोरिदम हों |
steps.jws.AlgorithmMismatch |
401 | जनरेट करने की नीति के ज़रिए हेडर में बताए गए एल्गोरिदम, पुष्टि करें नीति में मौजूद एल्गोरिदम से मेल नहीं खाते. तय किए गए एल्गोरिदम मेल खाने चाहिए. |
steps.jws.ContentIsNotDetached |
401 | <DetachedContent> तब बताया जाता है, जब JWS में
डिटैच किया गया कॉन्टेंट पेलोड नहीं होता. |
steps.jws.FailedToDecode |
401 | यह नीति, JWS को डिकोड नहीं कर सकी. शायद JWS में कोई गड़बड़ी है. |
steps.jws.InsufficientKeyLength |
401 | HS256 एल्गोरिदम के लिए, 32 बाइट से कम की कुंजी के लिए |
steps.jws.InvalidClaim |
401 | ऐसा दावा जो मौजूद नहीं है या दावे से मेल नहीं खाता, या हेडर या हेडर मेल नहीं खाता. |
steps.jws.InvalidCurve |
401 | कुंजी से तय किया गया कर्व, एलिप्टिक कर्व एल्गोरिदम के लिए मान्य नहीं है. |
steps.jws.InvalidJsonFormat |
401 | JWS हेडर में अमान्य JSON मिला. |
steps.jws.InvalidJws |
401 | यह गड़बड़ी तब होती है, जब JWS हस्ताक्षर की पुष्टि नहीं हो पाती. |
steps.jws.InvalidPayload |
401 | JWS पेलोड अमान्य है. |
steps.jws.InvalidSignature |
401 | <DetachedContent> को हटाया गया है और JWS में अलग कॉन्टेंट पेलोड है. |
steps.jws.KeyIdMissing |
401 | पुष्टि करने की नीति के तहत, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल किया जाता है. हालांकि, साइन की गई JWS नीति के हेडर में
kid प्रॉपर्टी शामिल नहीं होती. |
steps.jws.KeyParsingFailed |
401 | सार्वजनिक कुंजी को दी गई कुंजी से पार्स नहीं किया जा सका. |
steps.jws.MissingPayload |
401 | JWS पेलोड मौजूद नहीं है. |
steps.jws.NoAlgorithmFoundInHeader |
401 | ऐसा तब होता है, जब JWS इस एल्गोरिदम हेडर को छोड़ देता है. |
steps.jws.NoMatchingPublicKey |
401 | पुष्टि करने की नीति, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल करती है. हालांकि, साइन किए गए JWS में
kid, JWKS में शामिल नहीं है. |
steps.jws.UnhandledCriticalHeader |
401 | crit हेडर में, पुष्टि करें JWS नीति से मिला हेडर,
KnownHeaders की सूची में नहीं है. |
steps.jws.UnknownException |
401 | एक अज्ञात अपवाद हुआ. |
steps.jws.WrongKeyType |
401 | कुंजी का गलत प्रकार बताया गया. उदाहरण के लिए, अगर आपने एलिप्टिक कर्व एल्गोरिदम के लिए आरएसए कुंजी या आरएसए एल्गोरिदम के लिए कोई कर्व कुंजी तय की है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | कब होता है |
|---|---|
InvalidAlgorithm |
सिर्फ़ ये वैल्यू मान्य हैं: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512. |
|
|
डिप्लॉयमेंट की दूसरी संभावित गड़बड़ियां. |
Fault variables
These variables are set when a runtime error occurs. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name Matches "TokenExpired" |
JWS.failed |
All JWS policies set the same variable in the case of a failure. | jws.JWS-Policy.failed = true |
Example error response
For error handling, the best practice is to trap the errorcode part of the error
response. Do not rely on the text in the faultstring, because it could change.
Example fault rule
<FaultRules>
<FaultRule name="JWS Policy Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "TokenExpired")</Condition>
</Step>
<Condition>JWS.failed=true</Condition>
</FaultRule>
</FaultRules>VerifyJWT नीति
यह सेक्शन गड़बड़ी के कोड और दिखाए गए गड़बड़ी के मैसेज के बारे में बताता है. साथ ही, इस नीति के ट्रिगर होने पर Edge की मदद से सेट की गई गड़बड़ी के वैरिएबल के बारे में बताता है. यह जानकारी जानना ज़रूरी है कि क्या गड़बड़ियों को ठीक करने के लिए, गड़बड़ी से जुड़े नियम बनाए जा रहे हैं. ज़्यादा जानने के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | कब होता है |
|---|---|---|
steps.jwt.AlgorithmInTokenNotPresentInConfiguration |
401 | ऐसा तब होता है, जब पुष्टि की नीति में एक से ज़्यादा एल्गोरिदम होते हैं. |
steps.jwt.AlgorithmMismatch |
401 | जनरेट करने की नीति में बताए गए एल्गोरिदम, पुष्टि करने की नीति में मौजूद एल्गोरिदम से मेल नहीं खाते. तय किए गए एल्गोरिदम मेल खाने चाहिए. |
steps.jwt.FailedToDecode |
401 | नीति, JWT को डिकोड नहीं कर सकी. JWT शायद खराब है. |
steps.jwt.GenerationFailed |
401 | नीति, JWT जनरेट नहीं कर सकी. |
steps.jwt.InsufficientKeyLength |
401 | HS256 एल्गोरिदम के लिए 32 बाइट से कम की कुंजी के लिए, HS386 एल्गोरिदम के लिए 48 बाइट से कम और HS512 एल्गोरिदम के लिए 64 बाइट से कम की कुंजी के लिए. |
steps.jwt.InvalidClaim |
401 | ऐसा दावा जो मौजूद नहीं है या दावे से मेल नहीं खाता, या हेडर या हेडर मेल नहीं खाता. |
steps.jwt.InvalidCurve |
401 | कुंजी से तय किया गया कर्व, एलिप्टिक कर्व एल्गोरिदम के लिए मान्य नहीं है. |
steps.jwt.InvalidJsonFormat |
401 | हेडर या पेलोड में अमान्य JSON मिला है. |
steps.jwt.InvalidToken |
401 | यह गड़बड़ी तब होती है, जब JWT हस्ताक्षर की पुष्टि नहीं हो पाती. |
steps.jwt.JwtAudienceMismatch |
401 | टोकन की पुष्टि नहीं करने पर ऑडियंस क्लेम नहीं किया जा सका. |
steps.jwt.JwtIssuerMismatch |
401 | टोकन की पुष्टि करने के दौरान, कार्ड जारी करने वाले बैंक या कंपनी का दावा नहीं किया जा सका. |
steps.jwt.JwtSubjectMismatch |
401 | टोकन की पुष्टि नहीं होने की वजह से, विषय पर दावा नहीं किया जा सका. |
steps.jwt.KeyIdMissing |
401 | पुष्टि करने की नीति, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल करती है, लेकिन हस्ताक्षर किए गए JWT में हेडर में kid प्रॉपर्टी शामिल नहीं होती. |
steps.jwt.KeyParsingFailed |
401 | सार्वजनिक कुंजी को दी गई कुंजी से पार्स नहीं किया जा सका. |
steps.jwt.NoAlgorithmFoundInHeader |
401 | ऐसा तब होता है, जब JWT में कोई एल्गोरिदम हेडर नहीं होता. |
steps.jwt.NoMatchingPublicKey |
401 | पुष्टि करने की नीति, सार्वजनिक कुंजियों के लिए सोर्स के तौर पर JWKS का इस्तेमाल करती है. हालांकि, साइन किए गए JWT में मौजूद kid, JWKS की सूची में शामिल नहीं है. |
steps.jwt.SigningFailed |
401 | GenJWT में, HS384 या HS512 एल्गोरिदम के लिए तय की गई सबसे कम साइज़ से कम कुंजी के लिए |
steps.jwt.TokenExpired |
401 | नीति ऐसे टोकन की पुष्टि करने की कोशिश करती है जिसकी समयसीमा खत्म हो चुकी है. |
steps.jwt.TokenNotYetValid |
401 | टोकन अभी तक मान्य नहीं है. |
steps.jwt.UnhandledCriticalHeader |
401 | crit हेडर में, ‘JWT की पुष्टि करें’ नीति से मिले हेडर की जानकारी
KnownHeaders में नहीं दी गई है. |
steps.jwt.UnknownException |
401 | एक अज्ञात अपवाद हुआ. |
steps.jwt.WrongKeyType |
401 | कुंजी का गलत प्रकार बताया गया. उदाहरण के लिए, अगर आपने एलिप्टिक कर्व एल्गोरिदम के लिए आरएसए कुंजी या आरएसए एल्गोरिदम के लिए कोई कर्व कुंजी तय की है. |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
InvalidNameForAdditionalClaim |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में इस्तेमाल किया गया दावा, इनमें से कोई एक रजिस्टर किया गया नाम है, तो डिप्लॉयमेंट नहीं हो पाएगा:
kid, iss, sub, aud, iat,
exp, nbf या jti.
|
build |
InvalidTypeForAdditionalClaim |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim>
में इस्तेमाल किया गया दावा string, number, boolean या map टाइप का नहीं है, तो डिप्लॉयमेंट नहीं हो पाएगा.
|
build |
MissingNameForAdditionalClaim |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में दावे का नाम नहीं बताया गया है, तो डिप्लॉयमेंट की प्रोसेस पूरी नहीं हो पाएगी.
|
build |
InvalidNameForAdditionalHeader |
यह गड़बड़ी तब होती है, जब <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में इस्तेमाल किए गए दावे का नाम alg या typ होता है.
|
build |
InvalidTypeForAdditionalHeader |
अगर <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में इस्तेमाल किए गए दावे का टाइप string, number, boolean या map नहीं है, तो डिप्लॉयमेंट की प्रोसेस रद्द नहीं होगी.
|
build |
InvalidValueOfArrayAttribute |
यह गड़बड़ी तब होती है, जब <AdditionalClaims> एलिमेंट के चाइल्ड एलिमेंट <Claim> में ऐरे एट्रिब्यूट की वैल्यू, true या false पर सेट न की गई हो.
|
build |
InvalidValueForElement |
अगर <Algorithm> एलिमेंट में दी गई वैल्यू, इस्तेमाल की जा सकने वाली वैल्यू नहीं है,
तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
MissingConfigurationElement |
यह गड़बड़ी तब होती है, जब <PrivateKey> एलिमेंट का इस्तेमाल आरएसए फ़ैमिली एल्गोरिदम के साथ न किया गया हो या <SecretKey> एलिमेंट का इस्तेमाल एचएस फ़ैमिली एल्गोरिदम के साथ न किया गया हो.
|
build |
InvalidKeyConfiguration |
अगर <PrivateKey>
या <SecretKey> एलिमेंट में चाइल्ड एलिमेंट <Value> के बारे में नहीं बताया गया है, तो डिप्लॉयमेंट नहीं हो पाएगा.
|
build |
EmptyElementForKeyConfiguration |
अगर <PrivateKey> या <SecretKey> एलिमेंट के चाइल्ड एलिमेंट <Value> का रेफ़रंस एट्रिब्यूट खाली है या इसके बारे में नहीं बताया गया है, तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
InvalidConfigurationForVerify |
यह गड़बड़ी तब होती है, जब <Id> एलिमेंट के बारे में <SecretKey> एलिमेंट में बताया गया हो.
|
build |
InvalidEmptyElement |
यह गड़बड़ी तब दिखती है, जब 'JWT की पुष्टि करें' नीति का <Source> एलिमेंट
खाली होता है. अगर यह मौजूद है, तो इसे Edge फ़्लो वैरिएबल के नाम के साथ तय किया जाना चाहिए.
|
build |
InvalidPublicKeyValue |
अगर <PublicKey> एलिमेंट के चाइल्ड एलिमेंट <JWKS> में इस्तेमाल की गई वैल्यू, आरएफ़सी 7517 में बताए गए मान्य फ़ॉर्मैट का इस्तेमाल नहीं करती है, तो डिप्लॉयमेंट नहीं हो पाएगा.
|
build |
InvalidConfigurationForActionAndAlgorithm |
अगर <PrivateKey> एलिमेंट का इस्तेमाल एचएस फ़ैमिली एल्गोरिदम के साथ किया गया है या
<SecretKey> एलिमेंट का इस्तेमाल आरएसए फ़ैमिली एल्गोरिदम के साथ किया गया है, तो डिप्लॉयमेंट काम नहीं करेगा.
|
build |
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "TokenExpired" |
JWT.failed |
कोई गड़बड़ी होने पर, JWT की सभी नीतियां एक ही वैरिएबल सेट करती हैं. | JWT.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
गड़बड़ी ठीक करने के लिए, सबसे सही तरीका यह है कि गड़बड़ी के errorcode वाले हिस्से को छिपाया जाए
जवाब. faultstring में मौजूद टेक्स्ट पर पूरी तरह भरोसा न करें, क्योंकि इससे बदलाव हो सकता है.
गड़बड़ी के नियम का उदाहरण
<FaultRules>
<FaultRule name="JWT Policy Errors">
<Step>
<Name>JavaScript-1</Name>
<Condition>(fault.name Matches "TokenExpired")</Condition>
</Step>
<Condition>JWT.failed=true</Condition>
</FaultRule>
</FaultRules>
XMLThreatProtection नीति
इस सेक्शन में, गड़बड़ी के कोड और गड़बड़ी के मैसेज के बारे में बताया गया है. साथ ही, इन गड़बड़ियों के वैरिएबल के बारे में भी बताया गया है, जो Edge की मदद से सेट किए जाते हैं. यह जानकारी जानना ज़रूरी है कि क्या आप गड़बड़ियों को ठीक करता है. ज़्यादा जानने के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों और हैंडलिंग के बारे में जानकारी गलतियां.
रनटाइम की गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी कोड | एचटीटीपी कोड स्थिति | वजह | ठीक करें |
|---|---|---|---|
steps.xmlthreatprotection.ExecutionFailed |
500 | XMLImageProtection नीति की वजह से, कई अलग-अलग तरह की जन्मदिन की गड़बड़ियां मिल सकती हैं. इस तरह की ज़्यादातर गड़बड़ियां तब होती हैं, जब नीति में सेट किया गया कोई थ्रेशोल्ड पार हो जाता है. ये इस तरह की गड़बड़ियां हो सकती हैं: एलिमेंट के नाम की लंबाई, बच्चों की संख्या, नोड की गहराई, एट्रिब्यूट की संख्या, एट्रिब्यूट के नाम की लंबाई, और कई अन्य. इस विषय में, पूरी सूची देखी जा सकती है. इस सूची में, XML प्रॉपर्टीके लिए सुरक्षा से जुड़ी नीति के रनटाइम से जुड़ी गड़बड़ी का हल करने के बारे में जानकारी दी गई है. | build |
steps.xmlthreatprotection.InvalidXMLPayload |
500 |
यह गड़बड़ी तब होती है, जब एक्सएमएल खतरे को सुरक्षित रखने की नीति के <Source> एलिमेंट से तय किया गया इनपुट मैसेज पेलोड मान्य एक्सएमएल दस्तावेज़ नहीं है.
|
build |
steps.xmlthreatprotection.SourceUnavailable |
500 |
यह गड़बड़ी तब होती है, जब मैसेज
<Source> एलिमेंट में दिया गया वैरिएबल या तो:
|
build |
steps.xmlthreatprotection.NonMessageVariable |
500 |
यह गड़बड़ी तब होती है, जब <Source> एलिमेंट किसी ऐसे वैरिएबल पर सेट होता है जो
का प्रकार नहीं है
मैसेज.
|
build |
ध्यान दें:
- गड़बड़ी का नाम ज़रूरत के हिसाब से, गड़बड़ी का डिफ़ॉल्ट नाम होता है और इसे दिए गए सभी विकल्पों पर निर्भर नहीं किया जाता किस तरह की गड़बड़ी का पता चला है; हालांकि, इस डिफ़ॉल्ट सेटिंग को संगठन-लेवल की प्रॉपर्टी. जब यह प्रॉपर्टी सेट हो जाती है, तो गड़बड़ी का नाम असली गड़बड़ी. उदाहरण के लिए, "TextExceeded" या "AttrValueExeded" है. इनके लिए इस्तेमाल से जुड़े नोट देखें विवरण.
- डिफ़ॉल्ट रूप से, 500 एचटीटीपी स्टेटस होता है; हालांकि, एचटीटीपी स्टेटस को 400 में बदला जा सकता है संगठन-लेवल की प्रॉपर्टी सेट करके, फ़्लो में गड़बड़ियों का अनुरोध किया जा सकता है. इनके लिए इस्तेमाल से जुड़े नोट देखें विवरण.
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
कोई नहीं.
गड़बड़ी के वैरिएबल
रनटाइम की गड़बड़ी होने पर ये वैरिएबल सेट किए जाते हैं. ज़्यादा जानकारी के लिए, आपके लिए ज़रूरी जानकारी देखें नीति से जुड़ी गड़बड़ियों के बारे में जानकारी.
| वैरिएबल | कहां | उदाहरण |
|---|---|---|
fault.name="fault_name" |
fault_name गड़बड़ी का नाम है, जैसा कि ऊपर रनटाइम में गड़बड़ियां टेबल में बताया गया है. गड़बड़ी का नाम, गड़बड़ी के कोड का आखिरी हिस्सा होता है. | fault.name Matches "SourceUnavailable" |
xmlattack.policy_name.failed |
policy_name, उपयोगकर्ता की ओर से बताया गया उस नीति का नाम है जिसमें गड़बड़ी हुई है. | xmlattack.XPT-SecureRequest.failed = true |
गड़बड़ी के रिस्पॉन्स का उदाहरण
{ "fault": { "faultstring": "XMLThreatProtection[XPT-SecureRequest]: Execution failed. reason: XMLThreatProtection[XTP-SecureRequest]: Exceeded object entry name length at line 2", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
गड़बड़ी के नियम का उदाहरण
<FaultRule name="XML Threat Protection Policy Faults">
<Step>
<Name>AM-CustomErrorResponse</Name>
<Condition>(fault.name Matches "ExecutionFailed") </Condition>
</Step>
<Condition>(xmlattack.XPT-SecureRequest.failed = true) </Condition>
</FaultRule>XMLtoJSON नीति
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
| Fault code | HTTP status | Cause | Fix |
|---|---|---|---|
steps.xmltojson.ExecutionFailed |
500 | This error occurs when the input payload (XML) is empty or the input XML is invalid or malformed. | build |
steps.xmltojson.InCompatibleType |
500 | This error occurs if the type of the variable defined in the <Source> element and the
<OutputVariable> element are not the same. It is mandatory that the type of the variables
contained within the <Source> element and the <OutputVariable> element matches.
|
build |
steps.xmltojson.InvalidSourceType |
500 | This error occurs if the type of the variable used to define the <Source> element is
invalid.The valid types of variable are message and string. |
build |
steps.xmltojson.OutputVariableIsNotAvailable |
500 | This error occurs if the variable specified in the <Source> element of the XML to
JSON policy is of type string and the <OutputVariable> element is not defined.
The <OutputVariable> element is mandatory when the variable defined in the <Source>
element is of type string. |
build |
steps.xmltojson.SourceUnavailable |
500 |
This error occurs if the message
variable specified in the <Source> element of the XML to JSON policy is either:
|
build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
| Error name | Cause | Fix |
|---|---|---|
EitherOptionOrFormat |
If one of the elements <Options> or <Format> is not
declared in the XML to JSON Policy, then the deployment of the API proxy fails.
|
build |
UnknownFormat |
If the <Format> element within the XML to JSON policy has an unknown
format defined, then the deployment of the API proxy fails. Predefined formats include:
xml.com, yahoo, google, and badgerFish.
|
build |
Fault variables
These variables are set when a runtime error occurs. For more information, see What you need to know about policy errors.
| Variables | Where | Example |
|---|---|---|
fault.name="fault_name" |
fault_name is the name of the fault, as listed in the Runtime errors table above. The fault name is the last part of the fault code. | fault.name = "SourceUnavailable" |
xmltojson.policy_name.failed |
policy_name is the user-specified name of the policy that threw the fault. | xmltojson.XMLtoJSON-1.failed = true |
Example error response
{ "fault": { "faultstring": "XMLToJSON[XMLtoJSON-1]: Source xyz is not available", "detail": { "errorcode": "steps.xml2json.SourceUnavailable" } } }
Example fault rule
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="XML to JSON Faults"> <Step> <Name>AM-SourceUnavailableMessage</Name> <Condition>(fault.name Matches "SourceUnavailable") </Condition> </Step> <Step> <Name>AM-BadXML</Name> <Condition>(fault.name = "ExecutionFailed")</Condition> </Step> <Condition>(xmltojson.XMLtoJSON-1.failed = true) </Condition> </FaultRule>
XSLTransform नीति
रनटाइम से जुड़ी गड़बड़ियां
नीति के लागू होने पर ये गड़बड़ियां हो सकती हैं.
| गड़बड़ी का कोड | एचटीटीपी कोड स्थिति | वजह | समाधान |
|---|---|---|---|
steps.xsl.XSLSourceMessageNotAvailable |
500 |
यह गड़बड़ी तब होती है, जब XSL कन्वर्ज़न नीति के <Source> एलिमेंट में दिया गया मैसेज या स्ट्रिंग वैरिएबल, दायरे से बाहर हो (उस खास फ़्लो में उपलब्ध न हो जहां नीति लागू की जा रही है) या उसे ठीक नहीं किया जा सकता (इसके बारे में नहीं बताया गया है).
|
build |
steps.xsl.XSLEvaluationFailed |
500 | यह गड़बड़ी तब होती है, जब इनपुट एक्सएमएल पेलोड उपलब्ध न हो या गलत तरीके से फ़ॉर्मैट किया गया हो या XSLTransform की नीति, इनपुट एक्सएमएल फ़ाइल में बदलाव न कर पाए या XSL फ़ाइल में दिए गए बदलाव के नियमों के आधार पर, इनपुट एक्सएमएल फ़ाइल को नहीं बदल पा रही हो. XSLTransform की नीति के काम न करने की कई वजहें हो सकती हैं. गड़बड़ी के मैसेज में असफल होने की वजह के बारे में ज़्यादा जानकारी दी जाएगी. | build |
डिप्लॉयमेंट से जुड़ी गड़बड़ियां
ये गड़बड़ियां तब हो सकती हैं, जब इस नीति वाले किसी प्रॉक्सी को डिप्लॉय किया जाता है.
| गड़बड़ी का नाम | वजह | समाधान |
|---|---|---|
XSLEmptyResourceUrl |
अगर XSL Transform नीति में <ResourceURL> एलिमेंट खाली है, तो
एपीआई प्रॉक्सी को लागू नहीं किया जा सकेगा. |
build |
XSLInvalidResourceType |
अगर XSL Transform नीति के <ResourceURL> एलिमेंट में बताया गया रिसॉर्स टाइप xsl टाइप का नहीं है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. |
build |