개요
Apache Iceberg의 REST Catalog 보안에 대해 다루는 웨비나입니다. REST Catalog는 HTTP 엔드포인트를 통한 범용 API 스펙으로, 언어 및 엔진 독립적인 표준화된 방식을 제공합니다. 전통적인 컴퓨트 강제 권한 방식의 문제점과 카탈로그 레이어 거버넌스의 장점을 설명하며, StarRocks 4.0의 JWT Token 기반 보안 구현을 소개합니다.
주요 내용
1. Iceberg Catalog과 REST Catalog
Iceberg Catalog는 테이블의 진입점으로 현재 메타데이터 포인터를 보유합니다. 기존 Hive, Glue, Nessie, JDBC 등 카탈로그는 N개 엔진 × M개 카탈로그 = N×M개 구현이 필요한 문제가 있었습니다. REST Catalog는 HTTP 엔드포인트를 통한 표준화된 방식으로 이 문제를 해결하며, Gravitino, Nessie, Lakekeeper, Polaris 등이 주요 제공자입니다.
2. REST Catalog 보안의 중요성
보안 미흡 시 GDPR, SOC 2, HIPAA 등 규제 위반 위험이 있고, 멀티 테넌시 환경에서 팀 간 격리가 필요합니다. Catalog 레벨과 Cloud Provider 레벨의 다층 보안이 필요하며, 한 레이어만 보안하는 것은 부족합니다.
3. REST 보안의 주요 과제
대규모 인증에서는 엔진별 개별 사용자 계정 유지, 수동 프로비저닝, 좀비 계정 문제가 있습니다. 세밀한 액세스 제어는 Namespace, Table, Column, Row 레벨 권한이 필요합니다. 장기 클라우드 자격증명은 보안 위험이 높고, 멀티 클라우드 환경에서는 각 제공자마다 다른 권한 모델이 있어 복잡합니다.
4. 보안 전략 비교
컴퓨트 강제 권한 방식은 Super User로 작동하며 장기 자격증명을 사용하고, 쿼리별 번역이 필요하여 보안 수준이 낮습니다. 카탈로그 강제 권한 방식은 실제 사용자로 인증하고 임시 자격증명을 사용하며, 카탈로그에서 직접 권한을 검증하여 보안 수준이 높습니다.
5. StarRocks 4.0 구현
StarRocks 4.0은 Token Exchange 프로토콜 대신 JWT Token을 사용하는 혁신적인 방식을 도입했습니다. 사전 서명된 JWT Token을 REST Catalog로 전달하고, 권한 시스템과 직접 검증하며, 임시 자격증명을 수신합니다. 이를 통해 Super User 불필요, 실제 사용자 식별, 카탈로그 강제 거버넌스 및 보안을 구현합니다.
6. 모범 사례
Identity Provider를 단일 진실 공급원으로 활용하여 사용자 제거 시 모든 시스템에서 액세스가 자동 취소되도록 해야 합니다. 중앙 컴퓨트 병목 없이 여러 도구가 데이터에 직접 액세스하도록 하고, 권한을 한 번 정의하여 Catalog를 통해 평가하며, 물리적 위치와 무관하게 통합된 권한을 유지해야 합니다.
핵심 포인트
REST Catalog는 Iceberg 보안의 핵심이며, 전통적인 Super User 방식은 보안 위험이 있습니다. Catalog Layer Governance가 이상적인 접근 방식이며, StarRocks 4.0은 JWT Token Bearer Flow로 이를 구현했습니다. 보안은 Catalog와 Cloud 모두에서 다층적 접근이 필요합니다. 향후 Token Delegation RFC의 업계 표준화와 Catalog가 권한의 단일 권위 소스로 자리잡을 것으로 예상됩니다.
Q&A
StarRocks는 External Catalog 개념으로 Glue, JDBC 등 원하는 카탈로그 제공자를 사용할 수 있습니다. 4.0용 JWT Flow 문서가 제공되며, Pre-signed JWT Token과 Security Integration 기능을 활용하여 Super User 접근을 우회할 수 있습니다. Token Flow는 4.0에 이미 구현되어 있습니다.