jwt-generate
IBM® API Connect 에서 JWT 생성 보안 정책을 사용하여 JWT (JSON Web Token) 를 생성하십시오.
게이트웨이 지원
| 게이트웨이 | 정책 버전 |
|---|---|
| DataPower® Gateway (v5 compatible) | 1.0.0 |
| DataPower API Gateway | 2.1.0 |
이 주제에서는 OpenAPI 소스에서 정책을 구성하는 방법에 대해 설명합니다. 어셈블리 사용자 인터페이스에서 정책을 구성하는 방법에 대한 세부사항은 JWT 생성을 참조하십시오.
참고:
- 알고리즘 유형 HS256, HS384, HS512의 경우 참조된 암호 오브젝트는 공유되는 비밀 키여야 합니다.
- 알고리즘 유형 RS256, RS384, RS512, ES256, ES384, ES512, PS256, PS384, PS512의 경우 참조된 암호 오브젝트는 암호 키(개인 키)여야 합니다.
- 암호 자료는 JWK(JSON Web Key)를 통해 제공할 수 있습니다.
- 암호 오브젝트 및 JWK 모두 지정하면 JWT에 서명하는 데 암호 오브젝트를 사용합니다.
정보
jwt-generate 정책의 구조는 다음과 같습니다.
- jwt-generate:
version: version
title: title
description: description
jwt: json_web_token
jti-claim: jwt_id_claim
iss-claim: issuer_claim
exp-claim: validity_period
sub-claim: subject_claim
aud-claim: audience_claim
jws-jwk: sign_jwk_variable_name
jws-alg: cryptographic_algorithm
jws-crypto: sign_crypto_object
custom-kid-value-jws: jws.kid
jwe-enc: encryption_algorithm
jwe-jwk: encrypt_jwk_variable_name
jwe-alg: key_encryption_algorithm
jwe-crypto: encrypt_crypto_object
custom-kid-value-jwe: jwe.kid특성
다음 표에서는 정책 특성에 대해 설명합니다.| 특성 | 필수 | 설명 | 데이터 유형 |
|---|---|---|---|
| version | 예 | 정책 버전 번호입니다. | 문자열 |
| title | 아니오 | 해당 정책의 제목입니다. | 문자열 |
| description | 아니오 | 정책의 설명입니다. | 문자열 |
| jwt | 아니오 | 생성된 JWT를 배치할 런타임 변수입니다. 기본값은 |
문자열 |
| jti-claim | 아니오 | JTI(JWT ID) 청구를 JWT에 추가할지 여부를 표시합니다. 선택한 경우
특성은 |
부울 |
| iss-claim | 예 | 발행자(iss) 청구 문자열을 검색할 수 있는 런타임 변수입니다. 이 청구는 JWT를 발행한 프린시펄을 나타냅니다. 기본값은
|
문자열 |
| sub-claim | 아니오 | 주제(sub) 청구 문자열을 검색할 수 있는 런타임 변수입니다. | 문자열 |
| aud-claim | 아니오 | 대상(aud) 청구 문자열을 검색할 수 있는 런타임 변수입니다. 쉼표로 구분된 문자열을 사용하여 여러 변수를 설정합니다. | 문자열 |
| exp-claim | 예 | 현재 날짜 및 시간에 추가된 시간 길이(초)로서, JWT가 유효한 것으로 간주되는 시간입니다. 기본값은 |
정수 |
| private-claims | 아니오 | JSON 청구의 올바른 JSON 세트를 검색할 수 있는 런타임 변수입니다. 이 청구는 이전에 지정된 청구 세트에 추가됩니다. | 문자열 |
| jws-jwk | 아니오 | JWT 서명에 사용할 JWK가 포함된 런타임 변수입니다. JWK 및 암호 오브젝트는 둘 다 JWT에 서명하는 데 필요한 암호 데이터를 제공하는 올바른 방법입니다. 그러나 두 데이터 유형을 지정하면 암호 오브젝트만 사용됩니다. | 문자열 |
| jws-alg | 아니오 | 사용할 암호화 알고리즘입니다. 유효값은 다음과 같습니다.
|
문자열 |
| jws-crypto | 아니오 | JWT 서명에 사용할 암호 오브젝트입니다. JWK 및 암호 오브젝트는 둘 다 JWT에 서명하는 데 필요한 암호 데이터를 제공하는 올바른 방법입니다. 그러나 두 데이터 유형을 지정하면 암호 오브젝트만 사용됩니다. | 문자열 |
| custom-kid-value-jws | 아니오 | JWT 서명을 위한 사용자 정의된 kid 값입니다. |
문자열 |
| jwe-enc | 아니오 | 사용할 암호화 알고리즘입니다. 유효값은 다음과 같습니다.
|
문자열 |
| jwe-jwk | 아니오 | JWT 암호화에 사용할 JWK가 포함된 런타임 변수입니다. | 문자열 |
| jwe-alg | 아니오 | 사용할 키 암호화 알고리즘입니다. 유효값은 다음과 같습니다.
|
문자열 |
| jwe-crypto | 아니오 | 청구 암호화에 사용할 암호 오브젝트입니다. | 문자열 |
| custom-kid-value-jwe | 아니오 | JWT 암호화에 대해 사용자 정의된 kid 값입니다. |
문자열 |
예
다음은 jwt-generate 정책의 예제입니다.
- jwt-generate:
version: 2.1.0
title: jwt-generate
description: New jwt-generate v2.1.0 policy.
jwt: generated.jwt
jti-claim: true
iss-claim: iss.claim
sub-claim: sub.claim
aud-claim: aud.claim
exp-claim: 3600
private-claims: private.claims
jws-jwk: jws.jwk
jws-alg: HS256
jws-crypto: jwsCryptoObjectName
custom-kid-value-jws: jws.kid
jwe-enc: A128CBC-HS256
jwe-jwk: jwe.jwk
jwe-alg: RSA1_5
jwe-crypto: jweCryptoObjectName
custom-kid-value-jwe: jwe.kidjwt-generate 보안 정책을 사용하는 방법에 대한 자세한 정보는 기본 제공 정책 섹션에서 JWT 생성 을 참조하십시오.