Apigee 및 Apigee Hybrid 문서입니다.
Apigee Edge 문서 보기
InvalidNameForAdditionalClaim
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid name for additional claim : policy(policy_name) claim(claim_name).
오류 메시지 예시
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <AdditionalClaims> 요소의 <Claim> 하위 요소에 사용된 클레임 이름이 다음 등록된 이름 중 하나일 때 발생합니다.
'kid', 'iss', 'sub', 'aud', 'iat', 'exp', 'nbf', 'jti'
등록된 클레임은 RFC 7519에 지정되어 있습니다.
예를 들어 <AdditionalClaims> 요소 아래에 클레임 이름 iss를 사용하면 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 클레임 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 클레임 이름은iss입니다.Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).실패한 JWT 확인 정책 XML의
<AdditionalClaims>요소에 사용된 클레임 이름이 1단계의 오류 메시지에서 식별된 클레임 이름과 일치하는지 확인합니다. 예를 들어 다음 정책은 클레임을 오류 메시지에 있는 내용과 일치하는iss로 지정합니다.<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><AdditionalClaims>요소의<Claim>하위 요소에 사용된 클레임 이름이 다음 등록된 이름 중 하나인 경우,'kid', 'iss', 'sub', 'aud', 'iat', 'exp', 'nbf', 'jti'
이는 오류의 원인이 됩니다.
위에 표시된 JWT 확인 정책 예시에서
<Claim>이름은<AdditionalClaims>요소 아래에iss로 지정되며 오류가 발생합니다.Invalid name for additional claim : policy(JWT-Verify-RS256) claim(iss).
해결 방법
<AdditionalClaims> 요소의 <Claim> 하위 요소에 등록된 이름인 'kid', 'iss', 'sub', 'aud', 'iat', 'exp', 'nbf', 'jti'을 사용하지 마세요.
JWT 확인 정책의 예시 문제를 해결하려면 클레임 이름을 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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
오류 메시지 예시
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
VerifyJWT 정책의 <AdditionalClaims> 요소의 하위 요소 <Claim>에 사용된 클레임 유형은 다음 유형 중 하나가 아닙니다.
string(기본값), number, boolean, map
예를 들어 <AdditionalClaims> 요소 아래에서 integer 클레임 유형을 사용하면 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름, 클레임 이름, 유형을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256, 클레임 이름은claim, 유형은integer:입니다.Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).실패한 JWT 확인 정책 XML의
<AdditionalClaims>요소 아래에 사용된 클레임 이름과 유형이 1단계 오류 메시지에서 식별된 클레임 이름 및 유형과 일치하는지 확인합니다. 예를 들어 다음 정책은 오류 메시지에 표시된 내용과 일치하도록 클레임을claim으로 지정하고, 유형을integer로 지정합니다.<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><AdditionalClaims>요소의<Claim>하위 요소에 사용된 클레임 유형이 다음 유형 중 하나가 아닌 경우,string(기본값),number,boolean,map이는 오류의 원인이 됩니다.
위에 표시된 JWT 확인 정책 예시에서는
<Claim>유형이<AdditionalClaims>요소 아래에integer로 지정됩니다.integer가 지원되는 유형이 아니므로 오류가 발생합니다.Invalid type for additional claim : policy(JWT-Verify-RS256) claim(claim) type(integer).
해결 방법
지원되는 유일한 데이터 유형인 string(기본값), number, boolean, map만 <AdditionalClaims> 요소의 <Claim> 하위 요소에 사용되는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 클레임 유형을 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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
오류 메시지 예시
Error Saving Revision 2
Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 클레임 이름이 <AdditionalClaims> 또는 <AdditionalHeaders> 요소의 <Claim> 하위 요소에 지정되지 않은 경우에 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256입니다.Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim실패한 JWT 확인 정책 XML을 검사하고
<AdditionalClaims>또는<AdditionalHeaders>요소의 하위 요소<Claims>에 클레임 이름이 누락되었는지 확인합니다. 예를 들어 다음 JWT 확인 정책은<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><Claim>이름이<AdditionalClaims>요소 아래에 지정되지 않았기 때문에 오류가 발생합니다.Error occurred while validation of bean JWT-Verify-RS256.xml. Reason: - Required attribute name is missing in Claim
해결 방법
클레임 이름이 항상 <AdditionalClaims> 또는 <AdditionalHeaders> 요소의 <Claim> 하위 요소에 지정되었는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 아래와 같이 클레임 이름을 지정합니다.
<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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid name for additional header : policy(policy_name)header(header_name).
오류 메시지 예시
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <AdditionalHeaders> 요소의 <Claim> 하위 요소에 사용된 클레임 이름이 다음 표준 JWT 헤더 중 하나인 경우에 발생합니다.
alg 또는 typ
예를 들어 <AdditionalHeaders> 요소 아래에 alg 클레임 이름을 사용하면 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 헤더 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 헤더 이름은alg입니다.Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).실패한 JWT 확인 정책 XML에 있는
<AdditionalHeaders>요소의<Claim>하위 요소에 사용된 헤더 이름이 1단계 오류 메시지에서 식별된 헤더 이름과 일치하는지 확인합니다. 예를 들어 다음 정책은 헤더를 오류 메시지에 있는 것과 일치하는alg로 지정합니다.<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><AdditionalClaims>요소의<Claim>하위 요소에 사용된 헤더 이름이 다음 표준 JWT 헤더 중 하나인 경우:alg또는typ이는 오류의 원인이 됩니다.
위에 표시된 JWT 확인 정책 예시에서
<Claim>이름은<AdditionalClaims>요소 아래에alg로 지정되며 오류가 발생합니다.Invalid name for additional header: policy(JWT-Verify-RS256) header(alg).
해결 방법
<AdditionalHeaders> 요소의 <Claim> 하위 요소에는 표준 JWT 헤더 alg 또는 typ를 사용하지 마세요.
JWT 확인 정책 예시를 수정하려면 <AdditionalHeaders> 요소의 하위 요소 <Claim>에서 x5c 이름을 사용합니다.
<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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
오류 메시지 예시
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim1) type(integer).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
JWT 확인 정책에서 <AdditionalHeaders> 요소의 하위 요소 <Claim>에서 사용된 클레임 유형이 다음 유형 중 하나가 아닌 경우 오류가 발생합니다.
string(기본값), number, boolean, map
예를 들어 <AdditionalHeaders> 요소 아래에 integer 클레임 유형을 사용하면 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름, 클레임 이름, 유형을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 클레임 이름은claim, 유형은integer입니다.Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).실패한 JWT 확인 정책 XML의
<AdditionalClaims>요소 아래에 사용된 클레임 이름과 유형이 1단계 오류 메시지에서 식별된 클레임 이름 및 유형과 일치하는지 확인합니다. 예를 들어 다음 정책은 오류 메시지에 표시된 내용과 일치하도록 클레임을claim으로 지정하고, 클레임 유형을integer,로 지정합니다.<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><AdditionalHeaders>요소의<Claim>하위 요소에 사용된 클레임 유형이 다음 유형 중 하나가 아닌 경우,string(기본값),number,boolean,map이는 오류의 원인이 됩니다.
위에 표시된 JWT 확인 정책 예시에서
<AdditionalHeaders>요소 아래의<Claim>유형은integer로 지정됩니다.integer가 지원되는 유형이 아니므로 오류가 발생합니다.Invalid type for additional header : policy(JWT-Verify-RS256) claim(claim) type(integer).
해결 방법
지원되는 유일한 데이터 유형인 string, number, boolean, map만 <AdditionalHeaders> 요소의 <Claim> 하위 요소에 사용되는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 클레임 유형을 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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid value for array attribute: policy(policy_name)claim(claim_name).
오류 메시지 예시
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <AdditionalClaims> 또는 <AdditionalHeaders> 요소의 <Claim> 하위 요소에 있는 배열 속성의 값이 true 또는 false로 설정되지 않은 경우에 발생합니다.
예를 들어 <AdditionalClaims> 또는 <AdditionalHeaders> 요소의 <Claim> 하위 요소에서 배열 속성 값을 yes로 설정하면 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 클레임 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 클레임 이름은claim입니다.Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).실패한 JWT 확인 정책 XML에 있는
<AdditionalHeaders>요소의<Claim>하위 요소에 사용된 클레임 이름이 1단계 오류 메시지에서 식별된 클레임 이름과 일치하는지 확인합니다. 예를 들어 다음 정책은 클레임 이름을 오류 메시지에 있는 내용과 일치하는claim으로 지정합니다.<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><AdditionalClaims>요소의<Claim>하위 요소에서array속성의 값이true또는false로 설정되지 않았으면 이것이 오류의 원인입니다.위 예시에서
<AdditionalClaims>요소의<Claim>하위 요소에 있는array속성이yes로 설정된 경우 오류가 발생합니다.Invalid value for array attribute: policy(JWT-Verify-RS256) claim(claim).
해결 방법
<AdditionalClaims> 또는 <AdditionalHeaders> 요소의 <Claim> 하위 요소에서 배열 속성 값이 true 또는 false로 설정되었는지 확인합니다.
위에 표시된 JWT 확인 정책 예시를 수정하려면 배열 속성 값을 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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision Invalid Value for element : policy(policy_name) element(element_name).
오류 메시지 예시
Error Saving Revision
Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <Algorithm> 요소에 지정된 값이 다음 값 중 하나가 아닌 경우에 발생합니다.
HS256, HS384, HS512, RS256, RS384, RS512
예를 들어 알고리즘 값을 <Algorithm> 요소에서 RS128로 지정하면 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 요소 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 요소 이름은Algorithm입니다.Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).실패한 JWT 확인 정책 XML을 검토하고
<Algorithm>요소에 지정된 값을 확인합니다.다음은 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><Algorithm>요소에 지정된 값을 검사합니다. 다음 값 중 하나가 아닌 경우,HS256,HS384,HS512,RS256,RS384,RS512이는 오류의 원인이 됩니다.
위에 표시된 JWT 확인 예시에서
<Algorithm>이름은HS128로 지정됩니다. 지원되는 알고리즘이 아니기 때문에 오류가 발생합니다.Invalid Value for element : policy(JWT-Verify-RS256) element(Algorithm).
해결 방법
<Algorithm> 요소에 지정된 값이 지원되는 값 중 하나인지 확인합니다.
HS256, HS384, HS512, RS256, RS384, RS512
위에 표시된 <SecretKey> 요소가 사용되는 JWT 확인 정책 예시를 수정하려면 <Algorithm>의 값을 HS25로 변경합니다. <SecretKey> 요소가 사용된 경우에는 HS 계열 알고리즘만 사용할 수 있습니다.
<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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision Missing configuration element : policy(policy_name) element(element_name).
오류 메시지 예시
Error Saving Revision
Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 JWT 확인 정책에서 <PublicKey> 요소가 RSA 계열 알고리즘과 사용되지 않은 경우에 발생합니다. 마찬가지로 JWT 확인 정책에서 <SecretKey> 요소가 HS 계열 알고리즘과 함께 사용되지 않은 경우에도 이 오류가 발생합니다.
예를 들어 RSA 계열 알고리즘에 <PublicKey> 요소를 사용하지 않으면 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 누락된 요소 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 누락된 요소 이름은PublicKey입니다.Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).실패한 JWT 확인 정책 XML을 검사하고 오류 메시지에 표시된 요소가 누락되었는지 확인합니다. 누락되었으면 이것이 오류의 원인입니다.
예를 들어 다음 정책은
PublicKey가 누락되고 사용된Algorithm이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>JWT 확인 정책 예시에 HS 계열 알고리즘이 사용되지만, 필수 요소인
PublicKey가 누락되었기 때문에 오류가 발생합니다.Missing configuration element : policy(JWT-Verify-RS256) element(PublicKey).
해결 방법
필수 <PublicKey> 요소가 RSA 계열 알고리즘에 사용되었고 필수 <SecretKey> 요소가 HS 계열 알고리즘에 사용되었는지 확인합니다.
RS256 알고리즘을 사용하는 위에 표시된 JWT 확인 정책 예시를 수정하려면 <PublicKey> 요소를 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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving RevisionInvalid Key configuration : policy(policy_name).
오류 메시지 예시
Error Saving Revision 2
Invalid Key configuration : policy(JWT-Verify-RS256).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 JWT 확인 정책의 <PublicKey> 또는 <SecretKey> 요소에 하위 요소 <Value> 또는 필수 하위 요소 <JWKS>가 정의되지 않은 경우에 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256입니다.Invalid Key configuration : policy(JWT-Verify-RS256).실패한 JWT 확인 정책 XML을 검토하고 하위 요소
<Value>또는 하위 요소<JWKS>가<PublicKey>또는<SecretKey>요소에 정의되지 않았는지 확인합니다. 하위 요소가 정의되지 않은 경우 이는 오류의 원인이 됩니다.예를 들어 다음 정책은 하위 요소
<Value>또는<JWKS>가<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>하위 요소
<Value>또는<JWKS>가 JWT 확인 정책의<PublicKey>요소에 정의되어 있지 않으므로 다음 오류가 발생합니다.Invalid Key configuration : policy(JWT-Verify-RS256).
해결 방법
하위 요소 <Value> 또는 <JWKS>가 항상 JWT 확인 정책의 <PublicKey> 요소에 정의되어 있는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 <PublicKey> 요소 아래에 하위 요소 <Value> 또는 <JWKS>를 아래와 같이 정의합니다.
<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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Empty Element for Key Configuration : policy(policy_name) element(element_name).
오류 메시지 예시
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <PublicKey> 요소의 하위 요소 <Value> 또는 <JWKS>에 ref 속성이 지정되지 않거나 비어 있는 경우에 발생합니다.
예를 들어 <PublicKey> 요소의 <Value> 하위 요소가 비어 있으면 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름 및 비어 있는 요소 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 요소 이름은PublicKey/Value입니다.Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).실패한 JWT 확인 정책 XML을 검사하여 1단계에서 식별된 요소가 비어 있는지 확인합니다. 비어 있으면 이것이 오류의 원인입니다.
예를 들어 다음 정책은
<PublicKey>요소의<Value>하위 요소가 비어 있는 것을 보여줍니다.<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>JWT 확인 정책의
<PublicKey>요소 중 하위 요소<Value>가 비어 있으므로 다음 오류가 발생합니다.Empty Element for Key Configuration : policy(JWT-Verify-RS256) element(PublicKey/Value).
해결 방법
<PublicKey> 요소의 하위 요소 <Value> 또는 <JWKS>의 ref 속성이 항상 지정되어 있는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 <PublicKey> 요소의 하위 요소 <Value>에서 흐름 변수 public.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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid configuration element for verify : policy(policy_name) element(element_name).
오류 메시지 예시
Error Saving Revision 3
Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <Id> 요소가 VerifyJWT 정책의 <SecretKey> 요소 내에 정의된 경우 발생합니다.
예를 들어 <Id> 요소가 <SecretKey> 요소에 정의된 경우 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 잘못된 요소 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 요소 이름은SecretKey/Id입니다.Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)실패한 JWT 확인 정책 XML을 검사하여 1단계에서 식별된 잘못된 요소가 정의되었는지 확인합니다. 잘못된 요소가 정의되어 있으면 오류의 원인이 됩니다.
예를 들어 다음 정책은
<SecretKey>요소의<Id>하위 요소가 정의되어 있는 것을 보여줍니다.<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><Id>요소는 JWT 확인 정책의<SecretKey>요소 내에 정의되므로 오류가 발생합니다.Invalid configuration element for verify : policy(JWT-Verify-HS256) element(SecretKey/Id)
해결 방법
<Id> 요소가 JWT 확인 정책의 <SecretKey> 요소 내에 정의되지 않았는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 <SecretKey> 요소에서 하위 요소 <Id>를 삭제합니다.
<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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving RevisionInvalid empty element : policy(policy_name) element(element_name).
오류 메시지 예시
Error Saving Revision 3
Invalid empty element : policy(JWT-Verify-HS256) element(Source).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 JWT 확인 정책의 <Source> 요소가 비어 있는 경우에 발생합니다. 이 요소가 있는 경우 흐름 변수 이름으로 정의해야 합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 비어 있는 요소 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 요소 이름은PublicKey/Value입니다.Invalid empty element : policy(JWT-Verify-HS256) element(Source).실패한 JWT 확인 정책 XML을 검사하여 1단계에서 식별된 요소가 비어 있는지 확인합니다. 비어 있으면 이것이 오류의 원인입니다.
예를 들어 다음 정책은
<Source>요소가 비어 있음을 보여줍니다.<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>JWT 확인 정책의
<Source>요소가 비어 있기 때문에 다음 오류가 발생합니다.Invalid empty element : policy(JWT-Verify-HS256) element(Source).
해결 방법
JWT 확인 정책의 <Source> 요소가 있는 경우 흐름 변수를 지정해야 합니다.
JWT 확인 정책 예시를 수정하려면 <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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
Error Saving Revision revision_number Invalid Public Key Value in Configuration : policy(policy_name) element(element_name).
오류 메시지 예시
Error Saving Revision 2
Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <PublicKey> 요소의 하위 요소 <JWKS>에서 사용된 값이 RFC 7517에 지정된 올바른 형식이 아닌 경우에 발생합니다.
예를 들어 abc를 <PublicKey> 요소 아래의 하위 요소 값 <JWKS>로 사용하면 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름과 잘못된 값이 포함된 요소 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-RS256이고 요소가PublicKey/JWKS입니다.Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).실패한 JWT 확인 정책 XML을 검토하고 1단계에서 식별된 요소에 RFC 7517에 따라 올바른 형식의 값이 포함되어 있는지 확인합니다. 요소의 값이 유효한 형식이 아니면 오류의 원인이 됩니다.
<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><PublicKey>요소의 하위 요소<JWKS>의 값이 RFC 7517에 따라 유효한 형식이 아니므로 다음 오류가 발생합니다.Invalid Public Key Value in Configuration : policy(JWT-Verify-RS256) element(PublicKey/JWKS).
해결 방법
<PublicKey> 요소의 하위 요소 <JWKS>에 지정된 값이 유효한 JWKS 형식의 유효한 문자열 또는 흐름 변수(RFC 7517)인지 확인합니다.
JWT 확인 정책 예시를 수정하려면 <JWKS>의 값을 아래와 같이 변경합니다.
<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
오류 메시지
다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.
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>).
오류 메시지 예시
Error Saving Revision
Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
예시 스크린샷
Apigee UI에서 오류가 포함된 대화상자가 표시됩니다.

원인
이 오류는 <PublicKey> 요소가 HS 계열 알고리즘에 사용되고 <SecretKey> 요소가 RSA 계열 알고리즘에 사용될 경우에 발생합니다. 또한 이러한 조건 중 하나라도 true이면 오류가 발생합니다.
예를 들어 HS 계열 알고리즘에 <PublicKey> 요소를 사용하면 이 오류가 발생합니다.
진단
오류 메시지에서 JWT 확인 정책 이름, 요소 이름, 알고리즘 계열 이름을 식별합니다. 예를 들어 다음 오류 메시지에서 JWT 확인 정책 이름은
JWT-Verify-HS256이고 요소 이름은PublicKey, 알고리즘 계열은RSA입니다.Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).실패한 JWT 확인 정책 XML에 사용된 요소 및 알고리즘 계열이 1단계 오류 메시지에서 확인된 요소 및 알고리즘 계열과 일치하는지 확인합니다. 예를 들어 다음 정책은 오류 메시지와 일치하도록 요소를
PublicKey로 지정하고 알고리즘 계열을HMAC로 지정합니다.<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><Algorithm>요소의 값이HS256이지만<PublicKey>를 사용한 경우 이것이 오류의 원인입니다.위에 표시된 JWT 확인 예시에서는
<Algorithm>이 HS256 계열 알고리즘으로 설정되어 있어도<PublicKey>요소가 사용되어 오류가 발생합니다.Invalid configuration element for this action and algorithm Family: policy(JWT-Verify-HS256) element(PublicKey) action(Verify) family(RSA).
해결 방법
<PublicKey> 요소가 RSA 계열 알고리즘에만 사용되고 <SecretKey> 요소가 HS 계열 알고리즘에만 사용되는지 확인합니다.
JWT 확인 정책 예시를 수정하려면 HS256 알고리즘을 사용하는 VerifyJWT 정책의 <SecretKey>를 사용합니다.
<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>