我想从 POD 访问特定的秘密,我不希望 POD 可以访问其他秘密(不需要)。
我创建了一个无法访问机密的服务帐户(甚至没有“获取”)。
apiVersion: v1
kind: ServiceAccount
metadata:
name: no-access-to-secrets
---
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: no-access-to-secrets
rules:
- apiGroups: [""]
verbs: [""]
resources:
- ""
resourceNames:
- ""
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: no-access-to-secrets
subjects:
- kind: ServiceAccount
name: no-access-to-secrets
roleRef:
kind: Role
name: no-access-to-secrets
apiGroup: rbac.authorization.k8s.io
期望:我已将此服务帐户分配给 POD,因此 POD 应该抱怨或由于无法访问密钥而无法启动。
...
template:
metadata:
labels:
app: app-name
spec:
serviceAccountName: no-access-to-secrets
envFrom:
- secretRef:
name: my-secret
...
但令我惊讶的是,该 pod 是从读取一个秘密作为 env vars 开始的。好迷茫,帮帮我。
我不知道我在这里做错了什么。