أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
InvalidNameForAdditionalClaim
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid name for additional claim : policy(policy_name) claim(claim_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا كان اسم المطالبة المستخدَمة في العنصر الفرعي <Claim> من العنصر <AdditionalClaims> أحد الأسماء المسجّلة التالية:
"kid" و"iss" و"sub" و"aud" و"iat" و"exp" و"nbf" و"jti"
يتم تحديد المطالبات المسجّلة في RFC7519.
على سبيل المثال، سيؤدي استخدام اسم المطالبة iss ضمن العنصر <AdditionalClaims> إلى حدوث هذا الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم المطالبة من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم المطالبة هوiss:Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).تأكَّد من أنّ اسم المطالبة المستخدَم ضمن العنصر
<AdditionalClaims>في ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه يتطابق مع اسم المطالبة المحدّد في رسالة الخطأ في الخطوة 1. على سبيل المثال، تحدّد السياسة التالية المطالبة بأنّهاiss، وهو ما يتطابق مع ما ورد في رسالة الخطأ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name="iss"/> </AdditionalClaims> </VerifyJWT>إذا كان اسم المطالبة المستخدَم في العنصر الفرعي
<Claim>من العنصر<AdditionalClaims>هو أحد الأسماء المسجّلة التالية:"kid" و"iss" و"sub" و"aud" و"iat" و"exp" و"nbf" و"jti"
عندئذٍ يكون هذا هو سبب الخطأ.
في مثال سياسة Verify JWT الموضّح أعلاه، تم تحديد الاسم
<Claim>على أنّهissضمن العنصر<AdditionalClaims>، ما أدّى إلى ظهور الخطأ التالي:Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
الدقة
لا تستخدِم أيًا من الأسماء المسجّلة "kid" أو "iss" أو "sub" أو "aud" أو "iat" أو "exp" أو "nbf" أو "jti" في العنصر الفرعي <Claim> للعنصر <AdditionalClaims>.
لحلّ المشكلة في مثال سياسة Verify JWT، غيِّر اسم المطالبة إلى status:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</VerifyJWT>
InvalidTypeForAdditionalClaim
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
نوع المطالبة المستخدَمة في العنصر الفرعي <Claim> للعنصر <AdditionalClaims> في سياسة VerifyJWT ليس أحد الأنواع التالية:
string (تلقائي) أو number أو boolean أو map
على سبيل المثال، سيؤدي استخدام نوع المطالبة integer ضمن العنصر <AdditionalClaims> إلى حدوث خطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم المطالبة ونوعها من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، اسم سياسة Verify JWT هو
JWT-Verify-RS256، واسم المطالبة هوclaim، والنوع هوinteger:Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).تأكَّد من أنّ اسم المطالبة والنوع المستخدَمَين ضمن العنصر
<AdditionalClaims>في ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه يتطابقان مع اسم المطالبة والنوع المحدّدَين في رسالة الخطأ في الخطوة 1. على سبيل المثال، تحدّد السياسة التالية المطالبة بأنّهاclaimوالنوع بأنّهinteger، وهو ما يتطابق مع ما ورد في رسالة الخطأ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='integer'/> </AdditionalClaims> </VerifyJWT>إذا لم يكن نوع المطالبة المستخدَم في العنصر الفرعي
<Claim>من العنصر<AdditionalClaims>أحد الأنواع التالية:
string(تلقائي) أوnumberأوbooleanأوmapعندئذٍ يكون هذا هو سبب الخطأ.
في مثال سياسة Verify JWT الموضّح أعلاه، تم تحديد النوع
<Claim>على أنّهintegerضمن العنصر<AdditionalClaims>. بما أنّintegerليس نوعًا متوافقًا، سيظهر لك الخطأ التالي:Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
الدقة
تأكَّد من استخدام أنواع البيانات المتوافقة فقط، وهي string (تلقائي) أو number أو boolean أو map، في العنصر الفرعي <Claim> من العنصر <AdditionalClaims>.
لتصحيح مثال سياسة Verify JWT، غيِّر نوع المطالبة إلى boolean:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</VerifyJWT>
MissingNameForAdditionalClaim
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
مثال على رسالة الخطأ
Error Saving Revision 2
Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا لم يتم تحديد اسم المطالبة في العنصر الفرعي <Claim> للعنصر <AdditionalClaims> أو <AdditionalHeaders>.
التشخيص
حدِّد اسم سياسة Verify JWT من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256:Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claimافحص ملف XML الخاص بسياسة Verify JWT التي تعذّر تنفيذها وتأكَّد من أنّ اسم المطالبة غير متوفّر في العنصر الفرعي
<Claims>ضمن العنصر<AdditionalClaims>أو<AdditionalHeaders>. على سبيل المثال، لا تحدّد سياسة Verify JWT التالية اسم المطالبة ضمن العنصر<AdditionalClaims>:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim ref='reqclaim' type='boolean'/> </AdditionalClaims> </VerifyJWT>بما أنّه لم يتم تحديد الاسم
<Claim>ضمن العنصر<AdditionalClaims>، سيظهر لك الخطأ التالي:Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
الدقة
تأكَّد من أنّ اسم المطالبة محدّد دائمًا في العنصر الفرعي <Claim> من العنصر <AdditionalClaims> أو <AdditionalHeaders>.
لتصحيح مثال سياسة Verify JWT، حدِّد اسم المطالبة كما هو موضّح أدناه:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</VerifyJWT>
InvalidNameForAdditionalHeader
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid name for additional header : policy(policy_name)header(header_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا كان اسم المطالبة المستخدَمة في العنصر الفرعي <Claim> للعنصر <AdditionalHeaders> هو أحد عناوين JWT العادية التالية:
alg أو typ
على سبيل المثال، سيؤدي استخدام اسم المطالبة alg ضمن العنصر <AdditionalHeaders> إلى حدوث الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنوان من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم العنوان هوalg:Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).تأكَّد من أنّ اسم العنوان المستخدَم في العنصر الفرعي
<Claim>ضمن العنصر<AdditionalHeaders>في ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه يطابق اسم العنوان المحدّد في رسالة الخطأ في الخطوة 1. على سبيل المثال، تحدّد السياسة التالية العنوان على أنّهalg، وهو ما يتطابق مع ما ورد في رسالة الخطأ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalHeaders> <Claim name="alg"/> </AdditionalHeaders> </VerifyJWT>إذا كان اسم العنوان المستخدَم في العنصر الفرعي
<Claim>للعنصر<AdditionalClaims>هو أحد عناوين JWT العادية التالية:algأوtypعندئذٍ يكون هذا هو سبب الخطأ.
في مثال سياسة Verify JWT الموضّح أعلاه، تم تحديد الاسم
<Claim>على أنّهalgضمن العنصر<AdditionalClaims>، ما أدّى إلى ظهور الخطأ التالي:Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
الدقة
لا تستخدِم عناوين JWT العادية alg أو typ في العنصر الفرعي <Claim> من العنصر <AdditionalHeaders>.
لتصحيح مثال سياسة Verify JWT، استخدِم الاسم x5c في العنصر الفرعي <Claim> للعنصر <AdditionalHeaders>:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='x5c'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidTypeForAdditionalHeader
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim1) type(integer).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
سيحدث الخطأ إذا لم يكن نوع المطالبة المستخدَمة في العنصر الفرعي <Claim> للعنصر <AdditionalHeaders> في سياسة Verify JWT أحد الأنواع التالية:
string (تلقائي) أو number أو boolean أو map
على سبيل المثال، سيؤدي استخدام نوع المطالبة integer ضمن العنصر <AdditionalHeaders> إلى حدوث الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم المطالبة ونوعها من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256، واسم المطالبة هوclaim، والنوع هوinteger:Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).تأكَّد من أنّ اسم المطالبة والنوع المستخدَمَين ضمن العنصر
<AdditionalClaims>في ملف XML لسياسة Verify JWT الذي تعذّر تنفيذه يتطابقان مع اسم المطالبة والنوع المحدّدَين في رسالة الخطأ في الخطوة 1. على سبيل المثال، تحدّد السياسة التالية المطالبة بأنّهاclaimونوع المطالبة بأنّهinteger,، وهو ما يتطابق مع ما ورد في رسالة الخطأ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalHeaders> <Claim name='claim' ref='reqclaim' type='integer'/> </AdditionalHeaders> </VerifyJWT>إذا لم يكن نوع المطالبة المستخدَم في العنصر الفرعي
<Claim>من العنصر<AdditionalHeaders>أحد الأنواع التالية:
string(تلقائي) أوnumberأوbooleanأوmapعندئذٍ يكون هذا هو سبب الخطأ.
في مثال سياسة التحقّق من رمز JWT الموضّح أعلاه، تم تحديد النوع
<Claim>ضمن العنصر<AdditionalHeaders>على أنّهinteger. بما أنّintegerليس نوعًا متوافقًا، سيظهر لك الخطأ التالي:Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).
الدقة
تأكَّد من استخدام أنواع البيانات المتوافقة فقط، وهي string أو number أو boolean أو map، في العنصر الفرعي <Claim> من العنصر <AdditionalHeaders>.
لتصحيح مثال سياسة Verify JWT، غيِّر نوع المطالبة إلى boolean:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidValueOfArrayAttribute
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid value for array attribute: policy(policy_name)claim(claim_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا لم يتم ضبط قيمة سمة المصفوفة في العنصر الفرعي <Claim> للعنصر <AdditionalClaims> أو العنصر <AdditionalHeaders> على true أو false.
على سبيل المثال، يؤدي ضبط قيمة سمة المصفوفة على yes في العنصر الثانوي <Claim> للعنصر <AdditionalClaims> أو العنصر <AdditionalHeaders> إلى حدوث الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم المطالبة من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم المطالبة هوclaim:Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).تأكَّد من أنّ اسم المطالبة المستخدَم في العنصر الفرعي
<Claim>ضمن العنصر<AdditionalHeaders>في ملف XML لسياسة Verify JWT الذي تعذّر تنفيذه يتطابق مع اسم المطالبة المحدّد في رسالة الخطأ في الخطوة 1. على سبيل المثال، تحدّد السياسة التالية اسم المطالبة على أنّهclaim، وهو ما يتطابق مع ما ورد في رسالة الخطأ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='yes'/> </AdditionalClaims> </VerifyJWT>إذا لم يتم ضبط قيمة السمة
arrayفي العنصر الفرعي<Claim>للعنصر<AdditionalClaims>علىtrueأوfalse، سيكون ذلك هو سبب الخطأ.بما أنّ السمة
arrayفي العنصر الثانوي<Claim>للعنصر<AdditionalClaims>تم ضبطها علىyesفي المثال أعلاه، سيظهر لك الخطأ التالي:Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
الدقة
تأكَّد من ضبط قيمة سمة الصفيف في العنصر الفرعي <Claim> للعنصرَين <AdditionalClaims> أو <AdditionalHeaders> على true أو false.
لتصحيح مثال سياسة Verify JWT الموضّح أعلاه، غيِّر قيمة سمة المصفوفة إلى true:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidValueForElement
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision Invalid Value for element : policy(policy_name) element(element_name).
مثال على رسالة الخطأ
Error Saving Revision
Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا لم تكن القيمة المحدّدة في العنصر <Algorithm> إحدى القيم التالية:
HS256، وHS384، وHS512، وRS256، وRS384، وRS512
على سبيل المثال، يؤدي تحديد قيمة الخوارزمية على أنّها RS128 في العنصر <Algorithm> إلى حدوث هذا الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم العنصر هوAlgorithm:Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتحقّق من القيمة المحدّدة للعنصر
<Algorithm>.في ما يلي نموذج لسياسة Verify JWT:
<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS128</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='status' type='string'>Development</Claim> </AdditionalClaims> </VerifyJWT>افحص القيمة المحدّدة في العنصر
<Algorithm>. إذا لم تكن إحدى القيم التالية:HS256، وHS384، وHS512، وRS256، وRS384، وRS512عندئذٍ يكون هذا هو سبب الخطأ.
في مثال سياسة Verify JWT الموضّح أعلاه، تم تحديد اسم
<Algorithm>على أنّهHS128. بما أنّ هذه الخوارزمية غير متوافقة، سيظهر لك الخطأ التالي:Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
الدقة
تأكَّد من أنّ القيمة المحدّدة في العنصر <Algorithm> هي إحدى القيم المسموح بها:
HS256، وHS384، وHS512، وRS256، وRS384، وRS512
لتصحيح مثال سياسة Verify JWT الموضّح أعلاه والذي يستخدم العنصر <SecretKey>، غيِّر قيمة <Algorithm> إلى HS25. يُرجى العِلم أنّه عند استخدام العنصر <SecretKey>، يمكنك استخدام خوارزميات HS Family فقط.
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</VerifyJWT>
MissingConfigurationElement
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision Missing configuration element : policy(policy_name) element(element_name).
مثال على رسالة الخطأ
Error Saving Revision
Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ عندما لا يتم استخدام العنصر <PublicKey> مع خوارزميات RSA Family في سياسة Verify JWT. وبالمثل، يمكن أن يحدث الخطأ إذا لم يتم استخدام العنصر <SecretKey> مع خوارزميات HS Family في سياسة Verify JWT.
على سبيل المثال، عدم استخدام العنصر <PublicKey> مع خوارزميات RSA Family يؤدي إلى ظهور هذا الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر الناقص من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم العنصر غير المتوفّر هوPublicKey:Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتأكَّد من أنّ العنصر المحدّد في رسالة الخطأ غير متوفّر. إذا لم يكن متوفّرًا، سيكون هذا هو سبب الخطأ.
على سبيل المثال، توضّح السياسة التالية أنّ
PublicKeyغير متوفّر وأنّAlgorithmالمستخدَم هوRS256:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>يستخدم مثال سياسة Verify JWT خوارزميات HS Family، ولكن العنصر الإلزامي
PublicKeyغير متوفّر، ما يؤدي إلى ظهور الخطأ التالي:Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
الدقة
تأكَّد من استخدام العنصر الإلزامي <PublicKey> مع خوارزميات RSA Family واستخدام العنصر الإلزامي <SecretKey> مع خوارزميات HS Family.
لتصحيح مثال سياسة Verify JWT الموضّحة أعلاه، والتي تستخدم خوارزمية RS256، أضِف العنصر <PublicKey> إلى سياسة VerifyJWT:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Algorithm>RS256</Algorithm>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidKeyConfiguration
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid Key configuration : policy(JWT-Verify-RS256).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا لم يتم تحديد العنصر الثانوي <Value> أو العنصر الثانوي الإلزامي <JWKS> في العنصرَين <PublicKey> أو <SecretKey> من سياسة Verify JWT.
التشخيص
حدِّد اسم سياسة Verify JWT من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256:Invalid Key configuration : policy(JWT-Verify-RS256).افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتأكَّد مما إذا كان العنصر الفرعي
<Value>أو العنصر الفرعي<JWKS>غير محدّد في العنصرَين<PublicKey>أو<SecretKey>. إذا لم يتم تحديد العنصر الفرعي، سيكون ذلك هو سبب الخطأ.على سبيل المثال، توضّح السياسة التالية أنّ العنصر الفرعي
<Value>أو<JWKS>غير محدّد في العنصر<PublicKey>:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <PublicKey> </PublicKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>بما أنّ العنصر الفرعي
<Value>أو<JWKS>غير محدّد في العنصر<PublicKey>من سياسة Verify JWT، يظهر لك الخطأ التالي:Invalid Key configuration : policy(JWT-Verify-RS256).
الدقة
تأكَّد من تحديد العنصر الفرعي <Value> أو <JWKS> دائمًا في العنصر <PublicKey> من سياسة Verify JWT.
لتصحيح مثال سياسة Verify JWT، حدِّد العنصر الفرعي <Value> أو <JWKS> ضمن العنصر <PublicKey> كما هو موضّح أدناه:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</PublicJWT>
EmptyElementForKeyConfiguration
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Empty Element for Key Configuration : policy(policy_name) element(element_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا لم يتم تحديد السمة ref في العنصر الفرعي <Value> أو <JWKS> للعنصر <PublicKey> أو إذا كانت فارغة.
على سبيل المثال، إذا كان العنصر الفرعي <Value> الخاص بالعنصر <PublicKey> فارغًا، سيحدث الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر الذي يكون فارغًا من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم العنصر هوPublicKey/Value:Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتأكَّد من أنّ العنصر المحدّد في الخطوة 1 فارغ. إذا كان فارغًا، يكون هذا هو سبب الخطأ.
على سبيل المثال، توضّح السياسة التالية أنّ العنصر الفرعي
<Value>للعنصر<PublicKey>فارغ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <PublicKey> <Value/> </PublicKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>بما أنّ العنصر الفرعي
<Value>للعنصر<PublicKey>في سياسة Verify JWT فارغ، سيظهر لك الخطأ التالي:Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
الدقة
تأكَّد من تحديد السمة ref في العنصر الفرعي <Value> أو <JWKS> للعنصر <PublicKey> دائمًا.
لتصحيح مثال سياسة Verify JWT، استخدِم متغيّر المسار public.publickey في العنصر الفرعي <Value> للعنصر <PublicKey>:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidConfigurationForVerify
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid configuration element for verify : policy(policy_name) element(element_name).
مثال على رسالة الخطأ
Error Saving Revision 3
Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا تم تحديد العنصر <Id> ضمن العنصر <SecretKey> في سياسة VerifyJWT.
على سبيل المثال، إذا تم تحديد العنصر <Id> في العنصر <SecretKey>، سيحدث هذا الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر غير الصالح من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم العنصر هوSecretKey/Id:Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتأكَّد من تحديد العنصر غير الصالح الذي تم تحديده في الخطوة 1. إذا تم تحديدها، سيكون هذا هو سبب الخطأ.
على سبيل المثال، توضّح السياسة التالية أنّه تم تحديد العنصر الفرعي
<Id>للعنصر<SecretKey>:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value ref="private.secretkey"/> <Id/> </SecretKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>بما أنّ العنصر
<Id>معرَّف ضمن العنصر<SecretKey>في سياسة Verify JWT، يظهر لك الخطأ التالي:Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)
الدقة
تأكَّد من عدم تحديد العنصر <Id> مطلقًا ضمن العنصر <SecretKey> في سياسة Verify JWT.
لتصحيح مثال سياسة التحقّق من صحة JWT، أزِل العنصر الفرعي <Id> من العنصر <SecretKey>:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref='private.secretkey'/>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidEmptyElement
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving RevisionInvalid empty element : policy(policy_name) element(element_name).
مثال على رسالة الخطأ
Error Saving Revision 3
Invalid empty element : policy(JWT-Verify-HS256) element(Source).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا كان العنصر <Source> في سياسة Verify JWT فارغًا. في حال توفّره، يجب تحديده باستخدام اسم متغيّر لمسار Edge.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر الفارغ من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-RS256واسم العنصر هوPublicKey/Value:Invalid empty element : policy(JWT-Verify-HS256) element(Source).افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتأكَّد من أنّ العنصر المحدّد في الخطوة 1 فارغ. إذا كان فارغًا، يكون هذا هو سبب الخطأ.
على سبيل المثال، توضّح السياسة التالية أنّ العنصر
<Source>فارغ:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <Source></Source> <PublicKey> <Value ref="public.publickey"/> </PublicKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>بما أنّ العنصر
<Source>في سياسة Verify JWT فارغ، سيظهر لك الخطأ التالي:Invalid empty element : policy(JWT-Verify-HS256) element(Source).
الدقة
في حال توفّر العنصر <Source> في سياسة Verify JWT، تأكَّد من أنّه يحدّد متغيّر تدفق.
لتصحيح مثال سياسة Verify JWT، استخدِم متغيّر تدفّق صالحًا في العنصر <Source>:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Source>jwt-variable</Source>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidPublicKeyValue
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision revision_number Invalid Public Key Value in Configuration : policy(policy_name) element(element_name).
مثال على رسالة الخطأ
Error Saving Revision 2
Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا كانت القيمة المستخدَمة في العنصر الفرعي <JWKS> من العنصر <PublicKey> ليست بتنسيق صالح كما هو محدّد في RFC 7517.
على سبيل المثال، سيؤدي استخدام abc كقيمة للعنصر الفرعي <JWKS> ضمن العنصر <PublicKey> إلى حدوث هذا الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر الذي يحتوي على قيمة غير صالحة من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، اسم سياسة Verify JWT هو
JWT-Verify-RS256والعنصر هوPublicKey/JWKS:Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).افحص ملف XML الخاص بسياسة Verify JWT الذي تعذّر تنفيذه وتأكَّد من أنّ العنصر المحدّد في الخطوة 1 يحتوي على قيمة بتنسيق صالح وفقًا للمعيار RFC 7517. إذا لم تكن قيمة العنصر بالتنسيق الصحيح، سيكون ذلك هو سبب الخطأ.
<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <PublicKey> <JWKS>abc<JWKS> </PublicKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> </VerifyJWT>بما أنّ القيمة في العنصر الثانوي
<JWKS>للعنصر<PublicKey>ليست بتنسيق صالح وفقًا للمعيار RFC 7517، سيظهر لك الخطأ التالي:Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
الدقة
تأكَّد من أنّ القيمة المحدّدة في العنصر الفرعي <JWKS> للعنصر <PublicKey> هي سلسلة أو متغيّر تدفق صالح بتنسيق JWKS صالح (RFC 7517).
لتصحيح مثال سياسة Verify JWT، غيِّر قيمة <JWKS> كما هو موضّح أدناه:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<PublicKey>
<JWKS>eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySWQiOiJiMDhmODZhZi0zNWRhLTQ4ZjItOGZhYi1jZWYzOTA0NjYwYmQifQ.-xN_h82PHVTCMA9vdoHrcZxH-x5mb11y1537t3rGzcM</JWKS>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
</VerifyJWT>
InvalidConfigurationForActionAndAlgorithm
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:
Error Saving Revision <var>revision_number</var>
Invalid configuration element for this action and algorithm Family: policy(<var>policy_name</var>) element(<var>element_name</var>) action(<var>action_name</var>) family(<var>family_name</var>).
مثال على رسالة الخطأ
Error Saving Revision
Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
مثال على لقطة شاشة
في واجهة مستخدم Edge، سيظهر لك مربّع حوار يتضمّن رسالة خطأ:

السبب
يحدث هذا الخطأ إذا تم استخدام العنصر <PublicKey> مع خوارزميات عائلة HS وتم استخدام العنصر <SecretKey> مع خوارزميات عائلة RSA. سيحدث الخطأ أيضًا إذا كان أيّ من هذين الشرطين صحيحًا.
على سبيل المثال، يؤدي استخدام العنصر <PublicKey> مع خوارزميات HS Family إلى ظهور هذا الخطأ.
التشخيص
حدِّد اسم سياسة Verify JWT واسم العنصر واسم مجموعة الخوارزميات من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، يكون اسم سياسة Verify JWT هو
JWT-Verify-HS256، واسم العنصر هوPublicKey، ومجموعة الخوارزميات هيRSA:Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).تأكَّد من أنّ العنصر ومجموعة الخوارزميات المستخدَمة في ملف XML لسياسة Verify JWT الذي تعذّر تنفيذه يتطابقان مع العنصر ومجموعة الخوارزميات المحدّدة في رسالة الخطأ في الخطوة 1. على سبيل المثال، تحدّد السياسة التالية العنصر على أنّه
PublicKeyومجموعة الخوارزميات على أنّهاHMAC، وهو ما يتطابق مع ما ورد في رسالة الخطأ.<VerifyJWT name="JWT-Verify-HS256"> <DisplayName>JWT Verify HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <Source>request.formparam.jwt</Source> <PublicKey> <Value ref="var-value"/> </PublicKey> <SecretKey> <Value ref="private.secretkey"/> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> </VerifyJWT>إذا كانت قيمة العنصر
<Algorithm>هيHS256، ولكنّك استخدمت<PublicKey>، يكون ذلك هو سبب الخطأ.في مثال سياسة التحقّق من صحة JWT الموضّح أعلاه، يتم استخدام العنصر
<PublicKey>على الرغم من ضبط<Algorithm>على خوارزمية HS256 من عائلة الخوارزميات، ما يؤدي إلى ظهور الخطأ التالي:Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
الدقة
تأكَّد من استخدام العنصر <PublicKey> مع خوارزميات "الإعلانات المتجاوبة على شبكة البحث" المناسبة للعائلة فقط، واستخدام العنصر <SecretKey> مع خوارزميات "الإعلانات الصورية" المناسبة للعائلة فقط.
لتصحيح مثال سياسة Verify JWT، استخدِم <SecretKey> من سياسة VerifyJWT التي تستخدم خوارزمية HS256:
<VerifyJWT name="JWT-Verify-HS256">
<DisplayName>JWT Verify HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Source>request.formparam.jwt</Source>
<SecretKey>
<Value ref="private.secretkey"/>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
</VerifyJWT>