Está a ver a documentação do Apigee e do Apigee Hybrid.
Ver documentação do
Apigee Edge.
InvalidNameForAdditionalClaim
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid name for additional claim : policy(policy_name) claim(claim_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o nome da reivindicação usado no elemento secundário <Claim>
do elemento <AdditionalClaims>
for um dos seguintes nomes registados:
"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
As reivindicações registadas são especificadas no RFC 7519.
Por exemplo, usar o nome da reivindicação iss
no elemento <AdditionalClaims>
vai gerar este erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome da reivindicação na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome da reivindicação éiss
:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Verifique se o nome da reivindicação usado no elemento
<AdditionalClaims>
no XML da política Generate JWT com falha corresponde ao nome da reivindicação identificado na mensagem de erro (passo 1 acima). Por exemplo, a seguinte política especifica a reivindicação comoiss
, que corresponde ao que está na mensagem de erro:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name="iss"/> </AdditionalClaims> </GenerateJWT>
Se o nome da reivindicação usado no elemento secundário
<Claim>
do elemento<AdditionalClaims>
for um dos seguintes nomes registados:"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
Então, essa é a causa do erro.
No exemplo da política Generate JWT apresentado acima, o nome
<Claim>
é especificado comoiss
no elemento<AdditionalClaims>
, o que resulta no erro:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Resolução
Não use nenhum dos nomes registados "kid", "iss", "sub", "aud", "iat", "exp", "nbf" ou "jti" no elemento secundário <Claim>
do elemento<AdditionalClaims>
.
Para corrigir a política de geração de JWT de exemplo apresentada acima, altere o nome da reivindicação para 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</GenerateJWT>
InvalidTypeForAdditionalClaim
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o tipo de reivindicação usado no elemento filho <Claim>
do elemento <AdditionalClaims>
da política GenerateJWT não for um dos seguintes tipos:
string
(predefinição), number
, boolean
ou map
Por exemplo, a utilização do tipo de reivindicação integer
no elemento <AdditionalClaims>
resulta no erro.
Diagnóstico
Identifique o nome da política Generate JWT, o nome da reivindicação e o tipo de reivindicação na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
, o nome da reivindicação éclaim
e o tipo de reivindicação éinteger
:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Verifique se o nome da reivindicação e o tipo usados no elemento
<AdditionalClaims>
no XML da política de geração de JWT com falha correspondem ao nome e ao tipo da reivindicação identificados na mensagem de erro no passo 1. Por exemplo, a seguinte política especifica a reivindicação comoclaim
e o tipo comointeger
, o que corresponde ao que está na mensagem de erro:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='integer'/> </AdditionalClaims> </GenerateJWT>
Se o tipo de reivindicação usado no elemento secundário
<Claim>
do elemento<AdditionalClaims>
não for um dos seguintes tipos:string
(predefinição),number
,boolean
oumap
Então, essa é a causa do erro.
No exemplo da política Generate JWT apresentado acima, o tipo
<Claim>
no elemento<AdditionalClaims>
é especificado comointeger
. Uma vez queinteger
não é um tipo suportado, recebe o erro:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Resolução
Certifique-se de que apenas são usados tipos de dados suportados, como string
, number
, boolean
ou map
, no elemento filho <Claim>
do elemento <AdditionalClaims>
.
Para corrigir o exemplo da política Generate JWT apresentado acima, altere o tipo de reivindicação para 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</GenerateJWT>
MissingNameForAdditionalClaim
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
Exemplo de mensagem de erro
Error Saving Revision 2
Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o nome da reivindicação não for especificado no elemento subordinado <Claim>
do elemento <AdditionalClaims>
ou <AdditionalHeaders>
.
Diagnóstico
Identifique o nome da política Generate JWT a partir da mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Examine o XML da política Generate JWT com falhas e verifique se o nome da reivindicação está em falta no elemento secundário
<Claims>
no elemento<AdditionalClaims>
ou<AdditionalHeaders>
. Por exemplo, a seguinte política Generate JWT não especifica o nome da reivindicação no elemento<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim ref='reqclaim' type='boolean'/> </AdditionalClaims> </GenerateJWT>
Uma vez que o nome
<Claim>
não está especificado no elemento<AdditionalClaims>
, recebe o erro:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Resolução
Certifique-se de que o nome da reivindicação é sempre especificado no elemento subordinado <Claim>
do elemento <AdditionalClaims>
ou <AdditionalHeaders>
.
Para corrigir a política Generate JWT do exemplo apresentado acima, especifique o nome da reivindicação conforme mostrado abaixo:
<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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</GenerateJWT>
InvalidNameForAdditionalHeader
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid name for additional header : policy(policy_name)header(header_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o nome da reivindicação usado no elemento filho <Claim>
do elemento <AdditionalHeaders>
for um dos seguintes cabeçalhos JWT padrão:
alg
ou typ
Por exemplo, usar o nome da reivindicação alg
no elemento <AdditionalHeaders>
vai causar o erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome do cabeçalho na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do cabeçalho éalg
:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Verifique se o nome do cabeçalho usado no elemento secundário
<Claim>
no elemento<AdditionalHeaders>
do XML da política de geração de JWT com falha corresponde ao nome do cabeçalho identificado na mensagem de erro no passo 1. Por exemplo, a seguinte política especifica o cabeçalho comoalg
, que corresponde ao que está na mensagem de erro:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalHeaders> <Claim name="alg"/> </AdditionalHeaders> </GenerateJWT>
Se o nome do cabeçalho usado no elemento filho
<Claim>
do elemento<AdditionalClaims>
for um dos seguintes cabeçalhos JWT padrão:alg
outyp
Então, essa é a causa do erro.
No exemplo da política Generate JWT apresentado acima, o nome
<Claim>
é especificado comoalg
no elemento<AdditionalClaims>
, o que resulta no erro:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Resolução
Não use os cabeçalhos JWT padrão alg
ou typ
no elemento subordinado <Claim>
do elemento <AdditionalHeaders>
.
Para corrigir a política Generate JWT de exemplo apresentada acima, use o nome x5c
no elemento filho <Claim>
do elemento <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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='x5c'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidTypeForAdditionalHeader
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim1) type(integer).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
O erro ocorre se o tipo de reivindicação usado no elemento filho <Claim>
do elemento <AdditionalHeaders>
da política GenerateJWT não for um dos seguintes tipos:
string
(predefinição), number
, boolean
ou map
.
Por exemplo, a utilização do tipo de reivindicação integer
no elemento <AdditionalHeaders>
vai causar o erro.
Diagnóstico
Identifique o nome da política Generate JWT, o nome da reivindicação e o tipo de reivindicação na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
, o nome da reivindicação éclaim,
e o tipo de reivindicação éinteger:
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Verifique se o nome da reivindicação e o tipo de reivindicação usados no elemento
<AdditionalClaims>
no XML da política de geração de JWT com falha correspondem ao nome da reivindicação e ao tipo de reivindicação identificados na mensagem de erro no passo 1. Por exemplo, a seguinte política especifica a reivindicação comoclaim
e o tipo de reivindicação comointeger
, o que corresponde ao que está na mensagem de erro:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalHeaders> <Claim name='claim' ref='reqclaim' type='integer'/> </AdditionalHeaders> </GenerateJWT>
Se o tipo de reivindicação usado no elemento secundário
<Claim>
do elemento<AdditionalHeaders>
não for um dos seguintes tipos:string
(predefinição),number
,boolean
oumap
Então, essa é a causa do erro.
No exemplo da política Generate JWT apresentado acima, o tipo
<Claim>
no elemento<AdditionalHeaders>
é especificado comointeger
. Uma vez queinteger
não é um tipo suportado, recebe o erro:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Resolução
Certifique-se de que apenas os tipos de dados suportados string
, number
, boolean
ou map
são usados no elemento filho <Claim>
do elemento <AdditionalHeaders>
.
Para corrigir a política de geração de JWT do exemplo apresentado acima, altere o tipo de reivindicação para 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidValueOfArrayAttribute
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid value for array attribute: policy(policy_name)claim(claim_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o valor do atributo de matriz no elemento secundário <Claim>
do elemento <AdditionalClaims>
ou <AdditionalHeaders>
não estiver definido como true
ou false
.
Por exemplo, definir o valor do atributo de matriz como yes
no elemento filho <Claim>
de <AdditionalClaims>
ou <AdditionalHeaders>
provoca o erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome da reivindicação na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome da reivindicação éclaim:
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Verifique se o nome da reivindicação usado no elemento filho
<Claim>
no elemento<AdditionalHeaders>
do XML da política de geração de JWT com falha corresponde ao nome da reivindicação identificado na mensagem de erro no passo 1. Por exemplo, a seguinte política especifica o nome da reivindicação comoclaim
, que corresponde ao que está na mensagem de erro:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='yes'/> </AdditionalClaims> </GenerateJWT>
Se o valor do atributo
array
no elemento secundário<Claim>
do elemento<AdditionalClaims>
não estiver definido comotrue
oufalse
, essa é a causa do erro.Uma vez que o atributo
array
no elemento secundário<Claim>
do elemento<AdditionalClaims>
está definido comoyes
no exemplo acima, recebe o erro:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Resolução
Certifique-se de que o valor do atributo de matriz no elemento filho <Claim>
de <AdditionalClaims>
ou <AdditionalHeaders>
está definido como true
ou false
.
Para corrigir o exemplo da política Generate JWT apresentado acima, altere o valor do atributo de matriz para 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidConfigurationForActionAndAlgorithm
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
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>).
Exemplo de mensagem de erro
Error Saving Revision 2 Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o elemento <PrivateKey>
for usado com algoritmos da família HS e o elemento <SecretKey>
for usado com algoritmos da família RSA. O erro também ocorre se qualquer uma destas condições for verdadeira.
Por exemplo, usar o elemento <PrivateKey>
com algoritmos da família HS gera este erro.
Diagnóstico
Identifique o nome da política Generate JWT, o nome do elemento e o nome da família de algoritmos na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
, o nome do elemento éPrivateKey
e a família de algoritmos éHMAC
:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Verifique se o elemento e a família de algoritmos usados no XML da política Generate JWT com falha correspondem ao elemento e à família de algoritmos identificados na mensagem de erro no passo 1. Por exemplo, a política seguinte especifica o elemento como
PrivateKey
e a família de algoritmos comoHMAC
, o que corresponde ao que está na mensagem de erro:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array=tuu =/> </AdditionalClaims> </GenerateJWT>
Se o valor do elemento
<Algorithm>
forHS256
, mas tiver usado<PrivateKey>
, essa é a causa do erro.No exemplo da política Generate JWT apresentado acima, o
<PrivateKey>
é usado, mesmo que o<PrivateKey>
esteja definido para um algoritmo familiar,HS256
, o que resulta no erro:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Resolução
Certifique-se de que o elemento <PrivateKey>
é usado apenas com algoritmos de famílias de RSA e que o elemento <SecretKey>
é usado apenas com algoritmos de famílias de HS.
Para corrigir a política Generate JWT de exemplo apresentada acima, use o <SecretKey>
da política GenerateJWT que usa o algoritmo 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidValueForElement
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid Value for element : policy(policy_name) element(element_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o valor especificado no elemento <Algorithm>
não for um dos seguintes valores:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Por exemplo, especificar o valor do algoritmo como RS128
no elemento <Algorithm>
gera este erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome do elemento na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do elemento éAlgorithm.
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Examine o XML da política Generate JWT com falha e verifique o valor especificado para o elemento
<Algorithm>
.Segue-se um exemplo de uma política de geração de 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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='status' type='string'>Development</Claim> </AdditionalClaims> </GenerateJWT>
Examine o valor especificado no elemento
<Algorithm>
. Se não for um dos seguintes valores:HS256
,HS384
,HS512
,RS256
,RS384
,RS512
Então, essa é a causa do erro.
No exemplo da política Generate JWT apresentado acima, o nome
<Algorithm>
é especificado comoHS128
. Uma vez que este não é um algoritmo suportado, recebe o erro:Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Resolução
Certifique-se de que o valor especificado no elemento <Algorithm>
é um dos valores suportados:
HS256
, HS384
, HS512
, RS256
, RS384
, RS512
Para corrigir o exemplo da política Generate JWT apresentado acima, que usa o elemento <SecretKey>
, altere o valor de <Algorithm>
para HS25
. Tenha em atenção que, quando o elemento <SecretKey>
é usado, só pode usar algoritmos da família 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</GenerateJWT>
MissingConfigurationElement
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Missing configuration element : policy(policy_name) element(element_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre quando o elemento <PrivateKey>
não é usado com algoritmos da família RSA na política Generate JWT. Da mesma forma, o erro pode ocorrer se o elemento <SecretKey>
não for usado com algoritmos HS Family na política Generate JWT.
Por exemplo, não usar o elemento <PrivateKey>
com algoritmos RSA Family gera este erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome do elemento em falta na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do elemento em falta éSecretKey
.Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Examine o XML da política Generate JWT com falha e verifique se o elemento indicado na mensagem de erro está em falta. Se estiver em falta, é essa a causa do erro.
Por exemplo, na política seguinte, o elemento
SecretKey
está em falta e o elementoAlgorithm
usado éHS256
:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>
A política Generate JWT de exemplo usa algoritmos HS Family, mas o elemento obrigatório
SecretKey
está em falta, o que resulta no seguinte erro:Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Resolução
Certifique-se de que o elemento <PrivateKey>
obrigatório é usado com algoritmos RSA Family e que o elemento <SecretKey>
obrigatório é usado com algoritmos HS Family.
Para corrigir a política de geração de JWT de exemplo apresentada acima, que usa o algoritmo HS256
, adicione o elemento <SecretKey>
à política de geração de 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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidKeyConfiguration
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
Exemplo de mensagem de erro
Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o elemento subordinado obrigatório <Value>
não estiver definido nos elementos <PrivateKey>
ou <SecretKey>
na política Generate JWT.
Diagnóstico
Identifique o nome da política Generate JWT a partir da mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
.Invalid Key configuration : policy(JWT-Generate-HS256).
Examine o XML da política Generate JWT com falha e verifique se o elemento secundário
<Value>
não está definido nos elementos<PrivateKey>
ou<SecretKey>
. Se<Value>
não estiver definido, essa é a causa do erro.Por exemplo, na seguinte política, o elemento subordinado
<Value>
não está definido no elemento<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>
Uma vez que o elemento secundário
<Value>
não está definido no elemento<SecretKey>
da política Generate JWT, recebe o seguinte erro:Invalid Key configuration : policy(JWT-Generate-HS256).
Resolução
Certifique-se de que o elemento subordinado <Value>
está sempre definido nos elementos <PrivateKey>
ou <SecretKey>
da política Generate JWT.
Para corrigir a política Generate JWT de exemplo apresentada acima, defina o elemento secundário <Value>
no elemento <SecretKey>
, conforme mostrado abaixo:
<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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
EmptyElementForKeyConfiguration
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Empty Element for Key Configuration : policy(policy_name) element(element_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o atributo ref no elemento secundário <Value>
dos elementos <PrivateKey>
ou <SecretKey>
não for especificado ou estiver vazio.
Por exemplo, se o elemento secundário <Value>
do elemento <SecretKey>
estiver vazio, ocorre o erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome do elemento vazio na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do elemento vazio éSecretKey/Value
.Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Examine o XML da política Generate JWT com falhas e verifique se o elemento identificado no Passo 1 está vazio. Se estiver vazio, é essa a causa do erro.
Por exemplo, a seguinte política mostra que o elemento subordinado
<Value>
do elemento<SecretKey>
está vazio:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>
Uma vez que o elemento secundário
<Value>
do elemento<SecretKey>
na política Generate JWT está vazio, recebe o seguinte erro:Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolução
Certifique-se de que o atributo ref no elemento subordinado <Value>
dos elementos <PrivateKey>
ou <SecretKey>
é sempre especificado e tem o prefixo "private.
".
Para corrigir o exemplo da política Generate JWT apresentado acima, use a variável de fluxo private.privatekey
no elemento secundário <Value>
do elemento <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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidVariableNameForSecret
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid variable name for secret : policy(policy_name) element(element_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o nome da variável de fluxo especificado no atributo ref no elemento subordinado <Value>
dos elementos <PrivateKey>
ou <SecretKey>
não incluir o prefixo privado (private.
).
Por exemplo :
Se o nome da variável de fluxo for especificado como mykey
no atributo ref do elemento subordinado <Value>
do elemento <PrivateKey>
, ocorre este erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome do elemento com um nome de variável inválido na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do elemento éSecretKey/Value
.Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Examine o XML da política Generate JWT com falhas e verifique o nome da variável usado no elemento, identificado no passo 1. Se o nome da variável não tiver o prefixo
private.
, essa é a causa do erro.Por exemplo, a política seguinte mostra que o elemento subordinado
<Value>
do elemento<SecretKey>
tem o nome da variável inválidomykey
:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>
Uma vez que o nome da variável especificado no elemento subordinado
<Value>
do elemento<SecretKey>
da política Generate JWT não tem o prefixoprivate.
, recebe o seguinte erro:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolução
Certifique-se de que o atributo ref no elemento subordinado <Value>
dos elementos <PrivateKey>
ou <SecretKey>
é sempre especificado e tem o prefixo private.
.
Para corrigir a política Generate JWT de exemplo apresentada acima, use a variável de fluxo private.privatekey
no elemento secundário <Value>
do elemento <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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidSecretInConfig
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Specifying a secret in the configuration is invalid : policy(policy_name) element(element_name).
Exemplo de mensagem de erro
Error Saving Revision 2
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o valor (segredo) for especificado explicitamente no seguinte:
- Os elementos secundários
<Value>
ou<Password>
do elemento<PrivateKey>
ou - O elemento secundário
<Value>
do elemento<SecretKey>
na política Generate JWT.
Por exemplo, se o segredo for especificado explicitamente como abc
no elemento secundário <Value>
do elemento <SecretKey>
, ocorre este erro.
Diagnóstico
Identifique o nome da política Generate JWT e o nome do elemento no qual o segredo é especificado explicitamente na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do elemento éSecretKey/Value
.Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Examine o XML da política de geração de JWT com falha e verifique se o segredo está explicitamente especificado no elemento identificado no passo 1. Se for especificado explicitamente, essa é a causa do erro.
Por exemplo, a seguinte política mostra que o segredo foi especificado explicitamente no elemento subordinado
<Value>
do elemento<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>
Uma vez que o segredo é especificado explicitamente no elemento subordinado
<Value>
do elemento<SecretKey>
da política Generate JWT, recebe o seguinte erro:Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolução
Certifique-se de que o valor é sempre especificado como uma variável de fluxo no elemento secundário <Value>
dos elementos <PrivateKey>
ou <SecretKey>
.
Para corrigir a política Generate JWT de exemplo apresentada acima, use a variável de fluxo private.secretkey
no atributo ref do elemento filho <Value>
de <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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidTimeFormat
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision 2 Invalid Time format: policy(policy_name) element(element_name).
Exemplo de mensagem de erro
Error Saving Revision 3
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Captura de ecrã de exemplo
Na IU do Apigee, é apresentada uma caixa de diálogo com um erro:
Causa
Este erro ocorre se o valor especificado no elemento <NotBefore>
não estiver entre um dos formatos suportados:
sortable
, RFC 1123
, RFC 850
, ANCI-C
Por exemplo, se o valor especificado em <NotBefore>
for 20-JUN-1990 08:03
, que não é um formato suportado, ocorre este erro.
<NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore>
Diagnóstico
Identifique o nome da política Generate JWT e o nome do elemento que tem um formato de hora inválido na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política Generate JWT é
JWT-Generate-HS256
e o nome do elemento éNotBefore
.Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Examine o XML da política Generate JWT com falhas e valide o formato de hora usado no elemento identificado no passo 1. Se o elemento não usar nenhum dos formatos suportados:
sortable
,RFC 1123
,RFC 850
,ANCI-C
Então, essa é a causa do erro.
Por exemplo, a política seguinte mostra que o elemento filho
<NotBefore>
usa um formato de hora não suportado:<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-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>
Uma vez que o elemento
<NotBefore>
da política Generate JWT não usa nenhum dos formatos de hora suportados, recebe o erro:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Resolução
Certifique-se de que o valor especificado no elemento <NotBefore>
usa um dos formatos suportados:
sortable
, RFC 1123
, RFC 850
, ANCI-C
Para corrigir a política de geração de JWT de exemplo, modifique a data no elemento <NotBefore>
para usar o formato sortable
, conforme mostrado abaixo:
<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-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>