rbac.yaml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. {{- if .Values.rbac.create -}}
  2. apiVersion: rbac.authorization.k8s.io/v1
  3. kind: ClusterRole
  4. metadata:
  5. name: {{ include "external-secrets.fullname" . }}-controller
  6. labels:
  7. {{- include "external-secrets.labels" . | nindent 4 }}
  8. rules:
  9. - apiGroups:
  10. - "external-secrets.io"
  11. resources:
  12. - "secretstores"
  13. - "clustersecretstores"
  14. - "externalsecrets"
  15. verbs:
  16. - "get"
  17. - "list"
  18. - "watch"
  19. - apiGroups:
  20. - "external-secrets.io"
  21. resources:
  22. - "externalsecrets"
  23. - "externalsecrets/status"
  24. verbs:
  25. - "update"
  26. - "patch"
  27. - apiGroups:
  28. - ""
  29. resources:
  30. - "serviceaccounts"
  31. verbs:
  32. - "get"
  33. - "list"
  34. - "watch"
  35. - apiGroups:
  36. - ""
  37. resources:
  38. - "secrets"
  39. verbs:
  40. - "get"
  41. - "list"
  42. - "watch"
  43. - "create"
  44. - "update"
  45. - "delete"
  46. - apiGroups:
  47. - ""
  48. resources:
  49. - "events"
  50. verbs:
  51. - "create"
  52. - "patch"
  53. ---
  54. apiVersion: rbac.authorization.k8s.io/v1
  55. kind: ClusterRoleBinding
  56. metadata:
  57. name: {{ include "external-secrets.fullname" . }}-controller
  58. labels:
  59. {{- include "external-secrets.labels" . | nindent 4 }}
  60. roleRef:
  61. apiGroup: rbac.authorization.k8s.io
  62. kind: ClusterRole
  63. name: {{ include "external-secrets.fullname" . }}-controller
  64. subjects:
  65. - name: {{ include "external-secrets.serviceAccountName" . }}
  66. namespace: {{ .Release.Namespace | quote }}
  67. kind: ServiceAccount
  68. ---
  69. apiVersion: rbac.authorization.k8s.io/v1
  70. kind: Role
  71. metadata:
  72. name: {{ include "external-secrets.fullname" . }}-leaderelection
  73. namespace: {{ .Release.Namespace | quote }}
  74. labels:
  75. {{- include "external-secrets.labels" . | nindent 4 }}
  76. rules:
  77. - apiGroups:
  78. - ""
  79. resources:
  80. - "configmaps"
  81. resourceNames:
  82. - "external-secrets-controller"
  83. verbs:
  84. - "get"
  85. - "update"
  86. - "patch"
  87. - apiGroups:
  88. - ""
  89. resources:
  90. - "configmaps"
  91. verbs:
  92. - "create"
  93. - apiGroups:
  94. - "coordination.k8s.io"
  95. resources:
  96. - "leases"
  97. verbs:
  98. - "get"
  99. - "update"
  100. - "patch"
  101. ---
  102. apiVersion: rbac.authorization.k8s.io/v1
  103. kind: RoleBinding
  104. metadata:
  105. name: {{ include "external-secrets.fullname" . }}-leaderelection
  106. namespace: {{ .Release.Namespace | quote }}
  107. labels:
  108. {{- include "external-secrets.labels" . | nindent 4 }}
  109. roleRef:
  110. apiGroup: rbac.authorization.k8s.io
  111. kind: Role
  112. name: {{ include "external-secrets.fullname" . }}-leaderelection
  113. subjects:
  114. - kind: ServiceAccount
  115. name: {{ include "external-secrets.serviceAccountName" . }}
  116. namespace: {{ .Release.Namespace | quote }}
  117. {{- end }}