시작하기 전에
- Enterprise 플랜의 조직
- ClickHouse 버전 26.4 이상을 실행하는 서비스
- 서비스에서
control-plane:service:managepermission을 가진 역할(예: 관리자 또는 Service admin). 이 permission이 없는 멤버에게는 이 섹션이 읽기 전용으로 표시됩니다. - 최소 1개의 RSA 키(
RS256) 또는 버전 26.8 이상의 서비스에서는 EC 키(ES256,ES384,ES512)를 게시하는 공개적으로 접근 가능한 HTTPS JWKS URL
JWKS 기반 provider는 RSA 키와 버전 26.8부터 P-256, P-384, P-521 곡선의 EC 키를 허용합니다. JWKS 문서에 다른 키 타입이 포함될 수는 있지만, 사용 가능한 키가 최소 1개 있어야 합니다.
작동 방식
- ClickHouse는 토큰의
kid(key ID) header를 읽고 문서에서 일치하는 key를 선택합니다. - 해당 공개 키로 토큰 서명을 검증하고,
iss(issuer) 및aud(audience) 클레임을 provider 구성과 대조합니다. - 검증에 성공하면 연결은 임시 사용자로 실행됩니다. 이 사용자의 접근 권한은 토큰의
clickhouse:grants및clickhouse:roles클레임에서 가져오며, permission limit(default사용자)을 초과할 수 없습니다. 자세한 내용은 접근 권한을 참조하십시오.
JWT 제공자 추가
1
서비스 보안 설정 열기
서비스로 이동하여 설정를 열고 Security 섹션으로 스크롤합니다. JWT authentication 카드를 찾습니다.
2
provider 플라이아웃 열기
Set up JWT 제공자를 선택합니다(이미 provider가 있는 경우 Manage JWT 제공자). 입력할 새 provider 양식이 표시된 플라이아웃이 열립니다.
3
provider 세부 정보 입력
provider 양식을 작성하고 Save를 선택합니다.
4
필요한 경우 provider 추가
Add another provider를 사용하여 추가 provider를 구성합니다. 서비스당 제공자는 최대 5개까지 설정할 수 있습니다.
제한 사항
- 서비스당 JWT 제공자는 최대 5개까지 사용할 수 있습니다.
- JWKS 제공자는 RSA 키(
RS256) 및 버전 26.8부터 EC 키(ES256,ES384,ES512)를 지원합니다. - JWKS URL은 Public HTTPS endpoint여야 합니다. Private, 내부 또는 link-local 주소는 거부됩니다.
- JWT 인증 — 토큰 클레임, 임시 사용자 및 클라이언트 사용법.