Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
InvalidNameForAdditionalClaim
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid name for additional claim : policy(policy_name) claim(claim_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se il nome della rivendicazione utilizzato nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
è uno dei seguenti nomi registrati:
"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
I claim registrati sono specificati nella RFC 7519.
Ad esempio, l'utilizzo del nome della rivendicazione iss
nell'elemento <AdditionalClaims>
causerà questo errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome della rivendicazione dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome del claim èiss
:Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
Verifica che il nome dell'affermazione utilizzato nell'elemento
<AdditionalClaims>
del criterio XML di verifica JWT non riuscito corrisponda al nome dell'affermazione identificato nel messaggio di errore del passaggio 1. Ad esempio, il seguente criterio specifica la rivendicazione comeiss
, che corrisponde a quanto indicato nel messaggio di errore:<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>
Se il nome della rivendicazione utilizzato nell'elemento secondario
<Claim>
dell'elemento<AdditionalClaims>
è uno dei seguenti nomi registrati:"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
allora è la causa dell'errore.
Nell'esempio di verifica del criterio JWT mostrato sopra, il nome
<Claim>
è specificato comeiss
nell'elemento<AdditionalClaims>
, causando l'errore:Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
Risoluzione
Non utilizzare nessuno dei nomi registrati "kid", "iss", "sub", "aud", "iat", "exp", "nbf" o "jti" nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
.
Per correggere il problema con il criterio di verifica JWT di esempio, modifica il nome del claim in status
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</VerifyJWT>
InvalidTypeForAdditionalClaim
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Il tipo di claim utilizzato nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
del criterio VerifyJWT non è uno dei seguenti tipi:
string
(valore predefinito), number
, boolean
o map
Ad esempio, l'utilizzo del tipo di rivendicazione integer
nell'elemento <AdditionalClaims>
causerà l'errore.
Diagnosi
Identifica il nome del criterio Verifica JWT, il nome del claim e il tipo dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
, il nome del claim èclaim
e il tipo èinteger:
Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
Verifica che il nome e il tipo di claim utilizzati nell'elemento
<AdditionalClaims>
nel file XML del criterio di verifica JWT non riuscito corrispondano al nome e al tipo di claim identificati nel messaggio di errore del passaggio 1. Ad esempio, la seguente norma specifica la rivendicazione comeclaim
e il tipo comeinteger
, che corrisponde a quanto indicato nel messaggio di errore:<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>
Se il tipo di rivendicazione utilizzato nell'elemento secondario
<Claim>
dell'elemento<AdditionalClaims>
non è uno dei seguenti tipi:string
(valore predefinito),number
,boolean
omap
allora è la causa dell'errore.
Nell'esempio di verifica del criterio JWT mostrato sopra, il tipo
<Claim>
è specificato comeinteger
nell'elemento<AdditionalClaims>
. Poichéinteger
non è un tipo supportato, viene visualizzato l'errore:Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
Risoluzione
Assicurati che nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
vengano utilizzati solo i tipi di dati supportati string
(valore predefinito), number
, boolean
o map
.
Per correggere l'esempio di verifica delle norme JWT, modifica il tipo di claim in boolean
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</VerifyJWT>
MissingNameForAdditionalClaim
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
Esempio di messaggio di errore
Error Saving Revision 2
Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se il nome della rivendicazione non è specificato nell'elemento figlio <Claim>
dell'elemento <AdditionalClaims>
o <AdditionalHeaders>
.
Diagnosi
Identifica il nome del criterio Verifica JWT dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
:Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
Esamina il file XML del criterio di verifica JWT non riuscito e verifica che il nome del claim non sia presente nell'elemento secondario
<Claims>
sotto l'elemento<AdditionalClaims>
o<AdditionalHeaders>
. Ad esempio, il seguente criterio Verifica JWT non specifica il nome del claim nell'elemento<AdditionalClaims>
:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim ref='reqclaim' type='boolean'/> </AdditionalClaims> </VerifyJWT>
Poiché il nome
<Claim>
non è specificato nell'elemento<AdditionalClaims>
, viene visualizzato l'errore:Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
Risoluzione
Assicurati che il nome della rivendicazione sia sempre specificato nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
o <AdditionalHeaders>
.
Per correggere l'esempio di verifica del criterio JWT, specifica il nome del claim come mostrato di seguito:
<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
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid name for additional header : policy(policy_name)header(header_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se il nome dell'attributo utilizzato nell'elemento secondario <Claim>
dell'elemento <AdditionalHeaders>
è una delle seguenti intestazioni JWT standard:
alg
o typ
Ad esempio, l'utilizzo del nome della rivendicazione alg
nell'elemento <AdditionalHeaders>
causerà l'errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'intestazione dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome dell'intestazione èalg
:Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
Verifica che il nome dell'intestazione utilizzato nell'elemento secondario
<Claim>
nell'elemento<AdditionalHeaders>
nel criterio XML di verifica JWT non riuscito corrisponda al nome dell'intestazione identificato nel messaggio di errore del passaggio 1. Ad esempio, il seguente criterio specifica l'intestazione comealg
, che corrisponde a quanto indicato nel messaggio di errore:<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>
Se il nome dell'intestazione utilizzato nell'elemento secondario
<Claim>
dell'elemento<AdditionalClaims>
è una delle seguenti intestazioni JWT standard:alg
otyp
allora è la causa dell'errore.
Nell'esempio di verifica del criterio JWT mostrato sopra, il nome
<Claim>
è specificato comealg
nell'elemento<AdditionalClaims>
, causando l'errore:Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
Risoluzione
Non utilizzare le intestazioni JWT standard alg
o typ
nell'elemento secondario <Claim>
dell'elemento <AdditionalHeaders>
.
Per correggere l'esempio del criterio Verifica JWT, utilizza il nome x5c
nell'elemento secondario <Claim>
dell'elemento <AdditionalHeaders>
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='x5c'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidTypeForAdditionalHeader
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim1) type(integer).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
L'errore si verifica se il tipo di claim utilizzato nell'elemento secondario <Claim>
dell'elemento <AdditionalHeaders>
del criterio Verifica JWT non è uno dei seguenti tipi:
string
(valore predefinito), number
, boolean
o map
Ad esempio, l'utilizzo del tipo di rivendicazione integer
nell'elemento <AdditionalHeaders>
causerà l'errore.
Diagnosi
Identifica il nome del criterio Verifica JWT, il nome del claim e il tipo dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
, il nome del claim èclaim
e il tipo èinteger
:Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).
Verifica che il nome e il tipo di claim utilizzati nell'elemento
<AdditionalClaims>
nel file XML del criterio di verifica JWT non riuscito corrispondano al nome e al tipo di claim identificati nel messaggio di errore del passaggio 1. Ad esempio, la seguente norma specifica la rivendicazione comeclaim
e il tipo di rivendicazione comeinteger,
, che corrisponde a quanto indicato nel messaggio di errore:<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>
Se il tipo di rivendicazione utilizzato nell'elemento secondario
<Claim>
dell'elemento<AdditionalHeaders>
non è uno dei seguenti tipi:string
(valore predefinito),number
,boolean
omap
allora è la causa dell'errore.
Nell'esempio di verifica del criterio JWT mostrato sopra, il tipo
<Claim>
nell'elemento<AdditionalHeaders>
è specificato comeinteger
. Poichéinteger
non è un tipo supportato, viene visualizzato l'errore:Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).
Risoluzione
Assicurati che nell'elemento secondario <Claim>
dell'elemento <AdditionalHeaders>
vengano utilizzati solo i tipi di dati supportati string
, number
, boolean
o map
.
Per correggere l'esempio di verifica delle norme JWT, modifica il tipo di claim in boolean
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidValueOfArrayAttribute
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid value for array attribute: policy(policy_name)claim(claim_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se il valore dell'attributo array nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
o <AdditionalHeaders>
non è impostato su true
o false
.
Ad esempio, l'errore si verifica se imposti il valore dell'attributo array su yes
nell'elemento secondario <Claim>
dell'elemento <AdditionalClaims>
o <AdditionalHeaders>
.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome della rivendicazione dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome del claim èclaim
:Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
Verifica che il nome del claim utilizzato nell'elemento secondario
<Claim>
nell'elemento<AdditionalHeaders>
nel criterio XML di verifica JWT non riuscito corrisponda al nome del claim identificato nel messaggio di errore del passaggio 1. Ad esempio, il seguente criterio specifica il nome della rivendicazione comeclaim
, che corrisponde a quanto indicato nel messaggio di errore:<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>
Se il valore dell'attributo
array
nell'elemento secondario<Claim>
dell'elemento<AdditionalClaims>
non è impostato sutrue
ofalse
, è questa la causa dell'errore.Poiché l'attributo
array
nell'elemento secondario<Claim>
dell'elemento<AdditionalClaims>
è impostato suyes
nell'esempio riportato sopra, viene visualizzato l'errore:Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
Risoluzione
Assicurati che il valore dell'attributo array nell'elemento secondario <Claim>
degli elementi <AdditionalClaims>
o <AdditionalHeaders>
sia impostato su true
o false
.
Per correggere il criterio di verifica JWT di esempio mostrato sopra, modifica il valore dell'attributo array in true
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidValueForElement
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision Invalid Value for element : policy(policy_name) element(element_name).
Esempio di messaggio di errore
Error Saving Revision
Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se il valore specificato nell'elemento <Algorithm>
non è uno dei seguenti:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Ad esempio, specificare il valore dell'algoritmo come RS128
nell'elemento <Algorithm>
genera questo errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'elemento dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome dell'elemento èAlgorithm
:Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
Esamina il file XML delle norme di verifica JWT non riuscito e controlla il valore specificato per l'elemento
<Algorithm>
.Ecco un esempio di criterio di verifica JWT:
<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS128</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='status' type='string'>Development</Claim> </AdditionalClaims> </VerifyJWT>
Esamina il valore specificato nell'elemento
<Algorithm>
. Se non è uno dei seguenti valori:HS256
,HS384
,HS512
,RS256
,RS384
,RS512
allora è la causa dell'errore.
Nell'esempio di norma di verifica JWT mostrato sopra, il nome
<Algorithm>
è specificato comeHS128
. Poiché non si tratta di un algoritmo supportato, viene visualizzato l'errore:Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
Risoluzione
Assicurati che il valore specificato nell'elemento <Algorithm>
sia uno dei valori supportati:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Per correggere il criterio di verifica JWT di esempio mostrato sopra, che utilizza l'elemento <SecretKey>
, modifica il valore di <Algorithm>
in HS25
. Tieni presente che, quando viene utilizzato l'elemento <SecretKey>
, puoi utilizzare solo gli algoritmi HS Family.
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</VerifyJWT>
MissingConfigurationElement
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision Missing configuration element : policy(policy_name) element(element_name).
Esempio di messaggio di errore
Error Saving Revision
Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica quando l'elemento <PublicKey>
non viene utilizzato con gli algoritmi RSA Family nel criterio Verifica JWT. Analogamente, l'errore può verificarsi se l'elemento <SecretKey>
non viene utilizzato con gli algoritmi HS Family nel criterio Verifica JWT.
Ad esempio, non utilizzare l'elemento <PublicKey>
con gli algoritmi RSA Family genera questo errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'elemento mancante dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome dell'elemento mancante èPublicKey
:Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
Esamina il file XML del criterio di verifica JWT non riuscito e verifica che l'elemento indicato nel messaggio di errore non sia presente. Se non è presente, è la causa dell'errore.
Ad esempio, la seguente norma mostra che
PublicKey
non è presente e cheAlgorithm
utilizzato èRS256
:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>
Il criterio di verifica JWT di esempio utilizza gli algoritmi della famiglia HS, ma manca l'elemento obbligatorio
PublicKey
, causando l'errore:Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
Risoluzione
Assicurati che l'elemento obbligatorio <PublicKey>
venga utilizzato con gli algoritmi della famiglia RSA e che l'elemento obbligatorio <PublicKey>
venga utilizzato con gli algoritmi della famiglia HS.<SecretKey>
Per correggere il criterio di verifica JWT di esempio mostrato sopra, che utilizza l'algoritmo RS256, aggiungi l'elemento <PublicKey>
al criterio VerifyJWT:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Algorithm>RS256</Algorithm>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidKeyConfiguration
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid Key configuration : policy(JWT-Verify-RS256).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se l'elemento secondario <Value>
o l'elemento secondario obbligatorio <JWKS>
non è definito negli elementi <PublicKey>
o <SecretKey>
del criterio Verifica JWT.
Diagnosi
Identifica il nome del criterio Verifica JWT dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
:Invalid Key configuration : policy(JWT-Verify-RS256).
Esamina il file XML del criterio di verifica JWT non riuscito e verifica se l'elemento secondario
<Value>
o l'elemento secondario<JWKS>
non è definito negli elementi<PublicKey>
o<SecretKey>
. Se l'elemento secondario non è definito, è la causa dell'errore.Ad esempio, il seguente criterio mostra che l'elemento secondario
<Value>
o<JWKS>
non è definito nell'elemento<PublicKey>
:<VerifyJWT name="JWT-Verify-RS256"> <DisplayName>JWT Verify RS256</DisplayName> <Algorithm>RS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <PublicKey> </PublicKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </VerifyJWT>
Poiché l'elemento secondario
<Value>
o<JWKS>
non è definito nell'elemento<PublicKey>
del criterio Verifica JWT, viene visualizzato l'errore:Invalid Key configuration : policy(JWT-Verify-RS256).
Risoluzione
Assicurati che l'elemento secondario <Value>
o <JWKS>
sia sempre definito nell'elemento <PublicKey>
del criterio Verifica JWT.
Per correggere l'esempio Verifica il criterio JWT, definisci l'elemento secondario <Value>
o <JWKS>
nell'elemento <PublicKey>
come mostrato di seguito:
<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
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Empty Element for Key Configuration : policy(policy_name) element(element_name).
Esempio di messaggio di errore
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se l'attributo ref nell'elemento secondario <Value>
o <JWKS>
dell'elemento <PublicKey>
non è specificato o è vuoto.
Ad esempio, se l'elemento secondario <Value>
dell'elemento <PublicKey>
è vuoto, si verifica l'errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'elemento vuoto dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome dell'elemento èPublicKey/Value
:Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
Esamina il file XML del criterio di verifica JWT non riuscito e verifica che l'elemento identificato nel passaggio 1 sia vuoto. Se è vuoto, è la causa dell'errore.
Ad esempio, le seguenti norme mostrano che l'elemento secondario
<Value>
dell'elemento<PublicKey>
è vuoto:<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>
Poiché l'elemento secondario
<Value>
dell'elemento<PublicKey>
del criterio Verifica JWT è vuoto, viene visualizzato l'errore:Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
Risoluzione
Assicurati che l'attributo ref nell'elemento secondario <Value>
o <JWKS>
dell'elemento <PublicKey>
sia sempre specificato.
Per correggere l'esempio del criterio Verifica JWT, utilizza la variabile di flusso public.publickey
nell'elemento secondario <Value>
dell'elemento <PublicKey>
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidConfigurationForVerify
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid configuration element for verify : policy(policy_name) element(element_name).
Esempio di messaggio di errore
Error Saving Revision 3
Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se l'elemento <Id>
è definito all'interno dell'elemento <SecretKey>
di un criterio VerifyJWT.
Ad esempio, se l'elemento <Id>
è definito nell'elemento <SecretKey>
, si verifica questo errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'elemento non valido dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome dell'elemento èSecretKey/Id
:Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)
Esamina il file XML del criterio di verifica JWT non riuscito e verifica che l'elemento non valido identificato nel passaggio 1 sia definito. Se è definito, è la causa dell'errore.
Ad esempio, il seguente criterio mostra che l'elemento secondario
<Id>
dell'elemento<SecretKey>
è definito:<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>
Poiché l'elemento
<Id>
è definito all'interno dell'elemento<SecretKey>
del criterio Verifica JWT, viene visualizzato l'errore:Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)
Risoluzione
Assicurati che l'elemento <Id>
non sia mai definito all'interno dell'elemento <SecretKey>
di un criterio di verifica JWT.
Per correggere il criterio di verifica JWT di esempio, rimuovi l'elemento secondario <Id>
dall'elemento <SecretKey>
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref='private.secretkey'/>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidEmptyElement
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving RevisionInvalid empty element : policy(policy_name) element(element_name).
Esempio di messaggio di errore
Error Saving Revision 3
Invalid empty element : policy(JWT-Verify-HS256) element(Source).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se l'elemento <Source>
del criterio Verifica JWT è vuoto. Se presente, deve essere definito con un nome di variabile di flusso.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'elemento vuoto dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e il nome dell'elemento èPublicKey/Value
:Invalid empty element : policy(JWT-Verify-HS256) element(Source).
Esamina il file XML del criterio di verifica JWT non riuscito e verifica che l'elemento identificato nel passaggio 1 sia vuoto. Se è vuoto, è la causa dell'errore.
Ad esempio, la seguente norma mostra che l'elemento
<Source>
è vuoto:<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>
Poiché l'elemento
<Source>
del criterio Verifica JWT è vuoto, viene visualizzato l'errore:Invalid empty element : policy(JWT-Verify-HS256) element(Source).
Risoluzione
Se è presente l'elemento <Source>
di un criterio di verifica JWT, assicurati che specifichi una variabile di flusso.
Per correggere l'esempio del criterio Verifica JWT, utilizza una variabile di flusso valida nell'elemento <Source>
:
<VerifyJWT name="JWT-Verify-RS256">
<DisplayName>JWT Verify RS256</DisplayName>
<Algorithm>RS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Source>jwt-variable</Source>
<PublicKey>
<Value ref="public.publickey"/>
</PublicKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</VerifyJWT>
InvalidPublicKeyValue
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid Public Key Value in Configuration : policy(policy_name) element(element_name).
Esempio di messaggio di errore
Error Saving Revision 2
Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se il valore utilizzato nell'elemento secondario <JWKS>
dell'elemento <PublicKey>
non è in un formato valido come specificato nel RFC 7517.
Ad esempio, l'utilizzo di abc
come valore dell'elemento secondario <JWKS>
nell'elemento <PublicKey>
causerà questo errore.
Diagnosi
Identifica il nome del criterio Verifica JWT e il nome dell'elemento contenente un valore non valido dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-RS256
e l'elemento èPublicKey/JWKS
:Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
Esamina il file XML delle norme di verifica JWT non riuscito e verifica che l'elemento identificato nel passaggio 1 contenga un valore in un formato valido come da RFC 7517. Se il valore dell'elemento non è in un formato valido, è la causa dell'errore.
<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>
Poiché il valore nell'elemento secondario
<JWKS>
dell'elemento<PublicKey>
non è in un formato valido secondo lo standard RFC 7517, viene visualizzato l'errore:Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
Risoluzione
Assicurati che il valore specificato nell'elemento secondario <JWKS>
dell'elemento <PublicKey>
sia una stringa o una variabile di flusso valida in un formato JWKS valido (RFC 7517).
Per correggere il criterio di verifica JWT di esempio, modifica il valore di <JWKS>
come mostrato di seguito:
<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
Messaggio di errore
Il deployment del proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
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>).
Esempio di messaggio di errore
Error Saving Revision
Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
Screenshot di esempio
Nell'interfaccia utente di Apigee viene visualizzata una finestra di dialogo con un errore:
Causa
Questo errore si verifica se l'elemento <PublicKey>
viene utilizzato con gli algoritmi della famiglia HS e l'elemento <SecretKey>
viene utilizzato con gli algoritmi della famiglia RSA. L'errore si verifica anche se una di queste condizioni è vera.
Ad esempio, l'utilizzo dell'elemento <PublicKey>
con gli algoritmi HS Family genera questo errore.
Diagnosi
Identifica il nome del criterio Verifica JWT, il nome dell'elemento e il nome della famiglia di algoritmi dal messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio Verifica JWT è
JWT-Verify-HS256
, il nome dell'elemento èPublicKey
e la famiglia di algoritmi èRSA
:Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
Verifica che l'elemento e la famiglia di algoritmi utilizzati nel criterio XML di verifica JWT non riuscito corrispondano all'elemento e alla famiglia di algoritmi identificati nel messaggio di errore del passaggio 1. Ad esempio, il seguente criterio specifica l'elemento come
PublicKey
e la famiglia di algoritmi comeHMAC
, che corrisponde a quanto indicato nel messaggio di errore<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>
Se il valore dell'elemento
<Algorithm>
èHS256
, ma hai utilizzato<PublicKey>
, questa è la causa dell'errore.Nell'esempio di criterio Verifica JWT mostrato sopra, l'elemento
<PublicKey>
viene utilizzato anche se<Algorithm>
è impostato su un algoritmo di famiglia HS256, con il seguente errore:Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
Risoluzione
Assicurati che l'elemento <PublicKey>
venga utilizzato solo con gli algoritmi RSA Family e che l'elemento <SecretKey>
venga utilizzato solo con gli algoritmi HS Family.
Per correggere il criterio di verifica JWT di esempio, utilizza <SecretKey>
dal criterio VerifyJWT che utilizza l'algoritmo HS256:
<VerifyJWT name="JWT-Verify-HS256">
<DisplayName>JWT Verify HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Source>request.formparam.jwt</Source>
<SecretKey>
<Value ref="private.secretkey"/>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
</VerifyJWT>