คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่
เอกสารประกอบเกี่ยวกับ Apigee X. ข้อมูล
InvalidNameForAdditionalClaim
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Invalid name for additional claim : policy(policy_name) claim(claim_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อของการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
เป็นชื่อที่จดทะเบียนชื่อใดชื่อหนึ่งต่อไปนี้
"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
การอ้างสิทธิ์ที่ลงทะเบียนแล้วจะระบุไว้ใน RFC7519
ตัวอย่างเช่น การใช้ชื่อการอ้างสิทธิ์ iss
ใต้องค์ประกอบ <AdditionalClaims>
จะทำให้เกิดข้อผิดพลาดนี้
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อการอ้างสิทธิ์จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อการอ้างสิทธิ์คือiss
Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
ตรวจสอบว่าชื่อการอ้างสิทธิ์ที่ใช้ภายใต้องค์ประกอบ
<AdditionalClaims>
ใน XML ของนโยบาย Generate JWT ที่ล้มเหลวตรงกับชื่อการอ้างสิทธิ์ที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุการอ้างสิทธิ์เป็นiss
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
หากชื่อการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย
<Claim>
ขององค์ประกอบ<AdditionalClaims>
เป็นชื่อที่จดทะเบียนดังต่อไปนี้"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
นั่นคือสาเหตุของข้อผิดพลาด
ในตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ชื่อ
<Claim>
ได้รับการระบุเป็นiss
ในองค์ประกอบ<AdditionalClaims>
ซึ่งทำให้เกิดข้อผิดพลาด:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
ความละเอียด
อย่าใช้ชื่อที่จดทะเบียน "kid", "iss", "sub", "aud", "iat", "exp", "nbf" หรือ "jti" ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
หากต้องการแก้ไขตัวอย่างนโยบาย สร้าง JWT ที่แสดงด้านบน ให้เปลี่ยนชื่อการอ้างสิทธิ์เป็น status
ดังนี้
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidTypeForAdditionalClaim
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 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-Generate-HS256) claim(claim) type(integer).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากประเภทการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
ของนโยบาย GenerateJWT ไม่ใช่ประเภทใดประเภทหนึ่งต่อไปนี้
string
(ค่าเริ่มต้น), number
, boolean
หรือ map
เช่น การใช้การอ้างสิทธิ์ประเภท integer
ใต้องค์ประกอบ <AdditionalClaims>
จะทำให้เกิดข้อผิดพลาด
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT ชื่อการอ้างสิทธิ์ และประเภทการอ้างสิทธิ์จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
ชื่อการอ้างสิทธิ์คือclaim
และประเภทการอ้างสิทธิ์คือinteger
Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
ตรวจสอบว่าชื่อการอ้างสิทธิ์และประเภทที่ใช้ภายใต้องค์ประกอบ
<AdditionalClaims>
ใน XML ของนโยบาย Generate JWT ที่ล้มเหลวตรงกับชื่อและประเภทการอ้างสิทธิ์ที่ระบุในข้อความแสดงข้อผิดพลาดในขั้นตอนที่ 1 ตัวอย่างเช่น นโยบายต่อไปนี้ระบุการอ้างสิทธิ์เป็นclaim
และประเภทเป็นinteger
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
หากประเภทการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย
<Claim>
ขององค์ประกอบ<AdditionalClaims>
ไม่ใช่ประเภทต่อไปนี้string
(ค่าเริ่มต้น),number
,boolean
หรือmap
นั่นคือสาเหตุของข้อผิดพลาด
ในตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ประเภท
<Claim>
ภายใต้องค์ประกอบ<AdditionalClaims>
ได้รับการระบุเป็นinteger
เนื่องจากinteger
ไม่ใช่ประเภทที่รองรับ คุณจึงได้รับข้อผิดพลาด:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
ความละเอียด
ตรวจสอบว่าใช้เฉพาะประเภทข้อมูลที่รองรับ เช่น string
, number
, boolean
หรือ map
ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
หากต้องการแก้ไขตัวอย่างนโยบาย "สร้าง JWT" ที่แสดงด้านบน ให้เปลี่ยนประเภทการอ้างสิทธิ์เป็น boolean
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
MissingNameForAdditionalClaim
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 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-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากไม่ระบุชื่อการอ้างสิทธิ์ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
หรือ <AdditionalHeaders>
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและยืนยันว่าชื่อการอ้างสิทธิ์หายไปในองค์ประกอบย่อย
<Claims>
ภายใต้องค์ประกอบ<AdditionalClaims>
หรือ<AdditionalHeaders>
ตัวอย่างเช่น นโยบาย Generate JWT ต่อไปนี้ไม่ได้ระบุชื่อการอ้างสิทธิ์ภายใต้<AdditionalClaims>
องค์ประกอบ:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
เนื่องจากไม่ได้ระบุชื่อ
<Claim>
ในองค์ประกอบ<AdditionalClaims>
คุณจึงได้รับข้อผิดพลาดError occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
ความละเอียด
ตรวจสอบว่าได้ระบุชื่อการอ้างสิทธิ์ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
หรือ <AdditionalHeaders>
เสมอ
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้ระบุชื่อการอ้างสิทธิ์ตามที่แสดงด้านล่าง:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidNameForAdditionalHeader
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Invalid name for additional header : policy(policy_name)header(header_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalHeaders>
เป็นส่วนหัว JWT มาตรฐานรายการใดรายการหนึ่งต่อไปนี้
alg
หรือ typ
ตัวอย่างเช่น การใช้ชื่อการอ้างสิทธิ์ alg
ใต้องค์ประกอบ <AdditionalHeaders>
จะทำให้เกิดข้อผิดพลาด
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อส่วนหัวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อส่วนหัวคือalg
:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
ตรวจสอบว่าชื่อส่วนหัวที่ใช้ในองค์ประกอบย่อย
<Claim>
ภายใต้องค์ประกอบ<AdditionalHeaders>
ใน XML ของนโยบายการสร้าง JWT ที่ล้มเหลวตรงกับชื่อส่วนหัวที่ระบุไว้ในข้อความแสดงข้อผิดพลาดในขั้นตอนที่ 1 ตัวอย่างเช่น นโยบายต่อไปนี้ระบุส่วนหัวเป็นalg
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
หากชื่อส่วนหัวที่ใช้ในองค์ประกอบย่อย
<Claim>
ขององค์ประกอบ<AdditionalClaims>
เป็นหนึ่งในส่วนหัว JWT มาตรฐานต่อไปนี้alg
หรือtyp
นั่นคือสาเหตุของข้อผิดพลาด
ในตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ชื่อ
<Claim>
ได้รับการระบุเป็นalg
ในองค์ประกอบ<AdditionalClaims>
ซึ่งทำให้เกิดข้อผิดพลาด:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
ความละเอียด
อย่าใช้ส่วนหัว JWT มาตรฐาน alg
หรือ typ
ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalHeaders>
หากต้องการแก้ไขตัวอย่างนโยบาย "สร้าง JWT ที่แสดงด้านบน" ให้ใช้ชื่อ x5c
ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalHeaders>
ดังนี้
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidTypeForAdditionalHeader
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 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-Generate-HS256) claim(claim1) type(integer).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดจะเกิดขึ้นหากประเภทการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalHeaders>
ของนโยบาย GenerateJWT ไม่ใช่ประเภทใดประเภทหนึ่งต่อไปนี้
string
(ค่าเริ่มต้น), number
, boolean
หรือ map
ตัวอย่างเช่น การใช้การอ้างสิทธิ์ประเภท integer
ใต้องค์ประกอบ <AdditionalHeaders>
จะทำให้เกิดข้อผิดพลาด
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT ชื่อการอ้างสิทธิ์ และประเภทการอ้างสิทธิ์จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
ชื่อการอ้างสิทธิ์คือclaim,
และประเภทการอ้างสิทธิ์คือinteger:
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
ตรวจสอบว่าชื่อการอ้างสิทธิ์และประเภทการอ้างสิทธิ์ที่ใช้ภายใต้องค์ประกอบ
<AdditionalClaims>
ใน XML ของนโยบาย Generate JWT ที่ล้มเหลวตรงกับชื่อและประเภทการอ้างสิทธิ์ที่ระบุในข้อความแสดงข้อผิดพลาดในขั้นตอนที่ 1 ตัวอย่างเช่น นโยบายต่อไปนี้ระบุการอ้างสิทธิ์เป็นclaim
และประเภทการอ้างสิทธิ์เป็นinteger
ซึ่งจะตรงกับสิ่งที่อยู่ในข้อความแสดงข้อผิดพลาด<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
หากประเภทการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย
<Claim>
ขององค์ประกอบ<AdditionalHeaders>
ไม่ใช่ประเภทต่อไปนี้string
(ค่าเริ่มต้น),number
,boolean
หรือmap
นั่นคือสาเหตุของข้อผิดพลาด
ในตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ประเภท
<Claim>
ภายใต้องค์ประกอบ<AdditionalHeaders>
ได้รับการระบุเป็นinteger
เนื่องจากinteger
ไม่ใช่ประเภทที่รองรับ คุณจึงได้รับข้อผิดพลาด:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
ความละเอียด
ตรวจสอบว่าใช้เฉพาะประเภทข้อมูลที่รองรับ string
, number
, boolean
หรือ map
ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalHeaders>
หากต้องการแก้ไขตัวอย่างนโยบาย สร้าง JWT ที่แสดงด้านบน ให้เปลี่ยนประเภทการอ้างสิทธิ์เป็น boolean
ดังนี้
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidValueOfArrayAttribute
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Invalid value for array attribute: policy(policy_name)claim(claim_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากค่าของแอตทริบิวต์อาร์เรย์ในองค์ประกอบย่อย <Claim>
ขององค์ประกอบ <AdditionalClaims>
หรือ <AdditionalHeaders>
ไม่ได้ตั้งค่าเป็น true
หรือ false
ตัวอย่างเช่น การตั้งค่าของแอตทริบิวต์อาร์เรย์เป็น yes
ในองค์ประกอบย่อย <Claim>
ของ <AdditionalClaims>
หรือ <AdditionalHeaders>
ทำให้เกิดข้อผิดพลาด
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อการอ้างสิทธิ์จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อการอ้างสิทธิ์คือclaim:
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
ตรวจสอบว่าชื่อการอ้างสิทธิ์ที่ใช้ในองค์ประกอบย่อย
<Claim>
ภายใต้องค์ประกอบ<AdditionalHeaders>
ใน XML นโยบายการสร้าง JWT ที่ล้มเหลวตรงกับชื่อการอ้างสิทธิ์ที่ระบุในข้อความแสดงข้อผิดพลาดในขั้นตอนที่ 1 ตัวอย่างเช่น นโยบายต่อไปนี้ระบุชื่อการอ้างสิทธิ์เป็นclaim
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
หากค่าของแอตทริบิวต์
array
ในองค์ประกอบย่อย<Claim>
ขององค์ประกอบ<AdditionalClaims>
ไม่ได้ตั้งค่าเป็นtrue
หรือfalse
ข้อผิดพลาดดังกล่าวอาจเป็นสาเหตุของข้อผิดพลาดเนื่องจากแอตทริบิวต์
array
ในองค์ประกอบย่อย<Claim>
ขององค์ประกอบ<AdditionalClaims>
ได้รับการตั้งค่าเป็นyes
ในตัวอย่างด้านบน คุณจึงได้รับข้อผิดพลาดInvalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
ความละเอียด
ตรวจสอบว่าค่าของแอตทริบิวต์อาร์เรย์ในองค์ประกอบย่อย <Claim>
ของ <AdditionalClaims>
หรือ <AdditionalHeaders>
ตั้งไว้เป็น true
หรือ false
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้เปลี่ยนค่าของแอตทริบิวต์อาร์เรย์เป็น true
:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidConfigurationForActionAndAlgorithm
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2
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 2 Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากใช้องค์ประกอบ <PrivateKey>
กับอัลกอริทึมของ HS Family และใช้องค์ประกอบ <SecretKey>
กับอัลกอริทึม Family ของ RSA ข้อผิดพลาดยังจะเกิดขึ้นหากเงื่อนไขใดๆ เป็นจริง
ตัวอย่างเช่น การใช้องค์ประกอบ <PrivateKey>
กับอัลกอริทึม HS Family จะทำให้เกิดข้อผิดพลาดนี้
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT ชื่อองค์ประกอบ และชื่อตระกูลของอัลกอริทึมจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
ชื่อองค์ประกอบคือPrivateKey
และกลุ่มอัลกอริทึมคือHMAC
Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
ตรวจสอบว่าองค์ประกอบและกลุ่มอัลกอริทึมที่ใช้ใน XML นโยบายการสร้าง JWT ที่ล้มเหลวตรงกับองค์ประกอบและกลุ่มอัลกอริทึมที่ระบุไว้ในข้อความแสดงข้อผิดพลาดในขั้นตอนที่ 1 ตัวอย่างเช่น นโยบายต่อไปนี้ระบุองค์ประกอบเป็น
PrivateKey
และกลุ่มอัลกอริทึมเป็นHMAC
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <PrivateKey> <Password ref="private.privatekey-password"/> </PrivateKey> <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=tuu =/> </AdditionalClaims> </GenerateJWT>
หากค่าขององค์ประกอบ
<Algorithm>
คือHS256
แต่คุณใช้<PrivateKey>
นั่นก็คือสาเหตุของข้อผิดพลาดในตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน มีการใช้
<PrivateKey>
แม้ว่า<PrivateKey>
จะตั้งค่าเป็นHS256
เป็นอัลกอริทึมของครอบครัว ซึ่งทำให้เกิดข้อผิดพลาด:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
ความละเอียด
ตรวจสอบว่าใช้องค์ประกอบ <PrivateKey>
กับอัลกอริทึม RSA Family เท่านั้น และใช้องค์ประกอบ <SecretKey>
กับอัลกอริทึม HS Family เท่านั้น
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้ใช้ <SecretKey>
จากนโยบาย GenerateJWT ที่ใช้อัลกอริทึม HS256
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidValueForElement
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Invalid Value for element : policy(policy_name) element(element_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากค่าที่ระบุในองค์ประกอบ <Algorithm>
ไม่ใช่ค่าใดค่าหนึ่งต่อไปนี้
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
ตัวอย่างเช่น การระบุค่าอัลกอริทึมเป็น RS128
ในองค์ประกอบ <Algorithm>
จะทำให้เกิดข้อผิดพลาดนี้
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อองค์ประกอบจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อองค์ประกอบคือAlgorithm.
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและตรวจสอบค่าที่ระบุสำหรับองค์ประกอบ
<Algorithm>
ตัวอย่างนโยบาย Generate JWT มีดังนี้
<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS128</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> </GenerateJWT>
ตรวจสอบค่าที่ระบุในองค์ประกอบ
<Algorithm>
หากไม่ใช่ค่าใดค่าหนึ่งต่อไปนี้HS256
,HS384
,HS512
,RS256
,RS384
,RS512
นั่นคือสาเหตุของข้อผิดพลาด
ในตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ชื่อ
<Algorithm>
มีการระบุเป็นHS128
คุณได้รับข้อผิดพลาดต่อไปนี้เนื่องจากอัลกอริทึมนี้ไม่รองรับInvalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
ความละเอียด
ตรวจสอบว่าค่าที่ระบุในองค์ประกอบ <Algorithm>
เป็นค่าที่รองรับค่าใดค่าหนึ่ง
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ซึ่งใช้องค์ประกอบ <SecretKey>
ให้เปลี่ยนค่าของ <Algorithm>
เป็น HS25
โปรดทราบว่าเมื่อใช้องค์ประกอบ <SecretKey>
คุณจะใช้ได้เฉพาะอัลกอริทึมของ HS Family เท่านั้น
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
MissingConfigurationElement
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Missing configuration element : policy(policy_name) element(element_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นเมื่อไม่ได้ใช้องค์ประกอบ <PrivateKey>
กับอัลกอริทึมครอบครัว RSA ในนโยบาย Generate JWT ในทํานองเดียวกัน ข้อผิดพลาดอาจเกิดขึ้นหากไม่ได้ใช้องค์ประกอบ <SecretKey>
กับอัลกอริทึม HS Family ในนโยบาย Generate JWT
ตัวอย่างเช่น การไม่ใช้องค์ประกอบ <PrivateKey>
กับอัลกอริทึมของ RSA Family จะทำให้เกิดข้อผิดพลาดนี้
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อองค์ประกอบที่ขาดหายไปจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อองค์ประกอบที่ขาดหายไปคือSecretKey
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและตรวจสอบว่าองค์ประกอบที่ระบุไว้ในข้อความแสดงข้อผิดพลาดขาดหายไป หากไม่มี ข้อผิดพลาดดังกล่าวคือสาเหตุของข้อผิดพลาด
ตัวอย่างเช่น ในนโยบายต่อไปนี้ ไม่มี
SecretKey
และAlgorithm
ที่ใช้คือHS256
<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</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> </GenerateJWT>
ตัวอย่างนโยบาย Generate JWT ใช้อัลกอริทึม HS Family แต่ไม่มีองค์ประกอบ
SecretKey
ที่จำเป็น ซึ่งทำให้เกิดข้อผิดพลาด:Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
ความละเอียด
ตรวจสอบว่าใช้องค์ประกอบ <PrivateKey>
ที่จำเป็นกับอัลกอริทึม RSA Family และใช้องค์ประกอบ <SecretKey>
ที่จำเป็นกับอัลกอริทึม HS Family
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ซึ่งใช้อัลกอริทึม HS256
ให้เพิ่มองค์ประกอบ <SecretKey>
ลงในนโยบาย Generate JWT ดังนี้
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidKeyConfiguration
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving RevisionInvalid Key configuration : policy(policy_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากไม่ได้กำหนดองค์ประกอบย่อย <Value>
ที่จำเป็นในองค์ประกอบ <PrivateKey>
หรือ <SecretKey>
ในนโยบาย Generate JWT
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
Invalid Key configuration : policy(JWT-Generate-HS256).
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและยืนยันว่าไม่ได้กำหนดองค์ประกอบย่อย
<Value>
ในองค์ประกอบ<PrivateKey>
หรือ<SecretKey>
หรือไม่ หากไม่ได้กำหนด<Value>
ไว้ นี่คือสาเหตุของข้อผิดพลาดเช่น ในนโยบายต่อไปนี้ องค์ประกอบย่อย
<Value>
จะไม่ได้รับการกำหนดในองค์ประกอบ<SecretKey>
<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> </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> </GenerateJWT>
เนื่องจากไม่ได้กำหนดองค์ประกอบย่อย
<Value>
ในองค์ประกอบ<SecretKey>
ของนโยบาย Generate JWT คุณจึงได้รับข้อผิดพลาดInvalid Key configuration : policy(JWT-Generate-HS256).
ความละเอียด
ตรวจสอบว่ามีการกำหนดองค์ประกอบย่อย <Value>
ในองค์ประกอบ <PrivateKey>
หรือ <SecretKey>
ของนโยบาย Generate JWT เสมอ
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้กำหนดองค์ประกอบย่อย <Value>
ภายใต้องค์ประกอบ <SecretKey>
ดังที่แสดงด้านล่าง
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
EmptyElementForKeyConfiguration
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Empty Element for Key Configuration : policy(policy_name) element(element_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากไม่ได้ระบุแอตทริบิวต์ ref ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <PrivateKey>
หรือ <SecretKey>
ไม่ได้
ตัวอย่างเช่น หากองค์ประกอบย่อย <Value>
ขององค์ประกอบ <SecretKey>
ว่างเปล่า จะเกิดข้อผิดพลาดขึ้น
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อองค์ประกอบที่ว่างเปล่าจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อองค์ประกอบที่ว่างเปล่าคือSecretKey/Value
Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและตรวจสอบว่าองค์ประกอบที่ระบุในขั้นตอนที่ 1 ว่างเปล่าหรือไม่ หากแคมเปญว่างเปล่า แสดงว่านี่คือสาเหตุของข้อผิดพลาด
ตัวอย่างเช่น นโยบายต่อไปนี้แสดงให้เห็นว่าองค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
ว่างเปล่า<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value/> <Id>1918290</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> </GenerateJWT>
เนื่องจากองค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
ในนโยบาย Generate JWT ว่างเปล่า คุณจึงได้รับข้อผิดพลาด:Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
ความละเอียด
ตรวจสอบว่าแอตทริบิวต์ ref ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <PrivateKey>
หรือ <SecretKey>
ได้รับการระบุเสมอและมีคำนำหน้า "private.
"
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้ใช้ตัวแปรโฟลว์ private.privatekey
ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <SecretKey>
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidVariableNameForSecret
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Invalid variable name for secret : policy(policy_name) element(element_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อตัวแปรโฟลว์ที่ระบุในแอตทริบิวต์ ref ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <PrivateKey>
หรือ <SecretKey>
ไม่มีคำนำหน้าส่วนตัว (private.
)
For example :
หากระบุชื่อตัวแปรโฟลว์เป็น mykey
ในแอตทริบิวต์ ref ขององค์ประกอบย่อย <Value>
ขององค์ประกอบ <PrivateKey>
ระบบจะแสดงข้อผิดพลาดนี้
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อองค์ประกอบที่มีชื่อตัวแปรที่ไม่ถูกต้องจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อองค์ประกอบคือSecretKey/Value
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
ตรวจสอบ XML นโยบาย Generate JWT ที่ล้มเหลวและยืนยันชื่อตัวแปรที่ใช้ในองค์ประกอบที่ระบุในขั้นตอนที่ 1 หากชื่อตัวแปรไม่มีคํานําหน้า
private.
แสดงว่านี่เป็นสาเหตุของข้อผิดพลาดตัวอย่างเช่น นโยบายต่อไปนี้แสดงให้เห็นว่าองค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
มีชื่อตัวแปรที่ไม่ถูกต้องmykey
<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value ref="mykey"/> <Id>1918290</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> </GenerateJWT>
เนื่องจากชื่อตัวแปรที่ระบุในองค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
ของนโยบาย Generate JWT ไม่มีคำนำหน้าprivate.
คุณจึงได้รับข้อผิดพลาดInvalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
ความละเอียด
ตรวจสอบว่าแอตทริบิวต์ ref ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <PrivateKey>
หรือ <SecretKey>
ได้รับการระบุเสมอและมีคำนำหน้า private.
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้ใช้ตัวแปรโฟลว์ private.privatekey
ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <SecretKey>
ดังนี้
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</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>
</GenerateJWT>
InvalidSecretInConfig
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Specifying a secret in the configuration is invalid : policy(policy_name) element(element_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากมีการระบุค่า (ลับ) อย่างชัดเจนใน
- องค์ประกอบย่อย
<Value>
หรือ<Password>
ขององค์ประกอบ<PrivateKey>
หรือ - องค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
ในนโยบาย Generate JWT
ตัวอย่างเช่น หากระบุข้อมูลลับอย่างชัดเจนเป็น abc
ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <SecretKey>
ข้อผิดพลาดนี้จะเกิดขึ้น
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อองค์ประกอบที่ระบุข้อมูลลับอย่างชัดเจนจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อองค์ประกอบคือSecretKey/Value
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและตรวจสอบว่าได้ระบุข้อมูลลับไว้อย่างชัดแจ้งในองค์ประกอบที่ระบุไว้ในขั้นตอนที่ 1 หรือไม่ หากมีการระบุอย่างชัดแจ้ง นั่นก็คือสาเหตุของข้อผิดพลาด
ตัวอย่างเช่น นโยบายต่อไปนี้แสดงให้เห็นว่ามีการระบุข้อมูลลับอย่างชัดเจนในองค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value>abc</Value> <Id>1918290</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> </GenerateJWT>
เนื่องจากมีการระบุข้อมูลลับอย่างชัดเจนในองค์ประกอบย่อย
<Value>
ขององค์ประกอบ<SecretKey>
ของนโยบาย Generate JWT คุณจึงได้รับข้อผิดพลาดSpecifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
ความละเอียด
ตรวจสอบว่าระบุค่าเป็นตัวแปรโฟลว์ในองค์ประกอบย่อย <Value>
ขององค์ประกอบ <PrivateKey>
หรือ <SecretKey>
เสมอ
หากต้องการแก้ไขตัวอย่างนโยบาย Generate JWT ที่แสดงด้านบน ให้ใช้ตัวแปรโฟลว์ private.secretkey
ในแอตทริบิวต์อ้างอิงขององค์ประกอบย่อย <Value>
ของ <SecretKey>
ดังนี้
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<ExpiresIn>1h</ExpiresIn>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<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>
</GenerateJWT>
InvalidTimeFormat
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision 2 Invalid Time format: policy(policy_name) element(element_name).
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 3
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
ตัวอย่างภาพหน้าจอ
ใน Edge UI คุณจะเห็นกล่องโต้ตอบที่มีข้อผิดพลาด:
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากค่าที่ระบุในองค์ประกอบ <NotBefore>
ไม่ได้อยู่ในรูปแบบใดรูปแบบหนึ่งที่รองรับ
sortable
, RFC 1123
, RFC 850
, ANCI-C
ตัวอย่างเช่น หากค่าที่ระบุใน <NotBefore>
คือ 20-JUN-1990 08:03
ซึ่งไม่ใช่รูปแบบที่รองรับ ระบบจะแสดงข้อผิดพลาดนี้
<NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore>
การวินิจฉัย
ระบุชื่อนโยบาย Generate JWT และชื่อองค์ประกอบที่มีรูปแบบเวลาที่ไม่ถูกต้องจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อความแสดงข้อผิดพลาดต่อไปนี้ ชื่อของนโยบาย Generate JWT คือ
JWT-Generate-HS256
และชื่อองค์ประกอบคือNotBefore
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
ตรวจสอบ XML ของนโยบาย Generate JWT ที่ล้มเหลวและยืนยันรูปแบบเวลาที่ใช้ในองค์ประกอบที่ระบุในขั้นตอนที่ 1 หากองค์ประกอบไม่ได้ใช้รูปแบบที่รองรับ ให้ทำดังนี้
sortable
,RFC 1123
,RFC 850
,ANCI-C
นั่นคือสาเหตุของข้อผิดพลาด
ตัวอย่างเช่น นโยบายต่อไปนี้แสดงให้เห็นว่าองค์ประกอบย่อย
<NotBefore>
ใช้รูปแบบเวลาที่ไม่รองรับ<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</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> </GenerateJWT>
คุณได้รับข้อผิดพลาดต่อไปนี้เนื่องจากองค์ประกอบ
<NotBefore>
ของนโยบาย Generate JWT ไม่ได้ใช้รูปแบบเวลาที่รองรับInvalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
ความละเอียด
ตรวจสอบว่าค่าที่ระบุในองค์ประกอบ <NotBefore>
ใช้รูปแบบที่รองรับรูปแบบใดรูปแบบหนึ่ง
sortable
, RFC 1123
, RFC 850
, ANCI-C
หากต้องการแก้ไขตัวอย่างนโยบาย "สร้าง JWT" ให้แก้ไขวันที่ในองค์ประกอบ <NotBefore>
ให้ใช้รูปแบบ sortable
ดังที่แสดงด้านล่าง
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<ExpiresIn>1h</ExpiresIn>
<NotBefore>2018-08-14T11:00:21-07:00</NotBefore>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<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>
</GenerateJWT>