Iceberg REST Catalog 的安全设置
在多个节点协同访问同一数据湖的场景中,核心挑战是如何实现安全、统一且可审计的权限管理。在传统模式中,用户需要为每个节点单独配置存储凭证并进行本地权限控制,这不仅增加了维护成本,还带来了凭证泄露和权限不一致的风险。
通过将 Iceberg REST Catalog 与 StarRocks 集成,可以通过 JWT(JSON Web Token)认 证和 Vended Credentials(临时凭证)的组合实现安全访问和统一权限管理。这种设置有助于:
- 降低凭证风险:无需在 StarRocks 中存储高权限账户信息。凭证由 Catalog 临时发放,避免泄露。
- 统一和简化权限:所有数据库、表和视图的访问控制由 Catalog 集中管理,确保不同节点间的一致性,避免冗余配置。
- 合规和简化操作:用户操作可追溯,便于审计。同时减少了在 StarRocks 中维护权限和存储凭证的成本。
安全机制
- JWT 认证
- 当用户登录到 StarRocks 时,获取的 JWT Token 可以传递给 Iceberg REST Session Catalog。
- Catalog 将根据 JWT Token 认证用户,并以真实用户身份执行查询。
- 这样做的好处是 StarRocks 不需要存储高权限账户,从而显著降低安全风险。
- Vended Credentials
- 认证后,Catalog 可以为用户生成临时存储访问凭证。
- 用户无需在 StarRocks 中配置存储层的凭证。
- 每次访问对象存储时,StarRocks 将使用 Catalog 发放的临时凭证。
- 这增强了安全性并简化了凭证管理。