diff --git a/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_read_write_role.yaml b/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_read_role.yaml similarity index 82% rename from src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_read_write_role.yaml rename to src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_read_role.yaml index a73b44d326e25b58fd86504ac7e19ec564729da8..5ec9fccd652457a7d79da3df7c96b98b7f762a7b 100644 --- a/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_read_write_role.yaml +++ b/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_read_role.yaml @@ -25,7 +25,7 @@ kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: ozgcloud-elster-transfer-operator-secret-read-write-role-binding + name: ozgcloud-elster-transfer-operator-secret-read-role-binding namespace: {{ include "app.namespace" . }} subjects: - kind: ServiceAccount @@ -33,17 +33,16 @@ subjects: namespace: {{ required "elsterTransferOperator.namespace must be set" (.Values.elsterTransferOperator).namespace }} roleRef: kind: Role - name: ozgcloud-elster-transfer-operator-secret-read-write-role + name: ozgcloud-elster-transfer-operator-secret-read-role apiGroup: rbac.authorization.k8s.io --- kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: - name: ozgcloud-elster-transfer-operator-secret-read-write-role + name: ozgcloud-elster-transfer-operator-secret-read-role namespace: {{ include "app.namespace" . }} rules: - - apiGroups: - - "" - resources: - - secrets - verbs: ["get", "list", "create", "update", "delete"] + - apiGroups: [""] + resources: ["secrets"] + verbs: ["get", "list"] + resourceNames: ["muk-user-secret"] diff --git a/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_write_role.yaml b/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_write_role.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e39569b126507883de83b85b90b3abf58f9b4b89 --- /dev/null +++ b/src/main/helm/templates/ozgcloud_elstertransfer_operator_secret_write_role.yaml @@ -0,0 +1,47 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +kind: RoleBinding +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: ozgcloud-elster-transfer-operator-secret-write-role-binding + namespace: {{ include "app.namespace" . }} +subjects: + - kind: ServiceAccount + name: ozgcloud-elster-transfer-operator-service-account + namespace: {{ required "elsterTransferOperator.namespace must be set" (.Values.elsterTransferOperator).namespace }} +roleRef: + kind: Role + name: ozgcloud-elster-transfer-operator-secret-write-role + apiGroup: rbac.authorization.k8s.io +--- +kind: Role +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: ozgcloud-elster-transfer-operator-secret-write-role + namespace: {{ include "app.namespace" . }} +rules: + - apiGroups: [""] + resources: ["secrets"] + verbs: ["create", "update", "delete"] diff --git a/src/test/helm/ozgcloud_elstertransfer_operator_secret_read_write_role_test.yaml b/src/test/helm/ozgcloud_elstertransfer_operator_secret_read_role_test.yaml similarity index 90% rename from src/test/helm/ozgcloud_elstertransfer_operator_secret_read_write_role_test.yaml rename to src/test/helm/ozgcloud_elstertransfer_operator_secret_read_role_test.yaml index 20076fc6c78a20d5c10470c61a3fb5890ddc9817..9f785e0ed622e1558bcb681abe28750fc0431097 100644 --- a/src/test/helm/ozgcloud_elstertransfer_operator_secret_read_write_role_test.yaml +++ b/src/test/helm/ozgcloud_elstertransfer_operator_secret_read_role_test.yaml @@ -27,7 +27,7 @@ release: name: ozgcloud-elstertransfer-operator namespace: test-namespace templates: - - templates/ozgcloud_elstertransfer_operator_secret_read_write_role.yaml + - templates/ozgcloud_elstertransfer_operator_secret_read_role.yaml tests: @@ -43,7 +43,7 @@ tests: of: rbac.authorization.k8s.io/v1 - equal: path: metadata.name - value: ozgcloud-elster-transfer-operator-secret-read-write-role-binding + value: ozgcloud-elster-transfer-operator-secret-read-role-binding documentIndex: 0 - it: test RoleBinding subject @@ -67,7 +67,7 @@ tests: path: roleRef value: kind: Role - name: ozgcloud-elster-transfer-operator-secret-read-write-role + name: ozgcloud-elster-transfer-operator-secret-read-role apiGroup: rbac.authorization.k8s.io documentIndex: 0 @@ -83,7 +83,7 @@ tests: of: rbac.authorization.k8s.io/v1 - equal: path: metadata.name - value: ozgcloud-elster-transfer-operator-secret-read-write-role + value: ozgcloud-elster-transfer-operator-secret-read-role documentIndex: 1 - it: test RoleBinding rules @@ -101,9 +101,8 @@ tests: verbs: - get - list - - create - - update - - delete + resourcesNames: + - muk-user-secret documentIndex: 1 - it: test eltertransferOperator namespace must be set msg asserts: diff --git a/src/test/helm/ozgcloud_elstertransfer_operator_secret_write_role_test.yaml b/src/test/helm/ozgcloud_elstertransfer_operator_secret_write_role_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0c85a9b66697e1cf3ce6b3162d8509beccabd1d0 --- /dev/null +++ b/src/test/helm/ozgcloud_elstertransfer_operator_secret_write_role_test.yaml @@ -0,0 +1,109 @@ +# +# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: ElsterTransfer user secret rbac test +release: + name: ozgcloud-elstertransfer-operator + namespace: test-namespace +templates: + - templates/ozgcloud_elstertransfer_operator_secret_write_role.yaml + + +tests: + - it: test RoleBinding metadata + set: + elsterTransferOperator: + namespace: etr-operator + asserts: + - isKind: + of: RoleBinding + documentIndex: 0 + - isAPIVersion: + of: rbac.authorization.k8s.io/v1 + - equal: + path: metadata.name + value: ozgcloud-elster-transfer-operator-secret-write-role-binding + documentIndex: 0 + + - it: test RoleBinding subject + set: + elsterTransferOperator: + namespace: etr-operator + asserts: + - contains: + path: subjects + content: + kind: ServiceAccount + name: ozgcloud-elster-transfer-operator-service-account + namespace: etr-operator + documentIndex: 0 + - it: test RoleBinding roleRef + set: + elsterTransferOperator: + namespace: etr-operator + asserts: + - equal: + path: roleRef + value: + kind: Role + name: ozgcloud-elster-transfer-operator-secret-write-role + apiGroup: rbac.authorization.k8s.io + documentIndex: 0 + + - it: test Role metadata + set: + elsterTransferOperator: + namespace: etr-operator + asserts: + - isKind: + of: Role + documentIndex: 1 + - isAPIVersion: + of: rbac.authorization.k8s.io/v1 + - equal: + path: metadata.name + value: ozgcloud-elster-transfer-operator-secret-write-role + documentIndex: 1 + + - it: test RoleBinding rules + set: + elsterTransferOperator: + namespace: etr-operator + asserts: + - contains: + path: rules + content: + apiGroups: + - "" + resources: + - secrets + verbs: + - create + - update + - delete + documentIndex: 1 + - it: test eltertransferOperator namespace must be set msg + asserts: + - failedTemplate: + errorMessage: elsterTransferOperator.namespace must be set \ No newline at end of file