Как ограничить доступ к определенным секретам в 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. Так запутались, помогите мне здесь.

Я не знаю, где я здесь ошибаюсь.

0 ответов

Другие вопросы по тегам