| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395 |
- {{- if .Values.rbac.create -}}
- apiVersion: rbac.authorization.k8s.io/v1
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- kind: Role
- {{- else }}
- kind: ClusterRole
- {{- end }}
- metadata:
- name: {{ include "external-secrets.fullname" . }}-controller
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- namespace: {{ .Values.scopedNamespace | quote }}
- {{- end }}
- labels:
- {{- include "external-secrets.labels" . | nindent 4 }}
- rules:
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "secretstores"
- {{- if .Values.processClusterStore }}
- - "clustersecretstores"
- {{- end }}
- - "externalsecrets"
- {{- if .Values.processClusterExternalSecret }}
- - "clusterexternalsecrets"
- {{- end }}
- {{- if .Values.processPushSecret }}
- - "pushsecrets"
- {{- end }}
- {{- if .Values.processClusterPushSecret }}
- - "clusterpushsecrets"
- {{- end }}
- verbs:
- - "get"
- - "list"
- - "watch"
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "externalsecrets"
- - "externalsecrets/status"
- {{- if .Values.openshiftFinalizers }}
- - "externalsecrets/finalizers"
- {{- end }}
- - "secretstores"
- - "secretstores/status"
- {{- if .Values.openshiftFinalizers }}
- - "secretstores/finalizers"
- {{- end }}
- {{- if .Values.processClusterStore }}
- - "clustersecretstores"
- - "clustersecretstores/status"
- {{- if .Values.openshiftFinalizers }}
- - "clustersecretstores/finalizers"
- {{- end }}
- {{- end }}
- {{- if .Values.processClusterExternalSecret }}
- - "clusterexternalsecrets"
- - "clusterexternalsecrets/status"
- {{- if .Values.openshiftFinalizers }}
- - "clusterexternalsecrets/finalizers"
- {{- end }}
- {{- end }}
- {{- if .Values.processPushSecret }}
- - "pushsecrets"
- - "pushsecrets/status"
- {{- if .Values.openshiftFinalizers }}
- - "pushsecrets/finalizers"
- {{- end }}
- {{- end }}
- {{- if .Values.processClusterPushSecret }}
- - "clusterpushsecrets"
- - "clusterpushsecrets/status"
- {{- if .Values.openshiftFinalizers }}
- - "clusterpushsecrets/finalizers"
- {{- end }}
- {{- end }}
- verbs:
- - "get"
- - "update"
- - "patch"
- - apiGroups:
- - "generators.external-secrets.io"
- resources:
- - "generatorstates"
- verbs:
- - "get"
- - "list"
- - "watch"
- - "create"
- - "update"
- - "patch"
- - "delete"
- - "deletecollection"
- - apiGroups:
- - "generators.external-secrets.io"
- resources:
- - "acraccesstokens"
- - "clustergenerators"
- - "ecrauthorizationtokens"
- - "fakes"
- - "gcraccesstokens"
- - "githubaccesstokens"
- - "quayaccesstokens"
- - "passwords"
- - "stssessiontokens"
- - "uuids"
- - "vaultdynamicsecrets"
- - "webhooks"
- - "grafanas"
- - "mfas"
- verbs:
- - "get"
- - "list"
- - "watch"
- - apiGroups:
- - ""
- resources:
- - "serviceaccounts"
- - "namespaces"
- verbs:
- - "get"
- - "list"
- - "watch"
- - apiGroups:
- - ""
- resources:
- - "configmaps"
- verbs:
- - "get"
- - "list"
- - "watch"
- - apiGroups:
- - ""
- resources:
- - "secrets"
- verbs:
- - "get"
- - "list"
- - "watch"
- - "create"
- - "update"
- - "delete"
- - "patch"
- - apiGroups:
- - ""
- resources:
- - "serviceaccounts/token"
- verbs:
- - "create"
- - apiGroups:
- - ""
- resources:
- - "events"
- verbs:
- - "create"
- - "patch"
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "externalsecrets"
- verbs:
- - "create"
- - "update"
- - "delete"
- {{- if .Values.processPushSecret }}
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "pushsecrets"
- verbs:
- - "create"
- - "update"
- - "delete"
- {{- end }}
- ---
- apiVersion: rbac.authorization.k8s.io/v1
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- kind: Role
- {{- else }}
- kind: ClusterRole
- {{- end }}
- metadata:
- name: {{ include "external-secrets.fullname" . }}-view
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- namespace: {{ .Values.scopedNamespace | quote }}
- {{- end }}
- labels:
- {{- include "external-secrets.labels" . | nindent 4 }}
- {{- if .Values.rbac.aggregateToView }}
- rbac.authorization.k8s.io/aggregate-to-view: "true"
- {{- end }}
- {{- if .Values.rbac.aggregateToEdit }}
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
- {{- end }}
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
- rules:
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "externalsecrets"
- - "secretstores"
- {{- if .Values.processClusterStore }}
- - "clustersecretstores"
- {{- end }}
- {{- if .Values.processPushSecret }}
- - "pushsecrets"
- {{- end }}
- {{- if .Values.processClusterPushSecret }}
- - "clusterpushsecrets"
- {{- end }}
- verbs:
- - "get"
- - "watch"
- - "list"
- - apiGroups:
- - "generators.external-secrets.io"
- resources:
- - "acraccesstokens"
- - "clustergenerators"
- - "ecrauthorizationtokens"
- - "fakes"
- - "gcraccesstokens"
- - "githubaccesstokens"
- - "quayaccesstokens"
- - "passwords"
- - "vaultdynamicsecrets"
- - "webhooks"
- - "grafanas"
- - "generatorstates"
- - "mfas"
- verbs:
- - "get"
- - "watch"
- - "list"
- ---
- apiVersion: rbac.authorization.k8s.io/v1
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- kind: Role
- {{- else }}
- kind: ClusterRole
- {{- end }}
- metadata:
- name: {{ include "external-secrets.fullname" . }}-edit
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- namespace: {{ .Values.scopedNamespace | quote }}
- {{- end }}
- labels:
- {{- include "external-secrets.labels" . | nindent 4 }}
- {{- if .Values.rbac.aggregateToEdit }}
- rbac.authorization.k8s.io/aggregate-to-edit: "true"
- {{- end }}
- rbac.authorization.k8s.io/aggregate-to-admin: "true"
- rules:
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "externalsecrets"
- - "secretstores"
- {{- if .Values.processClusterStore }}
- - "clustersecretstores"
- {{- end }}
- {{- if .Values.processPushSecret }}
- - "pushsecrets"
- {{- end }}
- {{- if .Values.processClusterPushSecret }}
- - "clusterpushsecrets"
- {{- end }}
- verbs:
- - "create"
- - "delete"
- - "deletecollection"
- - "patch"
- - "update"
- - apiGroups:
- - "generators.external-secrets.io"
- resources:
- - "acraccesstokens"
- - "clustergenerators"
- - "ecrauthorizationtokens"
- - "fakes"
- - "gcraccesstokens"
- - "githubaccesstokens"
- - "quayaccesstokens"
- - "passwords"
- - "vaultdynamicsecrets"
- - "webhooks"
- - "grafanas"
- - "generatorstates"
- - "mfas"
- verbs:
- - "create"
- - "delete"
- - "deletecollection"
- - "patch"
- - "update"
- ---
- apiVersion: rbac.authorization.k8s.io/v1
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- kind: RoleBinding
- {{- else }}
- kind: ClusterRoleBinding
- {{- end }}
- metadata:
- name: {{ include "external-secrets.fullname" . }}-controller
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- namespace: {{ .Values.scopedNamespace | quote }}
- {{- end }}
- labels:
- {{- include "external-secrets.labels" . | nindent 4 }}
- roleRef:
- apiGroup: rbac.authorization.k8s.io
- {{- if and .Values.scopedNamespace .Values.scopedRBAC }}
- kind: Role
- {{- else }}
- kind: ClusterRole
- {{- end }}
- name: {{ include "external-secrets.fullname" . }}-controller
- subjects:
- - name: {{ include "external-secrets.serviceAccountName" . }}
- namespace: {{ template "external-secrets.namespace" . }}
- kind: ServiceAccount
- ---
- apiVersion: rbac.authorization.k8s.io/v1
- kind: Role
- metadata:
- name: {{ include "external-secrets.fullname" . }}-leaderelection
- namespace: {{ template "external-secrets.namespace" . }}
- labels:
- {{- include "external-secrets.labels" . | nindent 4 }}
- rules:
- - apiGroups:
- - ""
- resources:
- - "configmaps"
- resourceNames:
- - "external-secrets-controller"
- verbs:
- - "get"
- - "update"
- - "patch"
- - apiGroups:
- - ""
- resources:
- - "configmaps"
- verbs:
- - "create"
- - apiGroups:
- - "coordination.k8s.io"
- resources:
- - "leases"
- verbs:
- - "get"
- - "create"
- - "update"
- - "patch"
- ---
- apiVersion: rbac.authorization.k8s.io/v1
- kind: RoleBinding
- metadata:
- name: {{ include "external-secrets.fullname" . }}-leaderelection
- namespace: {{ template "external-secrets.namespace" . }}
- labels:
- {{- include "external-secrets.labels" . | nindent 4 }}
- roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: {{ include "external-secrets.fullname" . }}-leaderelection
- subjects:
- - kind: ServiceAccount
- name: {{ include "external-secrets.serviceAccountName" . }}
- namespace: {{ template "external-secrets.namespace" . }}
- {{- if .Values.rbac.servicebindings.create }}
- ---
- apiVersion: rbac.authorization.k8s.io/v1
- kind: ClusterRole
- metadata:
- name: {{ include "external-secrets.fullname" . }}-servicebindings
- labels:
- servicebinding.io/controller: "true"
- {{- include "external-secrets.labels" . | nindent 4 }}
- rules:
- - apiGroups:
- - "external-secrets.io"
- resources:
- - "externalsecrets"
- {{- if .Values.processPushSecret }}
- - "pushsecrets"
- {{- end }}
- verbs:
- - "get"
- - "list"
- - "watch"
- {{- end }}
- {{- end }}
|