Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
InvalidNameForAdditionalClaim
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid name for additional claim : policy(policy_name) claim(claim_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <AdditionalClaims> öğesinin <Claim> alt öğesinde kullanılan talebin adı aşağıdaki kayıtlı adlardan biri olduğunda oluşur:
"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
Kayıtlı talepler RFC7519'da belirtilir.
Örneğin, <AdditionalClaims> öğesi altında hak talebi adının iss kullanılması bu hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını ve talep adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, talep adı iseiss'dir:Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).Başarısız olan JWT politikasını doğrulama XML'sindeki
<AdditionalClaims>öğesi altında kullanılan talep adının, 1. adımda hata mesajında belirtilen talep adıyla eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada hak talebiissolarak belirtilir. Bu, hata mesajındakiyle eşleşir:<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><AdditionalClaims>öğesinin<Claim>alt öğesinde kullanılan hak talebi adı, aşağıdaki kayıtlı adlardan biriyse:"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
Bu durumda hatanın nedeni budur.
Yukarıda gösterilen Verify JWT (JWT'yi Doğrula) politikası örneğinde,
<Claim>adı<AdditionalClaims>öğesi altındaissolarak belirtilir. Bu da şu hataya neden olur:Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
Çözünürlük
<AdditionalClaims> öğesinin <Claim> alt öğesinde "kid", "iss", "sub", "aud", "iat", "exp", "nbf" veya "jti" gibi kayıtlı adları kullanmayın.
Örnek JWT politikasını doğrulama ile ilgili sorunu düzeltmek için talep adını status olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
VerifyJWT politikasının <AdditionalClaims> öğesinin <Claim> alt öğesinde kullanılan talep türü, aşağıdaki türlerden biri değil:
string (varsayılan), number, boolean veya map
Örneğin, <AdditionalClaims> öğesi altında integer hak talebi türünün kullanılması hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını, talep adını ve türünü belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, talep adıclaimve türinteger:'dir.Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).Başarısız olan JWT politikasını doğrulama XML'sindeki
<AdditionalClaims>öğesi altında kullanılan talep adı ve türünün, 1. adımda hata mesajında tanımlanan talep adı ve türüyle eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada hak talebiclaim, tür iseintegerolarak belirtilmiştir. Bu, hata mesajındaki bilgilerle eşleşir:<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><AdditionalClaims>öğesinin alt öğesi<Claim>içinde kullanılan hak talebi türü aşağıdaki türlerden biri değilse:string(varsayılan),number,booleanveyamapBu durumda hatanın nedeni budur.
Yukarıda gösterilen örnek JWT politikasını doğrulama işleminde,
<Claim>türü<AdditionalClaims>öğesi altındaintegerolarak belirtilir.integerdesteklenen bir tür olmadığı için şu hatayı alırsınız:Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
Çözünürlük
<AdditionalClaims> öğesinin <Claim> alt öğesinde yalnızca desteklenen veri türleri string (varsayılan), number, boolean veya map kullanıldığından emin olun.
JWT politikasını doğrulama örneğini düzeltmek için hak talebi türünü boolean olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
Örnek hata mesajı
Error Saving Revision 2
Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, talebin adı <AdditionalClaims> veya <AdditionalHeaders> öğesinin <Claim> alt öğesinde belirtilmediğinde oluşur.
Teşhis
Hata mesajından Verify JWT politikasının adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256'dır:Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in ClaimBaşarısız olan JWT politikasının XML'sini inceleyin ve
<AdditionalClaims>veya<AdditionalHeaders>öğesi altındaki<Claims>alt öğesinde talep adının eksik olduğunu doğrulayın. Örneğin, aşağıdaki JWT'yi Doğrula politikası,<AdditionalClaims>öğesi altında hak talebi adını belirtmez:<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>adı,<AdditionalClaims>öğesi altında belirtilmediği için şu hatayı alırsınız:Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
Çözünürlük
Hak talebinin adının her zaman <AdditionalClaims> veya <AdditionalHeaders> öğesinin alt öğesi <Claim> içinde belirtildiğinden emin olun.
Örnek JWT politikasını doğrulamak için hak talebi adını aşağıdaki gibi belirtin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid name for additional header : policy(policy_name)header(header_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <AdditionalHeaders> öğesinin <Claim> alt öğesinde kullanılan talebin adı aşağıdaki standart JWT başlıklarından biri olduğunda oluşur:
alg veya typ
Örneğin, <AdditionalHeaders> öğesi altında hak talebi adının alg kullanılması hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını ve başlık adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, üstbilgi adı isealg'dir:Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).Başarısız olan JWT politikasını doğrulama XML'sindeki
<AdditionalHeaders>öğesi altında bulunan alt öğe<Claim>içinde kullanılan başlık adının, 1. adımda hata mesajında belirtilen başlık adıyla eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada üstbilgialgolarak belirtilmiştir. Bu, hata mesajındakiyle eşleşir:<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><AdditionalClaims>öğesinin<Claim>alt öğesinde kullanılan başlık adı aşağıdaki standart JWT başlıklarından biriyse:algveyatypBu durumda hatanın nedeni budur.
Yukarıda gösterilen Verify JWT (JWT'yi Doğrula) politikası örneğinde,
<Claim>adı<AdditionalClaims>öğesi altındaalgolarak belirtilir. Bu da şu hataya neden olur:Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
Çözünürlük
<AdditionalHeaders> öğesinin alt öğesi <Claim> içinde standart JWT üstbilgilerini (alg veya typ) kullanmayın.
Verify JWT (JWT'yi Doğrula) politikasındaki örneği düzeltmek için <AdditionalHeaders> öğesinin <Claim> alt öğesinde x5c adını kullanın:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim1) type(integer).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
JWT'yi Doğrula politikasının <AdditionalHeaders> öğesinin <Claim> alt öğesinde kullanılan talep türü aşağıdaki türlerden biri değilse hata oluşur:
string (varsayılan), number, boolean veya map
Örneğin, <AdditionalHeaders> öğesi altında integer hak talebi türünün kullanılması hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını, talep adını ve türünü belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, talep adıclaimve türüinteger'dir:Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).Başarısız olan JWT politikasını doğrulama XML'sindeki
<AdditionalClaims>öğesi altında kullanılan talep adı ve türünün, 1. adımda hata mesajında tanımlanan talep adı ve türüyle eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada hak talebiclaim, hak talebi türü iseinteger,olarak belirtilmiştir. Bu, hata mesajındaki bilgilerle eşleşir:<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><AdditionalHeaders>öğesinin alt öğesi<Claim>içinde kullanılan hak talebi türü aşağıdaki türlerden biri değilse:string(varsayılan),number,booleanveyamapBu durumda hatanın nedeni budur.
Yukarıda gösterilen örnek JWT'yi Doğrula politikasında,
<AdditionalHeaders>öğesi altındaki<Claim>türüintegerolarak belirtilir.integerdesteklenen bir tür olmadığı için şu hatayı alırsınız:Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).
Çözünürlük
<AdditionalHeaders> öğesinin alt öğesi <Claim> içinde yalnızca desteklenen veri türleri string, number, boolean veya map'ün kullanıldığından emin olun.
JWT politikasını doğrulama örneğini düzeltmek için hak talebi türünü boolean olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid value for array attribute: policy(policy_name)claim(claim_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <AdditionalClaims> veya <AdditionalHeaders> öğesinin alt öğesi olan <Claim> öğesindeki dizi özelliğinin değeri true veya false olarak ayarlanmamışsa oluşur.
Örneğin, <AdditionalClaims> veya <AdditionalHeaders> öğesinin <Claim> alt öğesinde dizi özelliğinin değerini yes olarak ayarlamak hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını ve talep adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, talep adı iseclaim'dir:Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).Başarısız olan JWT politikasını doğrulama XML'sindeki
<AdditionalHeaders>öğesinin altındaki<Claim>alt öğesinde kullanılan talep adının, 1. adımda hata mesajında belirtilen talep adıyla eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada hak talebi adıclaimolarak belirtiliyor. Bu, hata mesajındakiyle eşleşiyor:<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><AdditionalClaims>öğesinin alt öğesi olan<Claim>öğesindekiarrayözelliğinin değeritrueveyafalseolarak ayarlanmamışsa hatanın nedeni budur.Yukarıdaki örnekte
<AdditionalClaims>öğesinin alt öğesi olan<Claim>öğesindekiarrayözelliğiyesolarak ayarlandığından şu hatayı alırsınız:Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
Çözünürlük
<AdditionalClaims> veya <AdditionalHeaders> öğelerinin alt öğesi <Claim>'daki dizi özelliğinin değerinin true veya false olarak ayarlandığından emin olun.
Yukarıda gösterilen örnek JWT politikasını doğrula politikasını düzeltmek için dizi özelliğinin değerini true olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision Invalid Value for element : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision
Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
<Algorithm> öğesinde belirtilen değer aşağıdaki değerlerden biri değilse bu hata oluşur:
HS256, HS384, HS512, RS256, RS384, RS512
Örneğin, <Algorithm> öğesinde algoritma değerinin RS128 olarak belirtilmesi bu hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını ve öğe adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, öğe adı iseAlgorithm'dir:Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).Başarısız olan JWT politikasının XML'sini inceleyin ve
<Algorithm>öğesi için belirtilen değeri kontrol edin.Aşağıda örnek bir JWT politikasını doğrulama verilmiştir:
<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>öğesinde belirtilen değeri inceleyin. Aşağıdaki değerlerden biri değilse:HS256,HS384,HS512,RS256,RS384,RS512Bu durumda hatanın nedeni budur.
Yukarıda gösterilen örnek JWT politikasını doğrulama işleminde,
<Algorithm>adıHS128olarak belirtilir. Bu desteklenen bir algoritma olmadığından şu hatayı alırsınız:Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
Çözünürlük
<Algorithm> öğesinde belirtilen değerin desteklenen değerlerden biri olduğundan emin olun:
HS256, HS384, HS512, RS256, RS384, RS512
<SecretKey> öğesini kullanan yukarıdaki örnek JWT politikasını düzeltmek için <Algorithm> değerini HS25 olarak değiştirin. <SecretKey> öğesi kullanıldığında yalnızca HS Family algoritmalarını kullanabileceğinizi unutmayın.
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision Missing configuration element : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision
Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, JWT'yi Doğrula politikasında <PublicKey> öğesi RSA Ailesi algoritmalarıyla kullanılmadığında meydana gelir. Aynı şekilde, JWT'yi Doğrula politikasında <SecretKey> öğesi HS Family algoritmalarıyla kullanılmıyorsa da hata oluşabilir.
Örneğin, <PublicKey> öğesinin RSA aile algoritmalarıyla kullanılmaması bu hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını ve eksik öğe adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, eksik öğenin adı isePublicKey'dir:Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).Başarısız olan JWT politikasını doğrulama XML'sini inceleyin ve hata mesajında belirtilen öğenin eksik olduğunu doğrulayın. Bu dosya eksikse hatanın nedeni budur.
Örneğin, aşağıdaki politikada
PublicKeyöğesinin eksik olduğu ve kullanılanAlgorithmöğesininRS256olduğu gösterilmektedir:<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>Örnek JWT'yi Doğrula politikası, HS Family algoritmalarını kullanıyor ancak zorunlu öğe
PublicKeyeksik olduğundan şu hatayla karşılaşıyoruz:Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
Çözünürlük
Zorunlu <PublicKey> öğesinin RSA Ailesi algoritmalarıyla, zorunlu <SecretKey> öğesinin ise HS Ailesi algoritmalarıyla kullanıldığından emin olun.
RS256 algoritmasını kullanan yukarıdaki örnek Verify JWT politikasını düzeltmek için VerifyJWT politikasına <PublicKey> öğesini ekleyin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid Key configuration : policy(JWT-Verify-RS256).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, Verify JWT politikasının <PublicKey> veya <SecretKey> öğelerinde <Value> alt öğesi ya da zorunlu <JWKS> alt öğesi tanımlanmamışsa oluşur.
Teşhis
Hata mesajından Verify JWT politikasının adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256'dır:Invalid Key configuration : policy(JWT-Verify-RS256).Başarısız olan JWT politikasını doğrulama XML'sini inceleyin ve
<Value>alt öğesinin veya<JWKS>alt öğesinin<PublicKey>ya da<SecretKey>öğelerinde tanımlanıp tanımlanmadığını doğrulayın. Alt öğe tanımlanmamışsa hatanın nedeni budur.Örneğin, aşağıdaki politikada
<Value>veya<JWKS>alt öğesinin<PublicKey>öğesinde tanımlanmadığı gösterilmektedir:<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>Verify JWT politikasının
<PublicKey>öğesinde<Value>veya<JWKS>alt öğesi tanımlanmadığı için şu hatayı alırsınız:Invalid Key configuration : policy(JWT-Verify-RS256).
Çözünürlük
Verify JWT politikasının <PublicKey> öğesinde alt öğe <Value> veya <JWKS>'nin her zaman tanımlandığından emin olun.
Doğrulama JWT politikası örneğini düzeltmek için <Value> veya <JWKS> alt öğesini <PublicKey> öğesi altında aşağıdaki gibi tanımlayın:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Empty Element for Key Configuration : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <PublicKey> öğesinin alt öğesi olan <Value> veya <JWKS> öğesindeki ref özelliği belirtilmemişse ya da boşsa oluşur.
Örneğin, <PublicKey> öğesinin <Value> alt öğesi boşsa hata oluşur.
Teşhis
Hata mesajından, JWT'yi doğrulama politikasının adını ve boş olan öğe adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, öğe adı isePublicKey/Value'dir:Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).Başarısız olan JWT politikasını doğrulama XML'sini inceleyin ve 1. adımda tanımlanan öğenin boş olduğunu doğrulayın. Boşsa hatanın nedeni budur.
Örneğin, aşağıdaki politika,
<PublicKey>öğesinin alt öğesi olan<Value>öğesinin boş olduğunu gösteriyor:<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>Verify JWT politikasının
<PublicKey>öğesinin alt öğesi<Value>boş olduğundan şu hatayı alırsınız:Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
Çözünürlük
<PublicKey> öğesinin alt öğesi olan <Value> veya <JWKS> öğesindeki ref özelliğinin her zaman belirtildiğinden emin olun.
Örnek JWT politikasını doğrulamayı düzeltmek için public.publickey öğesinin alt öğesi olan <Value> öğesinde akış değişkeni <PublicKey> kullanın:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid configuration element for verify : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 3
Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <Id> öğesi bir VerifyJWT politikasının <SecretKey> öğesi içinde tanımlanırsa oluşur.
Örneğin, <Id> öğesi <SecretKey> öğesinde tanımlanmışsa bu hata oluşur.
Teşhis
Hata mesajından Verify JWT politikasının adını ve geçersiz öğe adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, öğe adı iseSecretKey/Id'dir:Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)Başarısız olan JWT politikasını doğrulama XML'sini inceleyin ve 1. adımda tanımlanan geçersiz öğenin tanımlandığını doğrulayın. Tanımlanmışsa hatanın nedeni budur.
Örneğin, aşağıdaki politika,
<SecretKey>öğesinin<Id>alt öğesinin tanımlandığını gösterir:<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>öğesi, JWT'yi Doğrula politikasının<SecretKey>öğesinde tanımlandığı için şu hatayı alırsınız:Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)
Çözünürlük
<Id> öğesinin, bir JWT'yi Doğrula politikasının <SecretKey> öğesi içinde hiçbir zaman tanımlanmadığından emin olun.
Verify JWT politikası örneğini düzeltmek için <Id> alt öğesini <SecretKey> öğesinden kaldırın:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving RevisionInvalid empty element : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 3
Invalid empty element : policy(JWT-Verify-HS256) element(Source).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, JWT'yi Doğrula politikasının <Source> öğesi boşsa oluşur. Varsa bir Edge akışı değişkeni adıyla tanımlanmalıdır.
Teşhis
Hata mesajından Verify JWT politikasının adını ve boş öğe adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, öğe adı isePublicKey/Value'dir:Invalid empty element : policy(JWT-Verify-HS256) element(Source).Başarısız olan JWT politikasını doğrulama XML'sini inceleyin ve 1. adımda tanımlanan öğenin boş olduğunu doğrulayın. Boşsa hatanın nedeni budur.
Örneğin, aşağıdaki politika,
<Source>öğesinin boş olduğunu gösteriyor:<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>Verify JWT politikasının
<Source>öğesi boş olduğundan şu hatayı alırsınız:Invalid empty element : policy(JWT-Verify-HS256) element(Source).
Çözünürlük
Bir JWT'yi Doğrula politikasının <Source> öğesi varsa bir akış değişkeni belirttiğinden emin olun.
Doğrulanmış JWT politikasını düzeltmek için <Source> öğesinde geçerli bir akış değişkeni kullanın:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid Public Key Value in Configuration : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <PublicKey> öğesinin <JWKS> alt öğesinde kullanılan değerin RFC 7517'de belirtildiği gibi geçerli bir biçimde olmaması durumunda oluşur.
Örneğin, abc öğesi altındaki <JWKS> alt öğesinin değeri olarak <PublicKey> kullanılması bu hataya neden olur.
Teşhis
Hata mesajından, JWT'yi doğrulama politikasının adını ve geçersiz değer içeren öğe adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-RS256, öğe isePublicKey/JWKS'dir:Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).Başarısız olan JWT politikasını doğrulama XML'sini inceleyin ve 1. adımda tanımlanan öğenin, RFC 7517'ye göre geçerli biçimde bir değer içerdiğini doğrulayın. Öğenin değeri geçerli biçimde değilse hatanın nedeni budur.
<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><PublicKey>öğesinin<JWKS>alt öğesindeki değer, RFC 7517'ye göre geçerli bir biçimde olmadığı için şu hatayı alırsınız:Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
Çözünürlük
<PublicKey> öğesinin <JWKS> alt öğesinde belirtilen değerin, geçerli bir JWKS biçiminde (RFC 7517) geçerli bir dize veya akış değişkeni olduğundan emin olun.
JWT'yi Doğrula politikasını düzeltmek için <JWKS> değerini aşağıda gösterildiği gibi değiştirin:
<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
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
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>).
Örnek hata mesajı
Error Saving Revision
Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde, bir hata içeren iletişim kutusu görürsünüz:

Neden
Bu hata, <PublicKey> öğesi HS ailesi algoritmalarıyla, <SecretKey> öğesi ise RSA ailesi algoritmalarıyla kullanıldığında ortaya çıkar. Bu koşullardan herhangi biri doğruysa da hata oluşur.
Örneğin, <PublicKey> öğesini HS Family algoritmalarıyla kullanmak bu hataya neden olur.
Teşhis
Hata mesajından Verify JWT politikasının adını, öğe adını ve algoritma ailesi adını belirleyin. Örneğin, aşağıdaki hata mesajında Verify JWT politikasının adı
JWT-Verify-HS256, öğe adıPublicKeyve algoritma ailesiRSA'dir:Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).Başarısız olan JWT politikasını doğrulama XML'sinde kullanılan öğe ve algoritma ailesinin, 1. adımda hata mesajında tanımlanan öğe ve algoritma ailesiyle eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada öğe
PublicKey, algoritma ailesi iseHMAColarak belirtiliyor. Bu, hata mesajındaki bilgilerle eşleşiyor.<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>öğesinin değeriHS256ise ancak<PublicKey>kullanmışsanız hatanın nedeni budur.Yukarıda gösterilen örnek JWT'yi Doğrula politikasında,
<Algorithm>öğesi aile algoritması HS256 olarak ayarlanmış olsa bile<PublicKey>öğesi kullanıldığından şu hata oluşur:Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
Çözünürlük
<PublicKey> öğesinin yalnızca RSA Ailesi algoritmalarıyla, <SecretKey> öğesinin ise yalnızca HS Ailesi algoritmalarıyla kullanıldığından emin olun.
Verify JWT politikasını düzeltmek için HS256 algoritmasını kullanan VerifyJWT politikasındaki <SecretKey> öğesini kullanın:
<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>