Sie lesen gerade die Dokumentation zu Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen.
InvalidNameForAdditionalClaim
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid name for additional claim : policy(policy_name) claim(claim_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der Name der Anforderung, die im untergeordneten Element <Claim> des <AdditionalClaims>-Elements verwendet wird, einer der folgenden registrierten Namen ist:
„kid“, „iss“, „sub“, „aud“, „iat“, „exp“, „nbf“, „jti“
Die registrierten Anforderungen sind in RFC 7519 angegeben.
Wenn Sie beispielsweise den Anforderungsnamen iss unter dem Element <AdditionalClaims> verwenden, führt dies zu diesem Fehler.
Diagnose
Geben Sie den Namen der Generate JWT-Richtlinie und den Namen der Anforderung aus der Fehlermeldung an. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie beispielsweise
JWT-Generate-HS256und der Name der Anforderungiss:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).Überprüfen Sie, ob der Anforderungsname, der unter dem Element
<AdditionalClaims>in der fehlgeschlagenen XML-Datei "Generate JWT-Richtlinie" verwendet wird, mit dem in der Fehlermeldung (Schritt 1 oben) identifizierten Anforderungsnamen übereinstimmt. Die folgende Richtlinie gibt beispielsweise die Anforderung alsissan, was dem Inhalt der Fehlermeldung entspricht:<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>Wenn der im untergeordneten Element
<Claim>des Elements<AdditionalClaims>verwendete Anforderungsname einer der folgenden registrierten Namen ist:"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"
Dann ist das die Ursache des Fehlers.
Im oben gezeigten Beispiel der Generate JWT-Richtlinie wird der Name
<Claim>alsissunter dem Element<AdditionalClaims>angegeben, was den Fehler verursacht:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
Lösung
Verwenden Sie im registrierten Element keinen der registrierten Namen "kid", "iss", "sub", "aud", "iat", "exp", "nbf" oder "jti" im untergeordneten Element <Claim> des Elements <AdditionalClaims>.
Wenn Sie die oben gezeigte Generate JWT-Richtlinie korrigieren möchten, ändern Sie den Anforderungsnamen auf 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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn die Art der Anforderung, die im untergeordneten Element <Claim> des Elements <AdditionalClaims> der GenerateJWT-Richtlinie verwendet wird, keiner der folgenden Typen ist:
string (Standard), number, boolean, oder map
Wird beispielsweise der Anforderungstyp integer unter dem <AdditionalClaims>-Element verwendet, führt dies zu einem Fehler.
Diagnose
Identifizieren Sie den Namen der Generate JWT-Richtlinie, den Anforderungsnamen und den Anforderungstyp aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie beispielsweise
JWT-Generate-HS256, der Name der Anforderungclaimund der Anforderungstypinteger:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).Überprüfen Sie, ob der Anforderungsname und -typ, die unter dem Element
<AdditionalClaims>in der fehlgeschlagenen XML-Datei "Generate JWT-Richtlinie" verwendet werden, mit dem in der Fehlermeldung (Schritt 1) identifizierten Anforderungsnamen und -typ übereinstimmen. Die folgende Richtlinie gibt beispielsweise die Anforderung alsclaimund den Typ alsintegeran, was dem Inhalt der Fehlermeldung entspricht:<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>Der Anforderungstyp, der im untergeordneten Element
<Claim>des<AdditionalClaims>-Elements verwendet wird, ist keiner der folgenden Typen:string(Standard),number,boolean, odermapDann ist das die Ursache des Fehlers.
In der Beispielrichtlinie Generate JWT ist für den Typ
<Claim>unter dem Element<AdditionalClaims>der Wertintegerangegeben. Daintegerkein unterstützter Typ ist, erhalten Sie folgende Fehlermeldung:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
Lösung
Achten Sie darauf, dass nur unterstützte Datentypen wie string, number, boolean oder map im untergeordneten Element <Claim> des <AdditionalClaims>-Elements verwendet werden.
Wenn Sie die oben gezeigte Generate JWT-Richtlinie korrigieren möchten, ändern Sie den Anforderungstyp auf 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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
Beispiel für Fehlermeldung
Error Saving Revision 2
Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der Name der Anforderung nicht im untergeordneten Element <Claim> des Elements <AdditionalClaims> oder <AdditionalHeaders> angegeben wird.
Diagnose
Ermitteln Sie den Namen der Generate JWT-Richtlinie aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie zum Beispiel
JWT-Generate-HS256:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in ClaimÜberprüfen Sie die fehlgeschlagene Generate JWT-Richtlinien-XML und prüfen Sie, ob der Name der Anforderung im untergeordneten Element
<Claims>unter den Elementen<AdditionalClaims>oder<AdditionalHeaders>fehlt. Die folgende Generate JWT-Richtlinie gibt beispielsweise den Anforderungsnamen nicht unter dem Element<AdditionalClaims>an:<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>Da der
<Claim>-Name unter dem Element<AdditionalClaims>nicht angegeben wird, erhalten Sie folgende Fehlermeldung:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
Lösung
Vergewissern Sie sich, dass der Name der Anforderung immer im untergeordneten Element <Claim> des Elements <AdditionalClaims> oder <AdditionalHeaders> angegeben wird.
Zur Korrektur des oben gezeigten Beispiels für eine Generate JWT-Richtlinie müssen Sie den Namen der Anforderung so angeben:
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid name for additional header : policy(policy_name)header(header_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der Name der im untergeordneten Element <Claim> des Elements <AdditionalHeaders> verwendeten Anforderung einer der folgenden Standard-JWT-Header ist:
alg oder typ
Beispiel: Wenn Sie den Anforderungsnamen alg unter dem <AdditionalHeaders>-Element verwenden, wird der Fehler verursacht.
Diagnose
Identifizieren Sie den Namen der Generate JWT-Richtlinie und den Header-Namen anhand der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie zum Beispiel
JWT-Generate-HS256und der Header-Namealg:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).Überprüfen Sie, ob der Header-Name, der im untergeordneten Element
<Claim>unter dem Element<AdditionalHeaders>in der fehlgeschlagenen XML-Richtlinie "Generate JWT" verwendet wird, mit dem in der Fehlermeldung in Schritt 1 identifizierten Header-Namen übereinstimmt. Die folgende Richtlinie gibt beispielsweise den Header alsalgan, was dem Inhalt der Fehlermeldung entspricht:<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>Wenn der im untergeordneten Element
<Claim>des Elements<AdditionalClaims>verwendete Header-Name einer der folgenden Standard-JWT-Header ist:algodertypDann ist das die Ursache des Fehlers.
Im oben gezeigten Beispiel der Generate JWT-Richtlinie wird der Name
<Claim>alsalgunter dem Element<AdditionalClaims>angegeben, was den Fehler verursacht:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
Lösung
Verwenden Sie die Standard-JWT-Header alg oder typ nie im untergeordneten <Claim>-Element des <AdditionalHeaders>-Elements.
Verwenden Sie den Namen x5c im untergeordneten Element <Claim> des Elements <AdditionalHeaders>, um die oben gezeigte Richtlinie "Generate JWT" zu korrigieren:
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim1) type(integer).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Der Fehler tritt auf, wenn der Anforderungstyp, der im untergeordneten Element <Claim> des Elements <AdditionalHeaders> der GenerateJWT-Richtlinie verwendet wird, nicht zu den folgenden Typen gehört:
string (Standard), number, boolean, oder map.
Beispiel: Wenn Sie den Anforderungstyp integer unter dem <AdditionalHeaders>-Element verwenden, wird der Fehler verursacht.
Diagnose
Identifizieren Sie den Namen der Generate JWT-Richtlinie, den Anforderungsnamen und den Anforderungstyp aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie beispielsweise
JWT-Generate-HS256, der Name der Anforderungclaim,und der Anforderungstypinteger:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).Überprüfen Sie, ob der Anforderungsname und -typ, die unter dem Element
<AdditionalClaims>in der fehlgeschlagenen XML-Datei "Generate JWT-Richtlinie" verwendet werden, mit dem in der Fehlermeldung (Schritt 1) identifizierten Anforderungsnamen und -typ übereinstimmen. Die folgende Richtlinie gibt beispielsweise die Anforderung alsclaimund den Typ alsintegeran, was dem Inhalt der Fehlermeldung entspricht:<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>Der Anforderungstyp, der im untergeordneten Element
<Claim>des<AdditionalHeaders>-Elements verwendet wird, ist keiner der folgenden Typen:string(Standard),number,boolean, odermapDann ist das die Ursache des Fehlers.
In der Beispielrichtlinie Generate JWT ist für den Typ
<Claim>unter dem Element<AdditionalHeaders>der Wertintegerangegeben. Daintegerkein unterstützter Typ ist, erhalten Sie folgende Fehlermeldung:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
Lösung
Achten Sie darauf, dass nur die unterstützten Datentypen string, number, boolean oder map im untergeordneten Element <Claim> des <AdditionalHeaders>-Elements verwendet werden.
Wenn Sie die oben gezeigte Generate JWT-Richtlinie korrigieren möchten, ändern Sie den Anforderungstyp auf 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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid value for array attribute: policy(policy_name)claim(claim_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der Wert des Arrayattributs im untergeordneten Element <Claim> des Elements <AdditionalClaims> oder <AdditionalHeaders> nicht auf true oder false festgelegt ist.
Der Fehler tritt beispielsweise auf, wenn Sie den Wert des Arrayattributs im untergeordneten Element <Claim> von <AdditionalClaims> oder <AdditionalHeaders> auf yes festlegen.
Diagnose
Geben Sie den Namen der Generate JWT-Richtlinie und den Namen der Anforderung aus der Fehlermeldung an. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie beispielsweise
JWT-Generate-HS256und der Name der Anforderungclaim:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).Überprüfen Sie, ob der Anforderungsname, der im untergeordneten Element
<Claim>unter dem Element<AdditionalHeaders>in der fehlgeschlagenen XML-Richtlinie "Generate JWT" verwendet wird, mit dem in der Fehlermeldung in Schritt 1 identifizierten Anforderungsnamen übereinstimmt. Die folgende Richtlinie gibt beispielsweise den Anforderungsnamen alsclaiman, was dem Inhalt der Fehlermeldung entspricht:<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>Wenn der Wert des Attributs
arrayim untergeordneten Element<Claim>des<AdditionalClaims>-Elements nicht auftrueoderfalsefestgelegt ist, ist dies die Fehlerursache.Da das Attribut
arrayim untergeordneten Element<Claim>des Elements<AdditionalClaims>im obigen Beispiel aufyesgesetzt ist, erhalten Sie folgende Fehlermeldung:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
Lösung
Achten Sie darauf, dass der Wert des Arrayattributs im untergeordneten Element <Claim> von <AdditionalClaims> oder <AdditionalHeaders> auf true oder false festgelegt ist.
Um die oben angezeigte Generate JWT-Richtlinie zu korrigieren, ändern Sie den Wert des Arrayattributs auf 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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
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>).
Beispiel für Fehlermeldung
Error Saving Revision 2 Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn das Element <PrivateKey> mit HS-Familienalgorithmen und das <SecretKey>-Element mit RSA-Familienalgorithmen verwendet wird. Der Fehler tritt auch auf, wenn eine dieser Bedingungen erfüllt ist.
Beispielsweise tritt dieser Fehler auf, wenn das Element <PrivateKey> mit HS-Family-Algorithmen verwendet wird.
Diagnose
Identifizieren Sie den Namen der Generate JWT-Richtlinie, den Elementnamen und den Namen der Algorithmusfamilie aus der Fehlermeldung. Beispiel: In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256, der Name des ElementsPrivateKeyund die AlgorithmusfamilieHMAC:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).Prüfen Sie, ob die in der XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie verwendete Element- und Algorithmusfamilienkombination mit der in Schritt 1 in der Fehlermeldung angegebenen Element- und Algorithmusfamilienkombination übereinstimmen. Folgende Richtlinie gibt beispielsweise das Element als
PrivateKeyund die Algorithmusfamilie alsHMACan, was mit der Fehlermeldung übereinstimmt:<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>Wenn der Wert des Elements
<Algorithm>HS256lautet, Sie aber<PrivateKey>verwendet haben, ist dies die Ursache des Fehlers.Im oben gezeigten Beispiel der Generate JWT-Richtlinie wird
<PrivateKey>verwendet, obwohl<PrivateKey>auf einen Familienalgorithmus (HS256) festgelegt ist, was den Fehler verursacht:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
Lösung
Achten Sie darauf, dass das Element <PrivateKey> nur mit Algorithmen der RSA-Familie und das Element <SecretKey> nur mit Algorithmen der HS-Familie verwendet wird.
Verwenden Sie zum Korrigieren der oben gezeigten Generate JWT-Richtlinie das <SecretKey> aus der GenerateJWT-Richtlinie, die den HS256-Algorithmus verwendet:
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid Value for element : policy(policy_name) element(element_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der im Element <Algorithm> angegebene Wert keinen der folgenden Werte enthält:
HS256, HS384, HS512, RS256, RS384 oder RS512
Wenn Sie beispielsweise den Algorithmuswert im Element <Algorithm> als RS128 angeben, führt das zu diesem Fehler.
Diagnose
Ermitteln Sie den Namen der Generate JWT-Richtlinie und den Elementnamen aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256und der Elementname istAlgorithm..Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).Überprüfen Sie die XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie und überprüfen Sie den für das Element
<Algorithm>angegebenen Wert.Hier ist ein Beispiel für eine Generate JWT-Richtlinie:
<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>Prüfen Sie den im Element
<Algorithm>angegebenen Wert. Ist dies nicht einer der WerteHS256,HS384,HS512,RS256,RS384oderRS512,Dann ist das die Ursache des Fehlers.
In der obigen beispielhaften Generate JWT-Richtlinie ist der Name
<Algorithm>alsHS128angegeben. Da es sich nicht um einen unterstützten Algorithmus handelt, erhalten Sie folgende Fehlermeldung:Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
Lösung
Achten Sie darauf, dass der im Element <Algorithm> angegebene Wert einer der unterstützten Werte ist:
HS256, HS384, HS512, RS256, RS384, RS512
Zur Korrektur der oben gezeigten beispielhaften Generate JWT-Richtlinie, die das Element <SecretKey> verwendet, ändern Sie den Wert von <Algorithm> in HS25. Hinweis: Bei Verwendung des Elements <SecretKey> können Sie nur Algorithmen der HS-Familie verwenden.
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Missing configuration element : policy(policy_name) element(element_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn das Element <PrivateKey> nicht mit RSA-Familienalgorithmen in der Generate JWT-Richtlinie verwendet wird. Ebenso kann der Fehler auftreten, wenn das Element <SecretKey> nicht mit HS-Familienalgorithmen in der Generate JWT-Richtlinie verwendet wird.
Wenn Sie beispielsweise nicht das <PrivateKey>-Element mit RSA-Familienalgorithmen verwenden, führt dies zu diesem Fehler.
Diagnose
Identifizieren Sie in der Fehlermeldung den Namen der Generate JWT-Richtlinie und den fehlenden Elementnamen. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256und der fehlende ElementnameSecretKey.Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).Untersuchen Sie die XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie und prüfen Sie, ob das in der Fehlermeldung angegebene Element fehlt. Wenn es fehlt, ist dies die Ursache des Fehlers.
In folgender Richtlinie fehlt zum Beispiel
SecretKeyund der verwendeteAlgorithmistHS256:<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>In der Beispiel-Generate JWT-Richtlinie werden Algorithmen der HS-Familie verwendet, aber das obligatorische Element
SecretKeyfehlt, was den Fehler verursacht:Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
Lösung
Vergewissern Sie sich, dass das obligatorische <PrivateKey>-Element mit RSA-Algorithmen verwendet wird und das obligatorische <SecretKey>-Element mit HS-Familienalgorithmen verwendet wird.
Um das oben dargestellte Beispiel einer Generate JWT-Richtlinie, die den Algorithmus HS256 verwendet, zu korrigieren, fügen Sie der Generate JWT-Richtlinie das Element <SecretKey> hinzu:
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
Beispiel für Fehlermeldung
Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn das erforderliche untergeordnete Element <Value> in den Elementen <PrivateKey> oder <SecretKey> in der Generate JWT-Richtlinie nicht definiert ist.
Diagnose
Ermitteln Sie den Namen der Generate JWT-Richtlinie aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie zum Beispiel
JWT-Generate-HS256:Invalid Key configuration : policy(JWT-Generate-HS256).Prüfen Sie die fehlgeschlagene Generate JWT-Richtlinien-XML-Datei und stellen Sie sicher, dass das untergeordnete Element
<Value>nicht in den Elementen<PrivateKey>oder<SecretKey>definiert ist. Ist<Value>nicht definiert, ist dies die Fehlerursache.Zum Beispiel ist in folgender Richtlinie das untergeordnete Element
<Value>nicht im Element<SecretKey>definiert:<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>Da das untergeordnete Element
<Value>nicht im<SecretKey>-Element der Generate JWT-Richtlinie definiert ist, erhalten Sie diesen Fehler:Invalid Key configuration : policy(JWT-Generate-HS256).
Lösung
Achten Sie darauf, dass das untergeordnete Element <Value> immer in den Elementen <PrivateKey> oder <SecretKey> der Generate JWT-Richtlinie definiert ist.
Um das oben dargestellte Beispiel einer Generate JWT-Richtlinie zu korrigieren, definieren Sie das untergeordnete Element <Value> unter dem Element <SecretKey> wie unten dargestellt:
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Empty Element for Key Configuration : policy(policy_name) element(element_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn das ref-Attribut im untergeordneten Element <Value> der <PrivateKey>- oder <SecretKey>-Elemente nicht angegeben oder leer ist.
Wenn beispielsweise das untergeordnete Element <Value> des Elements <SecretKey> leer ist, tritt der Fehler auf.
Diagnose
Ermitteln Sie den Namen der Generate JWT-Richtlinie und den Namen der leeren Elemente aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256und der leere Elementname istSecretKey/Value.Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).Untersuchen Sie die XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie und stellen Sie sicher, dass das in Schritt 1 identifizierte Element leer ist. Wenn es leer ist, ist dies die Fehlerursache.
In der folgenden Richtlinie können Sie beispielsweise sehen, dass das untergeordnete Element
<Value>des Elements<SecretKey>leer ist:<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>Da das untergeordnete Element
<Value>des Elements<SecretKey>in der Generate JWT-Richtlinie leer ist, wird folgende Fehlermeldung angezeigt:Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
Lösung
Achten Sie darauf, dass das ref-Attribut im untergeordneten Element <Value> der <PrivateKey>- oder <SecretKey>-Elemente immer angegeben ist und das Präfix „private.“ hat.
Verwenden Sie zum Korrigieren des Beispiels der Generate JWT-Richtlinie oben die Ablaufvariable private.privatekey des untergeordneten Elements <Value> des Elements <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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid variable name for secret : policy(policy_name) element(element_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der Ablaufvariablenname, der im Attribut "ref" im untergeordneten Element <Value> der <PrivateKey> oder <SecretKey>-Elemente angegeben ist, nicht das private Präfix (private. ) enthält.
Beispiel:
Wenn der Name der Ablaufvariablen als mykey im Ref-Attribut des untergeordneten Elements <Value> des Elements <PrivateKey> angegeben ist, tritt dieser Fehler auf.
Diagnose
Ermitteln Sie den Namen der Generate JWT-Richtlinie und den Namen des Elements mit einem ungültigen Variablennamen aus der Fehlermeldung. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256und der Elementname istSecretKey/Value.Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).Untersuchen Sie die XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie und prüfen Sie den in Schritt 1 ermittelten, im Element verwendeten Variablennamen. Hat der Variablenname nicht das Präfix
private., ist dies die Ursache des Fehlers.Folgende Richtlinie zeigt beispielsweise, dass das untergeordnete Element
<Value>des Elements<SecretKey>den ungültigen Variablennamenmykeyenthält:<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>Da der angegebene Variablenname im untergeordneten Element
<Value>des<SecretKey>-Elements der Generate JWT-Richtlinie nicht das Präfixprivate.enthält, wird folgende Fehlermeldung angezeigt:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Lösung
Achten Sie darauf, dass das ref-Attribut im untergeordneten Element <Value> der <PrivateKey>- oder <SecretKey>-Elemente immer angegeben ist und das Präfix private. hat.
Verwenden Sie zum Korrigieren des Beispiels der Generate JWT-Richtlinie oben die Ablaufvariable private.privatekey des untergeordneten Elements <Value> des Elements <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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Specifying a secret in the configuration is invalid : policy(policy_name) element(element_name).
Beispiel für Fehlermeldung
Error Saving Revision 2
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der Wert (Secret) ausdrücklich im folgenden Bereich angegeben wird:
- Die untergeordneten Elemente
<Value>oder<Password>des<PrivateKey>-Elements oder - Das untergeordnete Element
<Value>des<SecretKey>-Elements
in der Generate JWT-Richtlinie.
Wenn das Secret beispielsweise explizit im untergeordneten Element <Value> des <SecretKey>-Elements als abc angegeben ist, tritt dieser Fehler auf.
Diagnose
Geben Sie den Namen der Generate JWT-Richtlinie und den Namen des Elements an, in dem das Secret explizit aus der Fehlermeldung angegeben ist. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256und der Elementname istSecretKey/Value.Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).Untersuchen Sie die XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie und prüfen Sie, ob das Secret explizit im in Schritt 1 angegebenen Element angegeben ist. Wenn es explizit angegeben wird, ist das die Fehlerursache.
Folgende Richtlinie zeigt beispielsweise, dass das Secret explizit im untergeordneten Element
<Value>des<SecretKey>-Elements angegeben wurde:<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>Da das Secret im untergeordneten Element
<Value>des<SecretKey>-Elements der Generate JWT-Richtlinie explizit angegeben ist, wird folgende Fehlermeldung angezeigt:Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
Lösung
Der Wert muss im untergeordneten Element <Value> der <PrivateKey>- oder <SecretKey>-Elemente immer als Ablaufvariable angegeben werden.
Verwenden Sie die Ablaufvariable private.secretkey im Ref-Attribut des untergeordneten Elements <Value> von <SecretKey>, um die oben gezeigte Generate JWT-Richtlinie zu korrigieren:
<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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision 2 Invalid Time format: policy(policy_name) element(element_name).
Beispiel für Fehlermeldung
Error Saving Revision 3
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
Beispiel-Screenshot
In der Apigee-UI wird ein Dialogfeld mit einem Fehler angezeigt:

Ursache
Dieser Fehler tritt auf, wenn der im Element <NotBefore> angegebene Wert nicht in einem der unterstützten Formate vorliegt:
sortable, RFC 1123, RFC 850, ANCI-C
Ist der in <NotBefore> angegebene Wert beispielsweise 20-JUN-1990 08:03, was kein unterstütztes Format ist, tritt dieser Fehler auf.
<NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore>
Diagnose
Ermitteln Sie aus der Fehlermeldung den Namen der Generate JWT-Richtlinie und den Namen des Elements, das ein ungültiges Zeitformat hat. In der folgenden Fehlermeldung lautet der Name der Generate JWT-Richtlinie
JWT-Generate-HS256und der Elementname istNotBefore.Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).Untersuchen Sie die XML-Datei der fehlgeschlagenen Generate JWT-Richtlinie und prüfen Sie das im in Schritt 1 ermittelten Element verwendete Zeitformat. Wenn das Element keines der unterstützten Formate verwendet:
sortable,RFC 1123,RFC 850,ANCI-CDann ist das die Ursache des Fehlers.
Folgende Richtlinie zeigt beispielsweise, dass das untergeordnete Element
<NotBefore>ein nicht unterstütztes Zeitformat nutzt:<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>Da das Element
<NotBefore>der Generate JWT-Richtlinie keine der unterstützten Zeitformate verwendet, wird der Fehler angezeigt:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
Lösung
Achten Sie darauf, dass der im Element <NotBefore> angegebene Wert eines der unterstützten Formate verwendet:
sortable, RFC 1123, RFC 850, ANCI-C
Ändern Sie zum Korrigieren des Beispiels einer Generate JWT-Richtlinie das Datum im Element <NotBefore> in das Format sortable (siehe unten):
<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>