Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
InvalidNameForAdditionalClaim
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256) claim(iss).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir 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 ortaya çıkar:
"çocuk", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
Kayıtlı hak talepleri, RFC7519'da belirtilmiştir.
Örneğin, <AdditionalClaims>
öğesi altında iss
hak talebi adının kullanılması bu hataya neden olur.
Teşhis
JWT oluştur politikasının adını ve hata mesajındaki hak talebi adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, hak talebi adı iseiss
şeklindedir:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Başarısız JWT oluşturma politikası XML'inde
<AdditionalClaims>
öğesi altında kullanılan hak talebi adının, hata mesajında belirtilen hak talebi adıyla eşleştiğini doğrulayın (yukarıdaki 1. adım). Örneğin, aşağıdaki politika hak talebini, hata mesajındakiyle eşleşeniss
olarak belirtir:<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>
öğesinin alt öğesinde kullanılan hak talebi adı aşağıdaki kayıtlı adlardan biriyse:"çocuk", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
hatanın nedeni budur.
Yukarıda gösterilen JWT oluşturma politikası örneğinde,
<Claim>
adı<AdditionalClaims>
öğesi altındaiss
olarak belirtilmiştir. Bu da hataya neden olur:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Çözünürlük
"Çocuk", "iss", "sub", "aud", "iat", "exp", "nbf" kayıtlı adlarından hiçbirini kullanmayın. veya "jti" <Claim>
<AdditionalClaims>
öğesinin alt öğesinde.
Yukarıda gösterilen JWT oluştur örneğini düzeltmek için hak talebi adını status
olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256) claim(claim) type(integer).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, GenerateJWT politikasının <AdditionalClaims>
öğesinin <Claim>
alt öğesinde kullanılan hak talebi türü aşağıdaki türlerden biri olmadığında ortaya çıkar:
string
(varsayılan), number
, boolean
veya map
Örneğin, <AdditionalClaims>
öğesi altında integer
hak talebi türünün kullanılması hatayla sonuçlanır.
Teşhis
JWT oluştur politikasının adını, hak talebi adını ve hata mesajındaki hak talebi türünü tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, hak talebi adıclaim
ve hak talebi türüinteger
şeklindedir:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Başarısız JWT oluşturma politikası XML'indeki
<AdditionalClaims>
öğesi altında kullanılan hak talebi adının ve türün, 1. adımdaki hata mesajında belirtilen hak talebi adı ve türüyle eşleştiğini doğrulayın. Örneğin, aşağıdaki politika, hak talebiniclaim
, türü ise hata mesajındakiyle eşleşeninteger
olarak belirtir:<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>
<AdditionalClaims>
öğesinin<Claim>
alt öğesinde kullanılan hak talebi türü aşağıdaki türlerden biri değilse:string
(varsayılan),number
,boolean
veyamap
hatanın nedeni budur.
Yukarıda gösterilen JWT oluşturma politikası örneğinde,
<AdditionalClaims>
öğesinin altındaki<Claim>
türüinteger
olarak belirtilmiştir.integer
desteklenmeyen bir tür olmadığı için şu hatayı alırsınız:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Çözünürlük
<AdditionalClaims>
öğesinin <Claim>
alt öğesinde yalnızca string
, number
, boolean
veya map
gibi desteklenen veri türlerinin kullanıldığından emin olun.
Yukarıda gösterilen JWT oluşturma örneğini düzeltmek için hak talebi türünü boolean
olarak değiştirin.
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, hak talebinin adı <AdditionalClaims>
veya <AdditionalHeaders>
öğesinin <Claim>
alt öğesinde belirtilmemişse ortaya çıkar.
Teşhis
Hata mesajından JWT oluştur politikasının adını belirleyin. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
şeklindedir:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Başarısız JWT oluşturma politikası XML dosyasını inceleyin ve
<AdditionalClaims>
veya<AdditionalHeaders>
öğesinin altındaki<Claims>
alt öğesinde hak talebi adının eksik olup olmadığını doğrulayın. Örneğin, aşağıdaki "JWT oluştur" politikası,<AdditionalClaims>
altındaki hak talebi adını belirtmez. öğe:<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>
adı,<AdditionalClaims>
öğesi altında belirtilmediğinden hata alırsınız:Error occurred while validation of bean JWT-Generate-HS256.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 öğesinde (<Claim>
) belirtildiğinden emin olun.
Yukarıdaki örnek JWT oluştur politikasını düzeltmek için hak talebi adını aşağıda gösterildiği gibi belirtin:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256) header(alg).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir 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 ortaya çıkar:
alg
veya typ
Örneğin, <AdditionalHeaders>
öğesi altında alg
hak talebi adının kullanılması hataya neden olur.
Teşhis
Oluştur JWT politikasının adını ve hata mesajındaki üstbilgi adını tanımlayın. Örneğin, aşağıdaki hata mesajında, Oluştur JWT politikasının adı
JWT-Generate-HS256
, üstbilgi adı isealg
şeklindedir:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Başarısız olan JWT oluşturma politikası XML'indeki
<AdditionalHeaders>
öğesinin altında bulunan<Claim>
alt öğesinde kullanılan üstbilgi adının, 1. adımdaki hata mesajında tanımlanan üstbilgi adıyla eşleştiğini doğrulayın. Örneğin, aşağıdaki politika, üst bilgiyi hata mesajındakiyle eşleşenalg
olarak belirtir:<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>
<AdditionalClaims>
öğesinin<Claim>
alt öğesinde kullanılan başlık adı, aşağıdaki standart JWT başlıklarından biriyse:alg
veyatyp
hatanın nedeni budur.
Yukarıda gösterilen JWT oluşturma politikası örneğinde,
<Claim>
adı<AdditionalClaims>
öğesi altındaalg
olarak belirtilmiştir. Bu da hataya neden olur:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Çözünürlük
<AdditionalHeaders>
öğesinin <Claim>
alt öğesinde alg
veya typ
standart JWT başlıklarını kullanmayın.
Yukarıdaki örnek Generate JWT politikasını düzeltmek için <AdditionalHeaders>
öğesinin <Claim>
alt öğesinde x5c
adını kullanın:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256) claim(claim1) type(integer).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Hata, GenerateJWT politikasının <AdditionalHeaders>
öğesinin <Claim>
alt öğesinde kullanılan hak talebi türü aşağıdaki türlerden biri değilse 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
JWT oluştur politikasının adını, hak talebi adını ve hata mesajındaki hak talebi türünü tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, hak talebi adıclaim,
ve hak talebi türüinteger:
şeklindedir.Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Başarısız JWT oluşturma politikası XML'indeki
<AdditionalClaims>
öğesi altında kullanılan hak talebi adının ve hak talebi türünün, 1. adımdaki hata mesajında belirtilen hak talebi adı ve hak talebi türüyle eşleştiğini doğrulayın. Örneğin, aşağıdaki politikada hak talebiclaim
, hak talebi türü ise hata mesajında belirtilenle eşleşeninteger
olarak belirtilmektedir:<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>
<AdditionalHeaders>
öğesinin<Claim>
alt öğesinde kullanılan hak talebi türü aşağıdaki türlerden biri değilse:string
(varsayılan),number
,boolean
veyamap
hatanın nedeni budur.
Yukarıda gösterilen JWT oluşturma politikası örneğinde,
<AdditionalHeaders>
öğesinin altındaki<Claim>
türüinteger
olarak belirtilmiştir.integer
desteklenmeyen bir tür olmadığı için şu hatayı alırsınız:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Çözünürlük
<AdditionalHeaders>
öğesinin <Claim>
alt öğesinde yalnızca desteklenen string
, number
, boolean
veya map
veri türlerinin kullanıldığından emin olun.
Yukarıda gösterilen JWT oluştur örneğini düzeltmek için hak talebi türünü boolean
olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256) claim(claim).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <AdditionalClaims>
veya <AdditionalHeaders>
öğesinin <Claim>
alt öğesindeki dizi özelliğinin değeri true
veya false
olarak ayarlanmadığında ortaya çıkar.
Örneğin, dizi özelliğinin değerinin <AdditionalClaims>
veya <AdditionalHeaders>
öğesinin <Claim>
alt öğesinde yes
olarak ayarlanması hataya neden olur.
Teşhis
JWT oluştur politikasının adını ve hata mesajındaki hak talebi adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, hak talebi adı iseclaim:
şeklindedir.Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Başarısız olan JWT oluşturma politikası XML'indeki
<AdditionalHeaders>
öğesinin altındaki<Claim>
alt öğesinde kullanılan hak talebi adının, 1. adımdaki hata mesajında belirtilen hak talebi adıyla eşleştiğini doğrulayın. Örneğin, aşağıdaki politika, hak talebi adını hata mesajındaki adla eşleşenclaim
olarak belirtir:<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>
<AdditionalClaims>
öğesinin<Claim>
alt öğesindekiarray
özelliğinin değeritrue
veyafalse
olarak ayarlanmadıysa hatanın nedeni budur.<AdditionalClaims>
öğesinin<Claim>
alt öğesindekiarray
özelliği yukarıdaki örnekteyes
olarak ayarlandığından hata alırsınız:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Çözünürlük
<AdditionalClaims>
veya <AdditionalHeaders>
öğesinin alt öğesindeki <Claim>
dizi özelliği değerinin true
veya false
olarak ayarlandığından emin olun.
Yukarıda gösterilen JWT oluştur örneği politikasını düzeltmek için dizi özelliğinin değerini true
olarak değiştirin:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
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>).
Örnek hata mesajı
Error Saving Revision 2 Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <PrivateKey>
öğesi HS Family algoritmalarıyla ve <SecretKey>
öğesi RSA Aile algoritmalarıyla kullanıldığında ortaya çıkar. Hata, bu koşullardan biri doğru olduğunda da oluşur.
Örneğin, <PrivateKey>
öğesinin HS Family algoritmalarıyla kullanılması bu hataya neden olur.
Teşhis
Hata mesajındaki JWT oluştur politikasının adını, öğe adını ve algoritma aile adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, öğe adıPrivateKey
ve algoritma ailesiHMAC
şeklindedir:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Başarısız JWT politikası XML oluşturma işleminde kullanılan öğe ve algoritma ailesinin, 1. adımdaki hata mesajında belirtilen öğeyle ve algoritma ailesiyle eşleştiğini doğrulayın. Örneğin, aşağıdaki politika öğeyi
PrivateKey
ve algoritma ailesiniHMAC
olarak belirtir. Algoritma ailesi, hata mesajındaki değerle eşleşir:<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>
öğesinin değeriHS256
ise ancak<PrivateKey>
kullandıysanız hatanın nedeni budur.Yukarıda gösterilen "JWT oluştur" politikası örneğinde,
<PrivateKey>
bir aile algoritması (HS256
) olarak ayarlanmış olsa bile<PrivateKey>
kullanılmıştır. Bu durumda hata ortaya çıkar:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Çözünürlük
<PrivateKey>
öğesinin yalnızca RSA Aile algoritmalarıyla kullanıldığından ve <SecretKey>
öğesinin yalnızca HS Aile algoritmalarıyla kullanıldığından emin olun.
Yukarıda gösterilen JWT oluştur politikasını düzeltmek için HS256 algoritmasını kullanan GenerateJWT politikasındaki <SecretKey>
öğesini kullanın:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 Invalid Value for element : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <Algorithm>
öğesinde belirtilen değer aşağıdaki değerlerden biri olmadığında ortaya çıkar:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Örneğin, algoritma değerinin <Algorithm>
öğesinde RS128
olarak belirtilmesi bu hataya neden olur.
Teşhis
JWT oluştur politikasının adını ve hata mesajındaki öğe adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, öğe adı iseAlgorithm.
şeklindedir.Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Başarısız JWT oluşturma politikası XML dosyasını inceleyin ve
<Algorithm>
öğesi için belirtilen değeri kontrol edin.JWT oluşturma politikası örneği:
<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>
öğesinde belirtilen değeri inceleyin. Aşağıdaki değerlerden biri değilse:HS256
,HS384
,HS512
,RS256
,RS384
,RS512
hatanın nedeni budur.
Yukarıda gösterilen JWT oluşturma politikası örneğinde,
<Algorithm>
adıHS128
olarak belirtilmiştir. Bu, desteklenen bir algoritma olmadığından hata mesajı alırsınız:Invalid Value for element : policy(JWT-Generate-HS256) 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
Yukarıda gösterilen ve <SecretKey>
öğesini kullanan Generate 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.
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 Missing configuration element : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 2
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <PrivateKey>
öğesi JWT Oluştur politikasında RSA Aile algoritmalarıyla kullanılmadığında ortaya çıkar. Benzer şekilde, <SecretKey>
öğesi JWT oluştur politikasında HS Family algoritmalarıyla kullanılmazsa hata oluşabilir.
Örneğin, <PrivateKey>
öğesinin RSA Aile algoritmalarıyla kullanılmaması bu hataya neden olur.
Teşhis
Hata mesajındaki JWT oluştur politikasının adını ve eksik öğe adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, eksik öğe adı iseSecretKey
şeklindedir.Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Başarısız olan JWT oluşturma politikası XML dosyasını inceleyin ve hata mesajında belirtilen öğenin eksik olduğunu doğrulayın. Eksikse hatanın nedeni budur.
Örneğin, aşağıdaki politikada
SecretKey
eksik, kullanılanAlgorithm
iseHS256
:<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>
Örnek Oluştur JWT politikasında HS Aile algoritmaları kullanılıyor, ancak zorunlu
SecretKey
öğesi eksik olduğundan hata ortaya çıkıyor:Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Çözünürlük
Zorunlu <PrivateKey>
öğesinin RSA Aile algoritmalarıyla kullanıldığından ve zorunlu <SecretKey>
öğesinin HS Aile algoritmalarıyla kullanıldığından emin olun.
Yukarıda gösterilen ve HS256
algoritmasını kullanan Generate JWT politikasını düzeltmek için <SecretKey>
öğesini JWT oluştur politikasına ekleyin:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
Örnek hata mesajı
Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, zorunlu <Value>
alt öğesi, JWT oluştur politikasındaki <PrivateKey>
veya <SecretKey>
öğelerinde tanımlanmamışsa ortaya çıkar.
Teşhis
Hata mesajından JWT oluştur politikasının adını belirleyin. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
şeklindedir.Invalid Key configuration : policy(JWT-Generate-HS256).
Başarısız JWT oluşturma politikası XML dosyasını inceleyin ve
<Value>
alt öğesinin,<PrivateKey>
veya<SecretKey>
öğelerinde tanımlanmadığını doğrulayın.<Value>
tanımlanmamışsa hatanın nedeni budur.Örneğin, aşağıdaki politikada
<Value>
alt öğesi<SecretKey>
öğesinde tanımlı değildir:<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>
alt öğesi, JWT oluştur politikasının<SecretKey>
öğesinde tanımlanmadığından şu hatayı alırsınız:Invalid Key configuration : policy(JWT-Generate-HS256).
Çözünürlük
<Value>
alt öğesinin, JWT oluştur politikasının <PrivateKey>
veya <SecretKey>
öğelerinde her zaman tanımlandığından emin olun.
Yukarıda gösterilen JWT oluştur örneğini düzeltmek için <SecretKey>
öğesinin altındaki <Value>
alt öğesini aşağıda gösterildiği gibi tanımlayın:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 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-Generate-HS256) element(SecretKey/Value).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <PrivateKey>
veya <SecretKey>
öğelerinin <Value>
alt öğesindeki ref özelliği belirtilmemişse veya boş olduğunda ortaya çıkar.
Örneğin, <SecretKey>
öğesinin <Value>
alt öğesi boşsa hata oluşur.
Teşhis
Oluştur JWT politikasının adını ve hata mesajındaki boş öğe adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, boş öğe adı iseSecretKey/Value
şeklindedir.Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Başarısız olan JWT oluşturma politikası XML dosyasını inceleyin ve 1. adımda tanımlanan öğenin boş olup olmadığını doğrulayın. Boşsa hatanın nedeni budur.
Örneğin, aşağıdaki politika
<SecretKey>
öğesinin<Value>
alt öğesinin boş olduğunu gösterir:<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>
JWT oluştur politikasındaki
<SecretKey>
öğesinin<Value>
alt öğesi boş olduğundan şu hatayı alırsınız:Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Çözünürlük
<PrivateKey>
veya <SecretKey>
öğelerinin <Value>
alt öğesindeki ref özelliğinin her zaman belirtildiğinden ve "private.
" ön ekine sahip olduğundan emin olun.
Yukarıda gösterilen JWT oluştur örneğini düzeltmek için <SecretKey>
öğesinin <Value>
alt öğesinde private.privatekey
akış değişkenini kullanın.
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 Invalid variable name for secret : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 2
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <PrivateKey>
veya <SecretKey>
öğelerinin alt öğesindeki <Value>
referans özelliğinde belirtilen akış değişkeni adı, gizli öneki (private.
) içermiyorsa ortaya çıkar.
For example :
Akış değişkeni adı, <PrivateKey>
öğesinin <Value>
alt öğesinin ref özelliğinde mykey
olarak belirtilirse bu hata oluşur.
Teşhis
Oluştur JWT politikasının adını ve hata mesajındaki geçersiz değişken adına sahip öğenin adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, öğe adı iseSecretKey/Value
şeklindedir.Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Başarısız JWT oluşturma politikası XML dosyasını inceleyin ve 1. adımda tanımlanan öğede kullanılan değişken adını doğrulayın. Değişken adında
private.
öneki yoksa hatanın nedeni budur.Örneğin, aşağıdaki politika,
<SecretKey>
öğesinin<Value>
alt öğesinde geçersiz değişken adımykey
olduğunu göstermektedir:<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>
JWT oluştur politikasının
<SecretKey>
öğesinin<Value>
alt öğesinde belirtilen değişken adındaprivate.
ön eki bulunmadığından şu hatayı alırsınız:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Çözünürlük
<PrivateKey>
veya <SecretKey>
öğelerinin <Value>
alt öğesindeki ref özelliğinin her zaman belirtildiğinden ve private.
ön ekine sahip olduğundan emin olun.
Yukarıda gösterilen JWT oluştur örneğini düzeltmek için <SecretKey>
öğesinin <Value>
alt öğesinde private.privatekey
akış değişkenini kullanın:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 Specifying a secret in the configuration is invalid : policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 2
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, değer (gizli) aşağıda açıkça belirtildiğinde ortaya çıkar:
<PrivateKey>
öğesinin<Value>
veya<Password>
alt öğeleri veya<SecretKey>
öğesinin<Value>
alt öğesi
Generate JWT (JWT Oluştur) politikası.
Örneğin, gizli anahtar <SecretKey>
öğesinin <Value>
alt öğesinde açıkça abc
olarak belirtilmişse bu hata oluşur.
Teşhis
Generate JWT politikasının adını ve gizli anahtarın hata mesajında açıkça belirtildiği öğe adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, öğe adı iseSecretKey/Value
şeklindedir.Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Başarısız olan JWT oluşturma politikası XML dosyasını inceleyin ve gizli anahtarın 1. adımda tanımlanan öğede açıkça belirtildiğinden emin olun. Bu değer açıkça belirtilmişse hatanın nedeni budur.
Örneğin, aşağıdaki politika, gizli anahtarın
<SecretKey>
öğesinin alt öğesinde (<Value>
) açıkça belirtildiğini gösterir:<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>
Gizli anahtar, JWT oluştur politikasının
<SecretKey>
öğesinin<Value>
alt öğesinde açıkça belirtildiğinden şu hatayı alırsınız:Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Çözünürlük
Değerin, <PrivateKey>
veya <SecretKey>
öğelerinin alt öğesinde <Value>
her zaman akış değişkeni olarak belirtildiğinden emin olun.
Yukarıda gösterilen JWT oluştur politikasını düzeltmek için <SecretKey>
öğesinin <Value>
alt öğesinin ref özelliğinde private.secretkey
akış değişkenini kullanın:
<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
Hata mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
Error Saving Revision 2 Invalid Time format: policy(policy_name) element(element_name).
Örnek hata mesajı
Error Saving Revision 3
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Örnek ekran görüntüsü
Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:
Neden
Bu hata, <NotBefore>
öğesinde belirtilen değer desteklenen biçimlerden birinde değilse ortaya çıkar:
sortable
, RFC 1123
, RFC 850
, ANCI-C
Örneğin, <NotBefore>
alanında belirtilen değer 20-JUN-1990 08:03
ise ve bu biçim desteklenmeyen bir biçimse bu hata oluşur.
<NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore>
Teşhis
JWT oluştur politikasının adını ve hata mesajındaki saat biçimi geçersiz olan öğe adını tanımlayın. Örneğin, aşağıdaki hata mesajında JWT oluştur politikasının adı
JWT-Generate-HS256
, öğe adı iseNotBefore
şeklindedir.Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Başarısız olan JWT oluşturma politikası XML dosyasını inceleyin ve 1. adımda tanımlanan öğede kullanılan saat biçimini doğrulayın. Öğe, desteklenen biçimlerden birini kullanmıyorsa:
sortable
,RFC 1123
,RFC 850
,ANCI-C
hatanın nedeni budur.
Örneğin, aşağıdaki politika,
<NotBefore>
alt öğesinde desteklenmeyen bir zaman biçimi kullandığını göstermektedir:<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>
JWT oluştur politikasının
<NotBefore>
öğesi, desteklenen zaman biçimlerinden hiçbirini kullanmadığından şu hatayı alırsınız:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Çözünürlük
<NotBefore>
öğesinde belirtilen değerin, desteklenen biçimlerden birini kullandığından emin olun:
sortable
, RFC 1123
, RFC 850
, ANCI-C
Örnek JWT oluştur politikasını düzeltmek için <NotBefore>
öğesindeki tarihi, aşağıda gösterildiği gibi sortable
biçimini kullanacak şekilde değiştirin:
<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>