78장. KafkaClientAuthenticationOAuth schema reference


사용 위치: KafkaBridgeSpec, KafkaConnectSpec, KafkaMirrorMaker2ClusterSpec, KafkaMirrorMakerConsumerSpec, KafkaMirrorMakerProducerSpec

KafkaClientAuthenticationOAuth 스키마 속성의 전체 목록

OAuth 클라이언트 인증을 구성하려면 type 속성을 oauth 로 설정합니다.

OAuth 인증은 다음 옵션 중 하나를 사용하여 구성할 수 있습니다.

  • 클라이언트 ID 및 시크릿
  • 클라이언트 ID 및 새로 고침 토큰
  • 액세스 토큰
  • 사용자 이름 및 암호
  • TLS

클라이언트 ID 및 시크릿

tokenEndpointUri 속성에서 권한 부여 서버의 주소를 인증에 사용되는 클라이언트 ID 및 클라이언트 시크릿과 함께 구성할 수 있습니다. OAuth 클라이언트는 OAuth 서버에 연결하고, 클라이언트 ID 및 시크릿을 사용하여 인증하며 Kafka 브로커로 인증하는 데 사용할 액세스 토큰을 가져옵니다. client Secret 속성에서 클라이언트 보안이 포함된 보안에 대한 링크를 지정합니다.

클라이언트 ID 및 클라이언트 시크릿을 사용한 OAuth 클라이언트 인증의 예

authentication:
  type: oauth
  tokenEndpointUri: https://sso.myproject.svc:8443/auth/realms/internal/protocol/openid-connect/token
  clientId: my-client-id
  clientSecret:
    secretName: my-client-oauth-secret
    key: client-secret
Copy to Clipboard Toggle word wrap

필요한 경우 범위대상 을 선택적으로 지정할 수 있습니다.

클라이언트 ID 및 새로 고침 토큰

OAuth 클라이언트 ID 및 새로 고침 토큰과 함께 tokenEndpointUri 속성에서 OAuth 서버의 주소를 구성할 수 있습니다. OAuth 클라이언트는 OAuth 서버에 연결하고, 클라이언트 ID 및 새로 고침 토큰을 사용하여 인증하고 Kafka 브로커로 인증하는 데 사용할 액세스 토큰을 가져옵니다. refreshToken 속성에서 새로 고침 토큰이 포함된 보안에 대한 링크를 지정합니다.

클라이언트 ID 및 새로 고침 토큰을 사용한 OAuth 클라이언트 인증 예

authentication:
  type: oauth
  tokenEndpointUri: https://sso.myproject.svc:8443/auth/realms/internal/protocol/openid-connect/token
  clientId: my-client-id
  refreshToken:
    secretName: my-refresh-token-secret
    key: refresh-token
Copy to Clipboard Toggle word wrap

액세스 토큰

Kafka 브로커로 인증에 사용되는 액세스 토큰을 직접 구성할 수 있습니다. 이 경우 tokenEndpointUri 를 지정하지 않습니다. accessToken 속성에서 액세스 토큰이 포함된 시크릿에 대한 링크를 지정합니다.

액세스 토큰만 사용하는 OAuth 클라이언트 인증의 예

authentication:
  type: oauth
  accessToken:
    secretName: my-access-token-secret
    key: access-token
Copy to Clipboard Toggle word wrap

사용자 이름 및 암호

OAuth 사용자 이름 및 암호 구성은 OAuth 리소스 소유자 암호 권한 부여 메커니즘을 사용합니다. 이 메커니즘은 더 이상 사용되지 않으며 클라이언트 인증 정보(ID 및 시크릿)를 사용할 수 없는 환경에서의 통합을 활성화하는 경우에만 지원됩니다. 액세스 관리 시스템에서 다른 접근 방식을 지원하지 않거나 인증에 사용자 계정이 필요한 경우 사용자 계정을 사용해야 할 수 있습니다.

일반적인 접근 방식은 클라이언트 애플리케이션을 나타내는 권한 부여 서버에 특수 사용자 계정을 생성하는 것입니다. 그런 다음 계정에 무작위로 생성된 암호와 매우 제한된 권한 세트를 지정합니다. 예를 들어 계정은 Kafka 클러스터에만 연결할 수 있지만 다른 서비스를 사용하거나 사용자 인터페이스에 로그인할 수는 없습니다.

먼저 새로 고침 토큰 메커니즘을 사용하는 것이 좋습니다.

tokenEndpointUri 속성에서 클라이언트 ID, 사용자 이름 및 인증에 사용되는 암호와 함께 권한 부여 서버의 주소를 구성할 수 있습니다. OAuth 클라이언트는 OAuth 서버에 연결하고, 사용자 이름, 암호, 클라이언트 ID를 사용하여 인증하며, Kafka 브로커로 인증하는 데 사용할 액세스 토큰을 가져오는 데 필요한 경우 클라이언트 시크릿도 가져옵니다.

password Secret 속성에서 암호가 포함된 보안에 대한 링크를 지정합니다.

일반적으로 공용 OAuth 클라이언트를 사용하여 clientId 도 구성해야 합니다. 기밀 OAuth 클라이언트를 사용하는 경우 clientSecret 도 구성해야 합니다.

공용 클라이언트가 있는 암호 및 사용자 이름을 사용한 OAuth 클라이언트 인증의 예

authentication:
  type: oauth
  tokenEndpointUri: https://sso.myproject.svc:8443/auth/realms/internal/protocol/openid-connect/token
  username: my-username
  passwordSecret:
    secretName: my-password-secret-name
    password: my-password-field-name
  clientId: my-public-client-id
Copy to Clipboard Toggle word wrap

기밀 클라이언트가 있는 암호와 사용자 이름을 사용한 OAuth 클라이언트 인증의 예

authentication:
  type: oauth
  tokenEndpointUri: https://sso.myproject.svc:8443/auth/realms/internal/protocol/openid-connect/token
  username: my-username
  passwordSecret:
    secretName: my-password-secret-name
    password: my-password-field-name
  clientId: my-confidential-client-id
  clientSecret:
    secretName: my-confidential-client-oauth-secret
    key: client-secret
Copy to Clipboard Toggle word wrap

필요한 경우 범위대상 을 선택적으로 지정할 수 있습니다.

TLS

HTTPS 프로토콜을 사용하여 OAuth 서버에 액세스하면 해당 인증서가 신뢰할 수 있는 인증 기관에서 서명한 TLS 인증서가 인증서에 나열되어 있는 한 추가 구성이 필요하지 않습니다.

OAuth 서버에서 자체 서명된 인증서를 사용하거나 신뢰할 수 없는 인증 기관에서 서명한 인증서를 사용하는 경우 사용자 정의 리소스에서 신뢰할 수 있는 인증서 목록을 구성할 수 있습니다. tlsTrustedCertificates 속성에는 인증서가 저장되는 키 이름이 있는 보안 목록이 포함되어 있습니다. 인증서는 X509 형식으로 저장해야 합니다.

제공된 TLS 인증서의 예

authentication:
  type: oauth
  tokenEndpointUri: https://sso.myproject.svc:8443/auth/realms/internal/protocol/openid-connect/token
  clientId: my-client-id
  refreshToken:
    secretName: my-refresh-token-secret
    key: refresh-token
  tlsTrustedCertificates:
    - secretName: oauth-server-ca
      certificate: tls.crt
Copy to Clipboard Toggle word wrap

OAuth 클라이언트는 기본적으로 OAuth 서버의 호스트 이름이 인증서 제목 또는 대체 DNS 이름 중 하나와 일치하는지 확인합니다. 필요하지 않은 경우 호스트 이름 확인을 비활성화할 수 있습니다.

비활성화된 TLS 호스트 이름 확인의 예

authentication:
  type: oauth
  tokenEndpointUri: https://sso.myproject.svc:8443/auth/realms/internal/protocol/openid-connect/token
  clientId: my-client-id
  refreshToken:
    secretName: my-refresh-token-secret
    key: refresh-token
  disableTlsHostnameVerification: true
Copy to Clipboard Toggle word wrap

78.1. KafkaClientAuthenticationOAuth 스키마 속성

type 속성은 KafkaClientAuthenticationOAuth 유형과 KafkaClientAuthenticationOAuth 유형, KafkaClientAuthentication ScramSha256, KafkaClientAuthenticationScramSha512, KafkaClientAuthenticationPlain. KafkaClientAuthenticationOAuth 유형의 oauth 값이 있어야 합니다.

Expand
속성속성 유형설명

accessToken

GenericSecretSource

권한 부여 서버에서 가져온 액세스 토큰이 포함된 OpenShift 보안에 대한 링크입니다.

accessTokenIsJwt

boolean

액세스 토큰을 JWT로 처리해야 하는지 여부를 구성합니다. 권한 부여 서버가 불투명 토큰을 반환하면 false 로 설정해야 합니다. 기본값은 true 입니다.

대상

string

권한 부여 서버에 대해 인증할 때 사용할 OAuth 대상입니다. 일부 권한 부여 서버에서는 대상을 명시적으로 설정해야 합니다. 가능한 값은 권한 부여 서버 구성 방법에 따라 달라집니다. 기본적으로 토큰 끝점 요청을 수행할 때 대상 을 지정하지 않습니다.

clientId

string

Kafka 클라이언트가 OAuth 서버에 대해 인증하고 토큰 엔드포인트 URI를 사용하는 데 사용할 수 있는 OAuth 클라이언트 ID입니다.

clientSecret

GenericSecretSource

Kafka 클라이언트가 OAuth 서버에 대해 인증하는 데 사용할 수 있는 OAuth 클라이언트 시크릿이 포함된 OpenShift 보안에 연결하고 토큰 엔드포인트 URI를 사용합니다.

connectTimeoutSeconds

integer

권한 부여 서버에 연결할 때 연결 시간(초)입니다. 설정되지 않은 경우 유효 연결 시간 제한은 60 초입니다.

disableTlsHostnameVerification

boolean

TLS 호스트 이름 확인을 활성화하거나 비활성화합니다. 기본값은 false 입니다.

enableMetrics

boolean

OAuth 메트릭을 활성화하거나 비활성화합니다. 기본값은 false 입니다.

httpRetries

integer

초기 HTTP 요청이 실패하는 경우 시도할 최대 재시도 횟수입니다. 설정되지 않은 경우 기본값은 재시도를 시도하지 않는 것입니다.

httpRetryPauseMs

integer

실패한 HTTP 요청을 다시 시도하기 전에 수행할 일시 중지입니다. 설정되지 않은 경우 기본값은 일시 중지되지 않고 즉시 요청을 반복하는 것입니다.

includeAcceptHeader

boolean

승인 서버에 대한 요청에 Accept 헤더를 설정해야 하는지 여부입니다. 기본값은 true입니다.

maxTokenExpirySeconds

integer

액세스 토큰의 time-to-live를 지정된 초 수로 설정하거나 제한합니다. 권한 부여 서버가 불투명 토큰을 반환하는 경우 설정해야 합니다.

passwordSecret

PasswordSecretSource

암호가 있는 Secret 에 대한 참조입니다.

readTimeoutSeconds

integer

권한 부여 서버에 연결할 때 읽기 제한 시간(초)입니다. 설정되지 않은 경우 유효 읽기 제한 시간은 60 초입니다.

refreshToken

GenericSecretSource

권한 부여 서버에서 액세스 토큰을 가져오는 데 사용할 수 있는 새로 고침 토큰이 포함된 OpenShift 보안에 대한 링크입니다.

scope

string

권한 부여 서버에 대해 인증할 때 사용할 OAuth 범위입니다. 일부 권한 부여 서버를 설정해야 합니다. 가능한 값은 권한 부여 서버 구성 방법에 따라 달라집니다. 토큰 끝점 요청을 수행할 때 기본적으로 범위가 지정되지 않습니다.

tlsTrustedCertificates

CertSecretSource array

OAuth 서버에 대한 TLS 연결에 대한 신뢰할 수 있는 인증서입니다.

tokenEndpointUri

string

권한 부여 서버 토큰 엔드포인트 URI입니다.

type

string

oauth 여야 합니다.

사용자 이름

string

인증에 사용되는 사용자 이름입니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat