Skip to content

Commit d3124ac

Browse files
Merge pull request cert-manager#7213 from Jasper-Ben/add_serviceaccount_token_rbac
Add RBAC for the serviceaccount to create tokens
2 parents c7f61ed + 8dea2d0 commit d3124ac

File tree

1 file changed

+45
-0
lines changed
  • deploy/charts/cert-manager/templates

1 file changed

+45
-0
lines changed

deploy/charts/cert-manager/templates/rbac.yaml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,51 @@ subjects:
4646

4747
---
4848

49+
{{- if .Values.serviceAccount.create }}
50+
apiVersion: rbac.authorization.k8s.io/v1
51+
kind: Role
52+
metadata:
53+
name: {{ template "cert-manager.serviceAccountName" . }}-tokenrequest
54+
namespace: {{ include "cert-manager.namespace" . }}
55+
labels:
56+
app: {{ include "cert-manager.name" . }}
57+
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
58+
app.kubernetes.io/instance: {{ .Release.Name }}
59+
app.kubernetes.io/component: "controller"
60+
{{- include "labels" . | nindent 4 }}
61+
rules:
62+
- apiGroups: [""]
63+
resources: ["serviceaccounts/token"]
64+
resourceNames: ["{{ template "cert-manager.serviceAccountName" . }}"]
65+
verbs: ["create"]
66+
67+
---
68+
69+
# grant cert-manager permission to create tokens for the serviceaccount
70+
apiVersion: rbac.authorization.k8s.io/v1
71+
kind: RoleBinding
72+
metadata:
73+
name: {{ include "cert-manager.fullname" . }}-{{ template "cert-manager.serviceAccountName" . }}-tokenrequest
74+
namespace: {{ include "cert-manager.namespace" . }}
75+
labels:
76+
app: {{ include "cert-manager.name" . }}
77+
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
78+
app.kubernetes.io/instance: {{ .Release.Name }}
79+
app.kubernetes.io/component: "controller"
80+
{{- include "labels" . | nindent 4 }}
81+
roleRef:
82+
apiGroup: rbac.authorization.k8s.io
83+
kind: Role
84+
name: {{ template "cert-manager.serviceAccountName" . }}-tokenrequest
85+
subjects:
86+
- apiGroup: ""
87+
kind: ServiceAccount
88+
name: {{ template "cert-manager.serviceAccountName" . }}
89+
namespace: {{ include "cert-manager.namespace" . }}
90+
{{- end }}
91+
92+
---
93+
4994
# Issuer controller role
5095
apiVersion: rbac.authorization.k8s.io/v1
5196
kind: ClusterRole

0 commit comments

Comments
 (0)