首页 > 解决方案 > Kubernetes RBAC - 允许端口转发,但禁止手动创建 Pod

问题描述

我们使用 argocd 将我们的存储库与我们的 kubernetes 集群同步。为了防止部署与版本控制不同步,我们禁止在这些命名空间中手动创建 Pod。对于开发/调试,能够将 pod 和服务端口转发到本地机器会很有帮助。

---
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: my-namespace
  name: allow-port-forward
rules:
- apiGroups: [""]
  resources: ["pods", "pods/portforward"]
  verbs: ["get", "list", "create"]

这可行,但它也允许在my-namespace. 如果我将配置更改为:

  resources: ["pods/portforward"]

端口转发停止工作。

有没有办法只允许端口转发,但不允许在其中创建任意 pod my-namespace

标签: kubernetesrbac

解决方案


推荐阅读