Как ограничить доступ к определенным секретам в POD (POD должен иметь доступ только к определенным секретам, используемым данным приложением)
Я хочу получить доступ к определенному секрету из 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
...
но, к моему удивлению, модуль запускается с чтения секрета как env vars. Так запутались, помогите мне здесь.
Я не знаю, где я здесь ошибаюсь.