【笔记】Helm-3 主题-15 SQL存储后端的权限管理

SQL存储后端的权限管理

该文档旨在提供用户使用SQL存储后端时设置和管理权限的指导。

介绍

为了处理权限,Helm利用了Kubernetes的RBAC特性。使用SQL存储后端时,Kubernetes的角色不能被用于确认用户是否可以访问给定的资源。该文档会展示如果创建和管理权限。

初始化

Helm CLI首先会连接您的数据库。客户端会确认数据库是否已经预先初始化,如果没有,它会自动处理必要的安装。初始化需要在public架构的admin权限,或者至少可以做以下事情:

1、创建一个表

2、在public架构授予权限

当您的数据库执行过迁移操作之后,其他角色就可以使用客户端了。

PostgreSQL向非管理员用户授权

管理权限时,SQL后端驱动会利用PostgreSQL的 RLS(行安全级别)特性。RLS允许所有用户读/写同一张表,如果没有明确说明,不允许操作相同的行。默认情况下,运行helm list时任何角色如果没有明确授权正确的权限会返回空列表,并且不能检索或修改集群中的任何资源。

PostgreSQL: Documentation: 9.5: Row Security Policies

我们来看看如何为给定角色授予访问特定命令空间的权限:

CREATE POLICY <name> ON releases_v1 FOR ALL TO <role> USING (namespace = 'default');

CREATE POLICY <name> ON releases_v1 FOR ALL TO <role> USING (namespace = 'default');

这个命令在使用namespace = 'default'条件时会授权给角色role所有资源读和写操作权限。在创建这个策略时,运行helm list时会代表角色role在默认的命令空间中数据库,因而能看到命名空间中所有的版本,并能修改和删除它们。

权限可以按照RLS粒度进行管理,人们可能会对表的不同列的访问限制感兴趣:

key

type

body

name

namespace

version

status

owner

createdAt

modifiedAt


仅用于本人学习

来源:Helm | Docs

相关推荐
Lsetea4 小时前
Kubernetes 1.37 Pod证书怎么签发:Signer与mTLS信任链排查
云原生·kubernetes·ssl证书·tls·mtls
2601_962218478 小时前
万象生鲜系统多账套隔离技术适配集团生鲜企业集团化数字化管控
大数据·运维·微服务·云原生·架构
@PHARAOH9 小时前
WHAT - 微服务统一入口配置原理
微服务·云原生·架构
2601_9622184712 小时前
万象生鲜系统智能报表引擎技术为生鲜企业提供数字化经营分析能力
大数据·运维·微服务·云原生·架构
鹤落晴春1 天前
【K8s】从 ConfigMap 到 Argo CD:Kubernetes 配置管理链路
运维·云原生·容器·kubernetes
汇智信科1 天前
基于 Jmis 框架的制度与流程管控系统设计与应用|项目全生命周期管理
大数据·人工智能·微服务·云原生·汇智信科
ezreal_pan1 天前
Pod 重启多场景复盘:OOM、日志阻塞、并发 map 读写导致程序崩溃
docker·k8s
名字还没想好☜1 天前
Docker 镜像瘦身进阶:用 distroless/scratch 把 Go 服务打到 10MB,以及没 shell 怎么调试
运维·docker·容器·golang·kubernetes
陈聪.1 天前
Kubernetes 集群网络插件迁移:从 Flannel 到 Calico 实战总结
云原生·kubernetes
Spider Cat 蜘蛛猫1 天前
微服务- 自动审核商家入驻
微服务·云原生·架构