Skip to content
Snippets Groups Projects
Commit 55e9e839 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-4453 add rbac for elasticsearch admin secret, cleanup

parent 04b6dd8d
Branches
Tags
No related merge requests found
Showing
with 233 additions and 43 deletions
#
# Copyright (C) 2023 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: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: ozgcloud-elasticsearch-operator-admin-secret-view-role
namespace: {{ required "elasticsearch.namespace must be set" (.Values.elasticsearch).namespace }}
rules:
- apiGroups:
- ""
resourceNames:
- {{ required "elasticsearch.adminSecretName must be set" (.Values.elasticsearch).adminSecretName }}
resources:
- secrets
verbs:
- get
#
# Copyright (C) 2023 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-elasticsearch-operator-admin-secret-view-role-binding
namespace: {{ required "elasticsearch.namespace must be set" (.Values.elasticsearch).namespace }}
subjects:
- kind: ServiceAccount
name: ozgcloud-elasticsearch-operator-serviceaccount
namespace: {{ .Release.Namespace }}
roleRef:
kind: Role
name: ozgcloud-elasticsearch-operator-admin-secret-view-role
apiGroup: rbac.authorization.k8s.io
...@@ -3,11 +3,9 @@ kind: ClusterRole ...@@ -3,11 +3,9 @@ kind: ClusterRole
metadata: metadata:
name: ozgcloud-elasticsearch-operator-edit-role name: ozgcloud-elasticsearch-operator-edit-role
labels: labels:
app.kubernetes.io/name: clusterrole app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: elasticsearch-edit-role app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/component: rbac app.kubernetes.io/component: ozgcloud-elasticsearch-operator
app.kubernetes.io/created-by: ozgcloud-operator
app.kubernetes.io/part-of: ozgcloud-operator
rules: rules:
- apiGroups: - apiGroups:
- api.ozgcloud-stack.de - api.ozgcloud-stack.de
......
...@@ -3,11 +3,9 @@ kind: ClusterRole ...@@ -3,11 +3,9 @@ kind: ClusterRole
metadata: metadata:
name: ozgcloud-elasticsearch-operator-view-role name: ozgcloud-elasticsearch-operator-view-role
labels: labels:
app.kubernetes.io/name: clusterrole app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: elasticsearch-view-role app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/component: rbac app.kubernetes.io/component: ozgcloud-elasticsearch-operator
app.kubernetes.io/created-by: ozgcloud-operator
app.kubernetes.io/part-of: ozgcloud-operator
rules: rules:
- apiGroups: - apiGroups:
- api.ozgcloud-stack.de - api.ozgcloud-stack.de
......
...@@ -2,3 +2,6 @@ ...@@ -2,3 +2,6 @@
image: image:
repo: docker.ozg-sh.de repo: docker.ozg-sh.de
elasticsearch:
namespace: elastic-system
adminSecretName: ozg-search-cluster-es-elastic-user
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: deployment pull secret suite: deployment pull secret
release: release:
name: ozgcloud-keycloak-operator name: ozgcloud-elasticsearch-operator
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- deployment.yaml - deployment.yaml
......
#
# Copyright (C) 2023 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: Elasticsearch admin secret view role test
release:
name: ozgcloud-elasticsearch-operator
namespace: test-namespace
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_admin_secret_view_role.yaml
tests:
- it: should have apiVersion
asserts:
- equal:
path: apiVersion
value: rbac.authorization.k8s.io/v1
- it: should have isKind of
asserts:
- isKind:
of: Role
- it: should have metadata name
asserts:
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-admin-secret-view-role
- it: should have metadata namespace
asserts:
- equal:
path: metadata.namespace
value: elastic-system
- it: should have rules for ozgcloudelasticsearches resource
asserts:
- equal:
path: rules
value:
- apiGroups:
- ""
resourceNames:
- ozg-search-cluster-es-elastic-user
resources:
- secrets
verbs:
- get
\ No newline at end of file
#
# Copyright (C) 2023 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: Elasticsearch admin secret view rolebinding test
release:
name: ozgcloud-elasticsearch-operator
namespace: sh-helm-test
templates:
- templates/rbac/ozgcloud_elasticsearch_operator_admin_secret_view_rolebinding.yaml
tests:
- it: should have apiVersion
asserts:
- equal:
path: apiVersion
value: rbac.authorization.k8s.io/v1
- it: should have isKind of
asserts:
- isKind:
of: RoleBinding
- it: should have metadata name
asserts:
- equal:
path: metadata.name
value: ozgcloud-elasticsearch-operator-admin-secret-view-role-binding
- it: should have subjects
asserts:
- equal:
path: subjects
value:
- kind: ServiceAccount
name: ozgcloud-elasticsearch-operator-serviceaccount
namespace: sh-helm-test
- it: should have roleRef
asserts:
- equal:
path: roleRef
value:
kind: Role
name: ozgcloud-elasticsearch-operator-admin-secret-view-role
apiGroup: rbac.authorization.k8s.io
\ No newline at end of file
suite: elasticsearch_edit_role test suite: elasticsearch_edit_role test
release:
name: release-name
templates: templates:
- templates/rbac/elasticsearch_edit_role.yaml - templates/rbac/ozgcloud_elasticsearch_operator_edit_role.yaml
tests: tests:
- it: should have apiVersion - it: should have apiVersion
asserts: asserts:
...@@ -21,27 +23,17 @@ tests: ...@@ -21,27 +23,17 @@ tests:
asserts: asserts:
- equal: - equal:
path: metadata.labels.[app.kubernetes.io/name] path: metadata.labels.[app.kubernetes.io/name]
value: clusterrole value: release-name
- it: should have metadata labels instance - it: should have metadata labels instance
asserts: asserts:
- equal: - equal:
path: metadata.labels.[app.kubernetes.io/instance] path: metadata.labels.[app.kubernetes.io/instance]
value: elasticsearch-edit-role value: release-name
- it: should have metadata labels component - it: should have metadata labels component
asserts: asserts:
- equal: - equal:
path: metadata.labels.[app.kubernetes.io/component] path: metadata.labels.[app.kubernetes.io/component]
value: rbac value: ozgcloud-elasticsearch-operator
- it: should have metadata labels created-by
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/created-by]
value: ozgcloud-operator
- it: should have metadata labels part-of
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/part-of]
value: ozgcloud-operator
- it: should have rules for ozgcloudelasticsearches resource - it: should have rules for ozgcloudelasticsearches resource
asserts: asserts:
......
...@@ -4,7 +4,7 @@ suite: elasticsearch_view_rolebinding test ...@@ -4,7 +4,7 @@ suite: elasticsearch_view_rolebinding test
release: release:
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- templates/rbac/elasticsearch_view_rolebinding.yaml - templates/rbac/ozgcloud_elasticsearch_operator_view_rolebinding.yaml
tests: tests:
- it: should have apiVersion - it: should have apiVersion
asserts: asserts:
......
# #
# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den # Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den
# Ministerpräsidenten des Landes Schleswig-Holstein # Ministerpräsidenten des Landes Schleswig-Holstein
# Staatskanzlei # Staatskanzlei
# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung # Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
...@@ -27,7 +27,7 @@ release: ...@@ -27,7 +27,7 @@ release:
name: ozgcloud-elasticsearch-operator name: ozgcloud-elasticsearch-operator
namespace: test-namespace namespace: test-namespace
templates: templates:
- templates/rbac/serviceaccount.yaml - templates/rbac/ozgcloud_elasticsearch_operator_serviceaccount.yaml
tests: tests:
- it: test metadata - it: test metadata
asserts: asserts:
......
suite: elasticsearch_view_role test suite: elasticsearch_view_role test
release:
name: release-name
templates: templates:
- templates/rbac/elasticsearch_view_role.yaml - templates/rbac/ozgcloud_elasticsearch_operator_view_role.yaml
tests: tests:
- it: should have apiVersion - it: should have apiVersion
asserts: asserts:
...@@ -21,27 +23,17 @@ tests: ...@@ -21,27 +23,17 @@ tests:
asserts: asserts:
- equal: - equal:
path: metadata.labels.[app.kubernetes.io/name] path: metadata.labels.[app.kubernetes.io/name]
value: clusterrole value: release-name
- it: should have metadata labels instance - it: should have metadata labels instance
asserts: asserts:
- equal: - equal:
path: metadata.labels.[app.kubernetes.io/instance] path: metadata.labels.[app.kubernetes.io/instance]
value: elasticsearch-view-role value: release-name
- it: should have metadata labels component - it: should have metadata labels component
asserts: asserts:
- equal: - equal:
path: metadata.labels.[app.kubernetes.io/component] path: metadata.labels.[app.kubernetes.io/component]
value: rbac value: ozgcloud-elasticsearch-operator
- it: should have metadata labels created-by
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/created-by]
value: ozgcloud-operator
- it: should have metadata labels part-of
asserts:
- equal:
path: metadata.labels.[app.kubernetes.io/part-of]
value: ozgcloud-operator
- it: should have rules for ozgcloudelasticsearches resource - it: should have rules for ozgcloudelasticsearches resource
asserts: asserts:
......
...@@ -4,7 +4,7 @@ suite: elasticsearch_edit_rolebinding test ...@@ -4,7 +4,7 @@ suite: elasticsearch_edit_rolebinding test
release: release:
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- templates/rbac/elasticsearch_edit_rolebinding.yaml - templates/rbac/ozgcloud_elasticsearch_operator_edit_rolebinding.yaml
tests: tests:
- it: should have apiVersion - it: should have apiVersion
asserts: asserts:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment