3.6. 사용자 이름을 추출할 때 JsonPath 쿼리에 대한 OAuth 2.0 지원


Kafka 클러스터에서 OAuth 2.0 인증을 사용하려면 인증 방법 oauth 를 사용하여 Kafka 사용자 정의 리소스에 리스너 구성을 지정합니다. 리스너 속성을 구성할 때 JsonPath 쿼리를 사용하여 사용 중인 권한 부여 서버에서 사용자 이름을 추출할 수 있습니다. JsonPath 쿼리를 사용하여 userNameClaimfallbackUserNameClaim 속성에 대한 리스너에서 사용자 이름 추출 옵션을 지정할 수 있습니다. 이를 통해 중첩된 데이터 구조 내의 특정 값에 액세스하여 토큰에서 사용자 이름을 추출할 수 있습니다. 예를 들어 JSON 토큰 데이터 구조 내의 사용자 정보 데이터 구조에 포함된 사용자 이름이 있을 수 있습니다.

다음 예제에서는 인트로스펙션 엔드포인트를 사용하여 토큰 검증을 구성할 때 JsonPath 쿼리가 속성과 함께 사용되는 방법을 보여줍니다.

인트로스펙션 끝점을 사용하여 토큰 검증 구성

- name: external
  port: 9094
  type: loadbalancer
  tls: true
  authentication:
    type: oauth
    validIssuerUri: <https://<auth-server-address>/auth/realms/external>
    introspectionEndpointUri: <https://<auth-server-address>/auth/realms/external/protocol/openid-connect/token/introspect>
    clientId: kafka-broker
    clientSecret:
      secretName: my-cluster-oauth
      key: clientSecret
    userNameClaim: "['user.info'].['user.id']" 
1

    maxSecondsWithoutReauthentication: 3600
    fallbackUserNameClaim: "['client.info'].['client.id']" 
2

    fallbackUserNamePrefix: client-account-
    # ...

1
토큰에 실제 사용자 이름이 포함된 토큰 클레임(또는 키)입니다. 사용자 이름은 사용자를 식별하는 데 사용되는 주체 입니다. userNameClaim 값은 사용된 권한 부여 서버에 따라 다릅니다.
2
권한 부여 서버는 일반 사용자와 클라이언트를 모두 식별하는 단일 속성을 제공하지 않을 수 있습니다. 클라이언트가 자체 이름으로 인증하면 서버에서 클라이언트 ID 를 제공할 수 있습니다. 사용자가 사용자 이름과 암호를 사용하여 인증하는 경우 새로 고침 토큰 또는 액세스 토큰을 가져오기 위해 서버에서 클라이언트 ID 외에 username 속성을 제공할 수 있습니다. 기본 사용자 ID 속성을 사용할 수 없는 경우 사용할 사용자 이름 클레임(attribute)을 지정하려면 이 대체 옵션을 사용합니다. 필요한 경우 JsonPath 쿼리를 사용하여 중첩된 특성을 대상으로 지정할 수 있습니다.

Kafka 브로커에 대한 OAuth 2.0 지원 구성 을 참조하십시오.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동