Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
InvalidNameForAdditionalClaim
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid name for additional claim : policy(policy_name) claim(claim_name).
Contoh pesan error
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nama klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims>
adalah salah satu nama terdaftar berikut:
"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
Klaim terdaftar ditentukan dalam RFC7519.
Misalnya, penggunaan nama klaim iss
di bawah elemen <AdditionalClaims>
akan menyebabkan error ini.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama klaim dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama klaim adalahiss
:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Pastikan nama klaim yang digunakan dalam elemen
<AdditionalClaims>
di XML kebijakan Membuat JWT yang gagal cocok dengan nama klaim yang diidentifikasi dalam pesan error (Langkah 1 di atas). Misalnya, kebijakan berikut menetapkan klaim sebagaiiss
, yang cocok dengan isi pesan error:<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>
Jika nama klaim yang digunakan dalam elemen turunan
<Claim>
elemen<AdditionalClaims>
adalah salah satu nama terdaftar berikut:"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
maka itulah penyebab kesalahannya.
Dalam contoh kebijakan "Buat JWT" yang ditampilkan di atas, nama
<Claim>
ditetapkan sebagaiiss
di bawah elemen<AdditionalClaims>
, sehingga menghasilkan error:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Resolusi
Jangan menggunakan nama yang terdaftar "kid", "iss", "sub", "aud", "iat", "exp", "nbf" atau "jti" dalam elemen turunan <Claim>
dari elemen<AdditionalClaims>
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, ubah nama klaim menjadi 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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
Contoh pesan error
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika jenis klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims>
kebijakan GenerateJWT bukan salah satu dari jenis berikut:
string
(default), number
, boolean
, atau map
Misalnya, menggunakan jenis klaim integer
di bawah elemen <AdditionalClaims>
akan menyebabkan error.
Diagnosis
Identifikasi nama kebijakan Generate JWT, nama klaim, dan jenis klaim dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
, nama klaim adalahclaim
, dan jenis klaim adalahinteger
:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Pastikan nama klaim dan jenis yang digunakan pada elemen
<AdditionalClaims>
di XML kebijakan Generate JWT yang gagal cocok dengan nama dan jenis klaim yang diidentifikasi dalam pesan error pada Langkah 1. Misalnya, kebijakan berikut menentukan klaim sebagaiclaim
dan jenisnya adalahinteger
, yang cocok dengan isi pesan error:<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>
Jika jenis klaim yang digunakan dalam elemen turunan
<Claim>
dari elemen<AdditionalClaims>
bukan salah satu dari jenis berikut:string
(default),number
,boolean
, ataumap
maka itulah penyebab kesalahannya.
Dalam contoh kebijakan "Buat JWT" yang ditampilkan di atas, jenis
<Claim>
di bawah elemen<AdditionalClaims>
ditetapkan sebagaiinteger
. Karenainteger
bukan jenis yang didukung, Anda mendapatkan error:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Resolusi
Pastikan hanya jenis data yang didukung seperti string
, number
, boolean
, atau map
yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims>
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, ubah jenis klaim menjadi 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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
Contoh pesan error
Error Saving Revision 2
Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nama klaim tidak ditentukan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims>
atau <AdditionalHeaders>
.
Diagnosis
Identifikasi nama kebijakan Generate JWT dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Periksa XML kebijakan Buat JWT yang gagal dan verifikasi apakah nama klaim tidak ada dalam elemen turunan
<Claims>
pada elemen<AdditionalClaims>
atau<AdditionalHeaders>
. Misalnya, kebijakan Buat JWT berikut tidak menentukan nama klaim berdasarkan<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>
Karena nama
<Claim>
tidak ditentukan dalam elemen<AdditionalClaims>
, Anda akan mendapatkan error:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Resolusi
Pastikan nama klaim selalu ditentukan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims>
atau <AdditionalHeaders>
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, tentukan nama klaim seperti yang ditunjukkan di bawah ini:
<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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid name for additional header : policy(policy_name)header(header_name).
Contoh pesan error
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nama klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalHeaders>
adalah salah satu header JWT standar berikut:
alg
atau typ
Misalnya, menggunakan nama klaim alg
di bawah elemen <AdditionalHeaders>
akan menyebabkan error.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama header dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama headernya adalahalg
:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Pastikan nama header yang digunakan dalam elemen turunan
<Claim>
pada elemen<AdditionalHeaders>
dalam XML kebijakan Membuat JWT yang gagal cocok dengan nama header yang diidentifikasi dalam pesan error pada Langkah 1. Misalnya, kebijakan berikut menentukan header sebagaialg
, yang cocok dengan isi pesan error:<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>
Jika nama header yang digunakan dalam elemen turunan
<Claim>
dari elemen<AdditionalClaims>
adalah salah satu header JWT standar berikut:alg
atautyp
maka itulah penyebab kesalahannya.
Dalam contoh kebijakan "Buat JWT" yang ditampilkan di atas, nama
<Claim>
ditetapkan sebagaialg
di bawah elemen<AdditionalClaims>
, sehingga menghasilkan error:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Resolusi
Jangan gunakan header JWT standar alg
atau typ
dalam elemen turunan <Claim>
dari elemen <AdditionalHeaders>
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, gunakan nama x5c
dalam elemen turunan <Claim>
dari elemen <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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
Contoh pesan error
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim1) type(integer).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error akan terjadi jika jenis klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalHeaders>
kebijakan GenerateJWT bukan salah satu dari jenis berikut:
string
(default), number
, boolean
, atau map
.
Misalnya, menggunakan jenis klaim integer
di bawah elemen <AdditionalHeaders>
akan menyebabkan error.
Diagnosis
Identifikasi nama kebijakan Generate JWT, nama klaim, dan jenis klaim dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
, nama klaim adalahclaim,
, dan jenis klaim adalahinteger:
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Pastikan nama klaim dan jenis klaim yang digunakan pada elemen
<AdditionalClaims>
di XML kebijakan Generate JWT yang gagal cocok dengan nama klaim dan jenis klaim yang diidentifikasi dalam pesan error pada Langkah 1. Misalnya, kebijakan berikut menentukan klaim sebagaiclaim
dan jenis klaim sebagaiinteger
, yang cocok dengan isi pesan error:<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>
Jika jenis klaim yang digunakan dalam elemen turunan
<Claim>
dari elemen<AdditionalHeaders>
bukan salah satu dari jenis berikut:string
(default),number
,boolean
, ataumap
maka itulah penyebab kesalahannya.
Dalam contoh kebijakan "Buat JWT" yang ditampilkan di atas, jenis
<Claim>
di bawah elemen<AdditionalHeaders>
ditetapkan sebagaiinteger
. Karenainteger
bukan jenis yang didukung, Anda mendapatkan error:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Resolusi
Pastikan hanya jenis data yang didukung string
, number
, boolean
, atau map
yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalHeaders>
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, ubah jenis klaim menjadi 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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid value for array attribute: policy(policy_name)claim(claim_name).
Contoh pesan error
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nilai atribut array dalam elemen turunan <Claim>
dari elemen <AdditionalClaims>
atau <AdditionalHeaders>
tidak ditetapkan ke true
atau false
.
Misalnya, menetapkan nilai atribut array sebagai yes
dalam elemen turunan <Claim>
dari <AdditionalClaims>
atau <AdditionalHeaders>
akan menyebabkan error.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama klaim dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama klaimnya adalahclaim:
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Pastikan nama klaim yang digunakan dalam elemen turunan
<Claim>
di bawah elemen<AdditionalHeaders>
dalam XML kebijakan Membuat JWT yang gagal cocok dengan nama klaim yang diidentifikasi dalam pesan error pada Langkah 1. Misalnya, kebijakan berikut menetapkan nama klaim sebagaiclaim
, yang cocok dengan isi pesan error:<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>
Jika nilai atribut
array
dalam elemen turunan<Claim>
dari elemen<AdditionalClaims>
tidak ditetapkan ketrue
ataufalse
, maka itulah penyebab error.Karena atribut
array
dalam elemen turunan<Claim>
dari elemen<AdditionalClaims>
disetel keyes
dalam contoh di atas, Anda akan mendapatkan error:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Resolusi
Pastikan nilai atribut array dalam elemen turunan <Claim>
dari <AdditionalClaims>
atau <AdditionalHeaders>
disetel ke true
atau false
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, ubah nilai atribut array menjadi 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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
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>).
Contoh pesan error
Error Saving Revision 2 Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika elemen <PrivateKey>
digunakan dengan algoritma Keluarga HS dan elemen <SecretKey>
digunakan dengan algoritma Keluarga RSA. Error juga akan terjadi jika salah satu kondisi ini benar.
Misalnya, penggunaan elemen <PrivateKey>
dengan algoritma Keluarga HS akan menyebabkan error ini.
Diagnosis
Identifikasi nama kebijakan Generate JWT, nama elemen, dan nama keluarga algoritme dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
, nama elemennya adalahPrivateKey
, dan kelompok algoritmenya adalahHMAC
:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Verifikasi bahwa elemen dan kelompok algoritme yang digunakan dalam XML kebijakan Generate JWT yang gagal cocok dengan elemen dan kelompok algoritme yang diidentifikasi dalam pesan error pada Langkah 1. Misalnya, kebijakan berikut menetapkan elemen sebagai
PrivateKey
dan kelompok algoritma sebagaiHMAC
, yang cocok dengan apa yang ada dalam pesan error:<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>
Jika nilai elemen
<Algorithm>
adalahHS256
, tetapi Anda telah menggunakan<PrivateKey>
, maka itulah penyebab error.Dalam contoh kebijakan Buat JWT yang ditampilkan di atas,
<PrivateKey>
digunakan meskipun<PrivateKey>
disetel ke algoritma keluarga,HS256
, sehingga menghasilkan error:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Resolusi
Pastikan elemen <PrivateKey>
hanya digunakan dengan algoritma RSA Family dan elemen <SecretKey>
hanya digunakan dengan algoritma HS Family.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, gunakan <SecretKey>
dari kebijakan GenerateJWT yang menggunakan algoritma 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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid Value for element : policy(policy_name) element(element_name).
Contoh pesan error
Error Saving Revision 2
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nilai yang ditentukan dalam elemen <Algorithm>
bukan salah satu dari nilai berikut:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Misalnya, menentukan nilai algoritme sebagai RS128
dalam elemen <Algorithm>
akan menyebabkan error ini.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama elemen dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama elemennya adalahAlgorithm.
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Periksa XML kebijakan Buat JWT yang gagal dan periksa nilai yang ditentukan untuk elemen
<Algorithm>
.Berikut ini contoh kebijakan Membuat 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>
Periksa nilai yang ditentukan dalam elemen
<Algorithm>
. Jika data yang ditampilkan bukan salah satu dari nilai berikut:HS256
,HS384
,HS512
,RS256
,RS384
,RS512
maka itulah penyebab kesalahannya.
Dalam contoh kebijakan Buat JWT yang ditampilkan di atas, nama
<Algorithm>
ditetapkan sebagaiHS128
. Karena ini bukan algoritma yang didukung, Anda mendapatkan error:Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Resolusi
Pastikan nilai yang ditentukan dalam elemen <Algorithm>
adalah salah satu nilai yang didukung:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, yang menggunakan elemen <SecretKey>
, ubah nilai <Algorithm>
menjadi HS25
. Catatan, saat elemen <SecretKey>
digunakan, Anda hanya dapat menggunakan algoritma Keluarga HS.
<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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Missing configuration element : policy(policy_name) element(element_name).
Contoh pesan error
Error Saving Revision 2
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika elemen <PrivateKey>
tidak digunakan dengan algoritma RSA Family dalam kebijakan Generate JWT. Demikian pula, error dapat terjadi jika elemen <SecretKey>
tidak digunakan dengan algoritma Keluarga HS dalam kebijakan Membuat JWT.
Misalnya, error ini terjadi jika tidak menggunakan elemen <PrivateKey>
dengan algoritma Keluarga RSA.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama elemen yang tidak ada dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama elemen yang tidak ada adalahSecretKey
.Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Periksa XML kebijakan Generate JWT yang gagal dan pastikan elemen yang ditunjukkan dalam pesan error tidak ada. Jika tidak ada, maka itulah penyebab error.
Misalnya, dalam kebijakan berikut,
SecretKey
tidak ada danAlgorithm
yang digunakan adalahHS256
:<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>
Contoh pembuatan kebijakan JWT menggunakan algoritma HS Family, tetapi elemen wajib
SecretKey
tidak ada, sehingga menghasilkan error:Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Resolusi
Pastikan elemen <PrivateKey>
wajib digunakan dengan algoritma RSA Family dan elemen <SecretKey>
wajib digunakan dengan algoritma HS Family.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, yang menggunakan algoritma HS256
, tambahkan elemen <SecretKey>
ke kebijakan Buat 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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
Contoh pesan error
Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika elemen turunan wajib <Value>
tidak ditentukan dalam elemen <PrivateKey>
atau <SecretKey>
dalam kebijakan Buat JWT.
Diagnosis
Identifikasi nama kebijakan Generate JWT dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
.Invalid Key configuration : policy(JWT-Generate-HS256).
Periksa XML kebijakan Membuat JWT yang gagal dan verifikasi apakah elemen turunan
<Value>
tidak ditentukan dalam elemen<PrivateKey>
atau<SecretKey>
. Jika<Value>
tidak ditentukan, maka itulah penyebab error.Misalnya, dalam kebijakan berikut, elemen turunan
<Value>
tidak didefinisikan dalam elemen<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>
Karena elemen turunan
<Value>
tidak ditentukan dalam elemen<SecretKey>
dari kebijakan Buat JWT, Anda akan mendapatkan error:Invalid Key configuration : policy(JWT-Generate-HS256).
Resolusi
Pastikan elemen turunan <Value>
selalu ditentukan di elemen <PrivateKey>
atau <SecretKey>
dari kebijakan Buat JWT.
Untuk memperbaiki contoh Membuat kebijakan JWT yang ditampilkan di atas, tentukan elemen turunan <Value>
pada elemen <SecretKey>
seperti yang ditampilkan di bawah ini:
<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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Empty Element for Key Configuration : policy(policy_name) element(element_name).
Contoh pesan error
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika atribut ref dalam elemen turunan <Value>
dari elemen <PrivateKey>
atau <SecretKey>
tidak ditentukan atau kosong.
Misalnya, jika elemen turunan <Value>
dari elemen <SecretKey>
kosong, error akan terjadi.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama elemen kosong dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Generate JWT adalah
JWT-Generate-HS256
dan nama elemen kosongnya adalahSecretKey/Value
.Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Periksa XML kebijakan Generate JWT yang gagal dan verifikasi apakah elemen yang diidentifikasi di Langkah 1 kosong. Jika kosong, maka itulah penyebab error.
Misalnya, kebijakan berikut menunjukkan bahwa elemen turunan
<Value>
dari elemen<SecretKey>
kosong:<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>
Karena elemen turunan
<Value>
dari elemen<SecretKey>
di kebijakan Generate JWT kosong, Anda mendapatkan error:Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolusi
Pastikan atribut ref dalam elemen turunan <Value>
dari elemen <PrivateKey>
atau <SecretKey>
selalu ditentukan dan memiliki awalan "private.
".
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, gunakan variabel flow private.privatekey
dalam elemen turunan <Value>
dari elemen <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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid variable name for secret : policy(policy_name) element(element_name).
Contoh pesan error
Error Saving Revision 2
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nama variabel flow yang ditentukan dalam atribut ref di elemen turunan <Value>
dari elemen <PrivateKey>
atau <SecretKey>
tidak menyertakan awalan pribadi (private.
).
For example :
Jika nama variabel flow ditetapkan sebagai mykey
dalam atribut ref elemen turunan <Value>
dari elemen <PrivateKey>
, error ini akan terjadi.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama elemen dengan nama variabel yang tidak valid dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama elemennya adalahSecretKey/Value
.Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Periksa XML kebijakan Generate JWT yang gagal dan verifikasi nama variabel yang digunakan dalam elemen, yang diidentifikasi pada Langkah 1. Jika nama variabel tidak memiliki awalan
private.
, berarti itulah penyebab error.Misalnya, kebijakan berikut menunjukkan bahwa elemen turunan
<Value>
dari elemen<SecretKey>
memiliki nama variabel yang tidak validmykey
:<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>
Karena nama variabel yang ditentukan dalam elemen turunan
<Value>
dari elemen<SecretKey>
kebijakan Buat JWT tidak memiliki awalanprivate.
, Anda akan mendapatkan error:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolusi
Pastikan atribut ref dalam elemen turunan <Value>
dari elemen <PrivateKey>
atau <SecretKey>
selalu ditentukan dan memiliki awalan private.
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, gunakan variabel flow private.privatekey
dalam elemen turunan <Value>
dari elemen <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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Specifying a secret in the configuration is invalid : policy(policy_name) element(element_name).
Contoh pesan error
Error Saving Revision 2
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nilai (rahasia) ditentukan secara eksplisit dalam:
- Elemen turunan
<Value>
atau<Password>
dari elemen<PrivateKey>
atau - Elemen turunan
<Value>
dari elemen<SecretKey>
di kebijakan "Buat JWT".
Misalnya, jika secret ditentukan secara eksplisit sebagai abc
dalam elemen turunan <Value>
dari elemen <SecretKey>
, error ini akan terjadi.
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama elemen yang rahasianya secara eksplisit ditentukan dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama elemennya adalahSecretKey/Value
.Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Periksa XML kebijakan Generate JWT yang gagal dan verifikasi apakah rahasia secara eksplisit ditentukan dalam elemen yang diidentifikasi pada Langkah 1. Jika ditentukan secara eksplisit, maka itulah penyebab error.
Misalnya, kebijakan berikut menunjukkan bahwa rahasia telah ditetapkan secara eksplisit dalam elemen turunan
<Value>
dari elemen<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>
Karena rahasia ditetapkan secara eksplisit dalam elemen turunan
<Value>
dari elemen<SecretKey>
pada kebijakan Generate JWT, Anda akan mendapatkan error:Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolusi
Pastikan bahwa nilai selalu ditentukan sebagai variabel alur di elemen turunan <Value>
dari elemen <PrivateKey>
atau <SecretKey>
.
Untuk memperbaiki contoh Buat kebijakan JWT yang ditampilkan di atas, gunakan variabel alur private.secretkey
dalam atribut ref elemen turunan <Value>
dari <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
Pesan error
Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:
Error Saving Revision 2 Invalid Time format: policy(policy_name) element(element_name).
Contoh pesan error
Error Saving Revision 3
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Screenshot contoh
Di UI Edge, Anda akan melihat kotak dialog dengan error:
Penyebab
Error ini terjadi jika nilai yang ditentukan dalam elemen <NotBefore>
tidak termasuk dalam salah satu format yang didukung:
sortable
, RFC 1123
, RFC 850
, ANCI-C
Misalnya, jika nilai yang ditentukan dalam <NotBefore>
adalah 20-JUN-1990 08:03
, yang bukan format yang didukung, error ini akan terjadi.
<NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore>
Diagnosis
Identifikasi nama kebijakan Generate JWT dan nama elemen yang memiliki format waktu yang tidak valid dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan Buat JWT adalah
JWT-Generate-HS256
dan nama elemennya adalahNotBefore
.Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Periksa XML kebijakan Generate JWT yang gagal dan verifikasi format waktu yang digunakan dalam elemen yang diidentifikasi pada Langkah 1. Jika elemen tidak menggunakan format yang didukung:
sortable
,RFC 1123
,RFC 850
,ANCI-C
maka itulah penyebab kesalahannya.
Misalnya, kebijakan berikut menunjukkan bahwa elemen turunan
<NotBefore>
menggunakan format waktu yang tidak didukung:<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>
Karena elemen
<NotBefore>
dari kebijakan Generate JWT tidak menggunakan format waktu yang didukung, Anda mendapatkan error:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolusi
Pastikan nilai yang ditentukan dalam elemen <NotBefore>
menggunakan salah satu format yang didukung:
sortable
, RFC 1123
, RFC 850
, ANCI-C
Untuk memperbaiki contoh Membuat kebijakan JWT, ubah tanggal dalam elemen <NotBefore>
untuk menggunakan format sortable
seperti yang ditunjukkan di bawah ini:
<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>