kubectl,只允许用户将文件复制到Pod中或从Pod中复制出来

问题描述 投票:0回答:2

我有一个Kubernetes集群,其中已部署了我的应用程序。还有一些其他用户,他们只能将文件复制到Pod中或从Pod中复制文件。使用kubectl cp命令。该用户上下文不应允许用户对群集执行除kubectl cp之外的任何其他操作。

kubernetes kubectl rbac kubernetes-pod kubeconfig
2个回答
1
投票

kubectl cp内部使用exec。无法提供仅复制的权限,但是您只能提供exec权限。

创建具有pods/exec权限的角色

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: default
  name: pod-exec
rules:
- apiGroups: [""]
  resources: ["pods/exec"]
  verbs: ["create"]

创建角色绑定以将上述角色分配给user

apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: pod-exec-binding
  namespace: default
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: pod-exec
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: User
  name: user

0
投票

而不是使用kubectl cp,而是使用sftp或rsync服务器运行sidecar容器。这样可以更好地控制所有级别。

© www.soinside.com 2019 - 2024. All rights reserved.