#1674·casbin

[功能] 为 Go Casbin 添加 Kubernetes CRD 后端持久化适配器 (casbin-k8s-crd-adapter)

作者: hsluoyz创建于 2026年1月8日更新于 2026年1月9日
标签enhancement

为 Go Casbin 添加一个 Kubernetes 支持 CRD 的持久性适配器

执行一个 Go 适配器,从 Kubernetes 自定义资源中装入 Casbin 策略,而不是一个数据库 。 适配器应该满足卡斯宾的恒定适配器合同,并注重只读行为:它必须支持将政策加载到模型中,并且应该将写入操作视为不支持,以保持CRD作为真理的来源. 代码应该使用Kubernetes客户端来列出/监视CR实例并将其翻译为Casbin政策行,包括许可规则和角色/组绑定,这样常见的RBAC设置就可以在不自定义胶水的情况下工作.

这需要使用假的Kubernetes客户端进行政策加载的单位测试,并涵盖命名空间和集群范围使用、重复处理和确定订购。 适配器的整合方式应能使呼叫者将其插入标准的 " 强制器 " 并调用 " Load Policy " ,而无需额外的运行时间数据库依赖性.