JWTBearerOAuth2AccessTokenProvider

JWTBearerOAuth2AccessTokenProvider (JWT Bearer OAuth2 액세스 토큰 제공자)

HTTP 요청의 Bearer 인증 헤더로 사용할 수 있는 OAuth 2.0 액세스 토큰을 제공하는 서비스예요. 이 컨트롤러 서비스는 OAuth 2.0 JWT Bearer Flow를 구현하기 위한 것이에요.

출처: 문서

본문

설명

HTTP 요청에서 Bearer 인증 헤더로 사용할 수 있는 OAuth 2.0 액세스 토큰을 제공해요. 이 컨트롤러 서비스는 OAuth 2.0 JWT Bearer Flow를 구현하기 위한 것이에요.

태그

access token, authorization, hjwt, oauth2, provider

속성 (Properties)

아래 목록에서 필수 속성은 별표(*)로 표시했어요. 그 외 속성은 선택 사항이고, 표에는 기본값과 NiFi Expression Language 지원 여부도 함께 나와 있어요.

표시 이름 API 이름 기본값 허용 값 설명
Assertion Parameter Name * Assertion Parameter Name assertion 토큰 엔드포인트로의 요청에서 JWT assertion에 사용할 파라미터 이름이에요.
Audience Audience JWT의 audience 클레임(aud)이에요. 여러 audience를 기대하면 공백으로 구분된 목록이에요.
Grant Type * Grant Type urn:ietf:params:oauth:grant-type:jwt-bearer 토큰 엔드포인트로의 요청에서 grant_type 파라미터에 설정할 값이에요.
Issuer Issuer JWT의 issuer 클레임(iss)이에요.
JWT Expiration Time * JWT Expiration Time 1 hour JWT의 해당 클레임을 설정하는 데 사용하는 만료 시간이에요. 반환된 액세스 토큰에 만료 시간이 포함되지 않으면, 이 값이 refresh window와 함께 새 액세스 토큰을 다시 얻는 데 사용돼요.
JWT ID JWT ID "jti"(JWT ID) 클레임은 JWT에 고유 식별자를 제공해요. 식별자 값은 같은 값이 다른 데이터 객체에 우연히 할당될 확률이 무시할 만하도록 배정해야 해요. 앱이 여러 issuer를 사용하면 서로 다른 issuer가 만든 값 사이에서도 충돌을 방지해야 해요. "jti" 값은 대소문자를 구분하는 문자열이에요. 설정하면 ${UUID()}로 설정하는 것을 권장해요.
Key ID Key ID JWT 서명에 사용된 공개 키의 ID예요. JWT에서 kid 헤더로 사용돼요.
Private Key Service * Private Key Service JWT 서명에 사용할 개인 키 서비스예요.
Refresh Window * Refresh Window 5 minutes 서비스는 refresh window 내에 만료되는 토큰을 갱신하려 시도하며, 토큰 만료에서 설정된 기간을 뺀 값을 사용해요.
SSL Context Service * SSL Context Service x5t 헤더를 설정하는 데 사용할 인증서로 설정된 SSLContextProvider 인스턴스예요. RSA 알고리즘을 사용해야 해요.
Scope Scope JWT의 scope 클레임(scope)이에요.
Set JWT Header X.509 Cert Thumbprint * Set JWT Header X.509 Cert Thumbprint false true false true면 JWT 헤더 x5t 필드를 X.509 인증서 DER 인코딩의 base64url 인코딩 SHA-256 지문으로 설정해요. true로 설정하면 RSA 알고리즘을 사용하는 인증서로 SSLContextProvider 인스턴스를 설정해야 해요.
Signing Algorithm * Signing Algorithm PS256 RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, Ed25519 JWT 서명에 사용할 알고리즘이에요.
Subject Subject JWT의 subject 클레임(sub)이에요.
Token Endpoint URL * Token Endpoint URL OAuth2 토큰 엔드포인트의 URL이에요.
Web Client Service * Web Client Service 토큰 엔드포인트를 호출하는 데 사용할 Web Client Service예요.

상태 관리

이 컴포넌트는 상태를 저장하지 않아요.

제한 사항 (Restricted)

이 컴포넌트는 제한되지 않아요.

시스템 리소스 고려 사항

이 컴포넌트는 시스템 리소스 고려 사항을 지정하지 않아요.

더 알아보기 (Learn more)