diff --git a/Jenkinsfile b/Jenkinsfile
index 265c7255e35a1caebe92443e6dfeb1be885001a7..bb1267ea8b7418658e16a9a869ae7eae4a4c449d 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -29,7 +29,7 @@ pipeline {
                     def interfaceVersion = getPomVersion('vorgang-manager-interface/pom.xml')
                     def mailVersion = getPomVersion('nachrichten-manager/pom.xml')
 
-                    if(env.BRANCH_NAME == 'release'){
+                    if(isReleaseBranch()){
                         if ( !(rootVersion ==~ RELEASE_REGEX) || !(serverVersion ==~ RELEASE_REGEX) || !(interfaceVersion ==~ RELEASE_REGEX) || !(mailVersion ==~ RELEASE_REGEX)) {
                             error("Keine Release Version für Branch ${env.BRANCH_NAME}.")
                         }
@@ -42,6 +42,22 @@ pipeline {
                     if( !(rootVersion == serverVersion && rootVersion == interfaceVersion && rootVersion == mailVersion)){
                         error("Versionen sind nicht identisch")                        
                     }
+
+                    def bayernIdProxyParent = getPomVersion('nachrichten-bayernid-proxy/pom.xml')
+                    def bayernIdProxyInterface = getPomVersion('nachrichten-bayernid-proxy/bayernid-proxy-interface/pom.xml')
+
+                    if(isReleaseBranch()){
+                        if ( !(bayernIdProxyParent ==~ RELEASE_REGEX) || !(bayernIdProxyInterface ==~ RELEASE_REGEX)) {
+                            error("Keine Release Version für BayernIdProxy Branch ${env.BRANCH_NAME}.")
+                        }
+                    } else {
+                        if ( !(bayernIdProxyParent ==~ SNAPSHOT_REGEX) || !(bayernIdProxyInterface ==~ SNAPSHOT_REGEX)) {
+                            error("Keine Snapshot Version für BayernIdProxy Branch ${env.BRANCH_NAME}.")
+                        }
+                    }
+                     if( !(bayernIdProxyParent == bayernIdProxyInterface)){
+                        error("Versionen BayernIdProxy sind nicht identisch")                        
+                    }
                 }
             }
         }
@@ -75,7 +91,7 @@ pipeline {
             }
         }
 
-	   stage('Build Docker image') {
+	   stage('Build Docker image vorgang-manager') {
           steps {
                 script {
                     FAILED_STAGE=env.STAGE_NAME
@@ -89,30 +105,63 @@ pipeline {
            }
         }
 
-        stage('Tag and Push Docker image') {
+        stage('Build Docker image nachrichten-bayernid-proxy') {
+          steps {
+                script {
+                    FAILED_STAGE=env.STAGE_NAME
+                }
+
+                configFileProvider([configFile(fileId: 'maven-settings', variable: 'MAVEN_SETTINGS')]) {
+                    dir('nachrichten-bayernid-proxy/bayernid-proxy-impl') {
+                        sh 'mvn --no-transfer-progress -s $MAVEN_SETTINGS spring-boot:build-image -DskipTests -Dmaven.wagon.http.retryHandler.count=3'
+                    }
+                }
+           }
+        }
+
+        stage('Tag and Push Docker image vorgang-manager') {
             steps {
                 script {
                     FAILED_STAGE=env.STAGE_NAME
-                    IMAGE_TAG = generateImageTag()
+                    IMAGE_TAG = generateImageTag('pom.xml')
 
-                    tagAndPushDockerImage(IMAGE_TAG)
+                    tagAndPushDockerImage('vorgang-manager', IMAGE_TAG)
 
                     if (env.BRANCH_NAME == 'master') {
-                        tagAndPushDockerImage('snapshot-latest')
-                        tagAndPushDockerImage('e2e-test')
+                        tagAndPushDockerImage('vorgang-manager', 'snapshot-latest')
+                        tagAndPushDockerImage('vorgang-manager', 'e2e-test')
                     }
                     else if (env.BRANCH_NAME == 'release') {
-                        tagAndPushDockerImage('latest')
+                        tagAndPushDockerImage('vorgang-manager', 'latest')
                     }
                 }
             }
         }
 
-        stage('Test, build and deploy Helm Chart') {
+        stage('Tag and Push Docker image nachrichten-bayernid-proxy') {
             steps {
                 script {
                     FAILED_STAGE=env.STAGE_NAME
-                    HELM_CHART_VERSION = generateHelmChartVersion()
+                    IMAGE_TAG_BAYERN_ID_PROXY = generateImageTag('nachrichten-bayernid-proxy/pom.xml')
+
+                    tagAndPushDockerImage('bayernid-proxy', IMAGE_TAG_BAYERN_ID_PROXY)
+
+                    if (env.BRANCH_NAME == 'master') {
+                        tagAndPushDockerImage('bayernid-proxy', 'snapshot-latest')
+                        tagAndPushDockerImage('bayernid-proxy', 'e2e-test')
+                    }
+                    else if (env.BRANCH_NAME == 'release') {
+                        tagAndPushDockerImage('bayernid-proxy', 'latest')
+                    }
+                }
+            }
+        }
+
+        stage('Test, build and deploy Helm Chart vorgang-manager') {
+            steps {
+                script {
+                    FAILED_STAGE=env.STAGE_NAME
+                    HELM_CHART_VERSION = generateHelmChartVersion("pom.xml")
 
                     sh "./run_helm_test.sh"
 
@@ -120,12 +169,32 @@ pipeline {
 
                         sh "helm package --version=${HELM_CHART_VERSION} ."
 
-                         deployHelmChart(HELM_CHART_VERSION)
+                         deployHelmChart("vorgang-manager", HELM_CHART_VERSION)
                     }
                 }
             }
         }        
 
+        stage('Test, build and deploy Helm Chart bayernid-proxy') {
+            steps {
+                script {
+                    FAILED_STAGE=env.STAGE_NAME
+                    HELM_CHART_VERSION_BAYERN_ID_PROXY = generateHelmChartVersion("nachrichten-bayernid-proxy/pom.xml")
+
+                    dir('nachrichten-bayernid-proxy') {
+                        sh "./run_helm_test.sh"
+                    } 
+
+                    dir('nachrichten-bayernid-proxy/src/main/helm') {
+
+                        sh "helm package --version=${HELM_CHART_VERSION_BAYERN_ID_PROXY} ."
+
+                        deployHelmChart("bayernid-proxy", HELM_CHART_VERSION_BAYERN_ID_PROXY)
+                    }
+                }
+            }
+        }
+
         stage('Trigger Dev rollout') {
             when {
                 branch 'master'
@@ -136,8 +205,8 @@ pipeline {
 
                     cloneGitopsRepo()
 
-                    setNewDevVorgangManagerVersion()
-
+                    setNewVorgangManagerGitopsVersion("dev")
+                    setNewNachrichtenBayernIdProxyGitopsVersion("dev")
                     pushDevGitopsRepo()
                 }
             }
@@ -153,7 +222,8 @@ pipeline {
 
                     cloneGitopsRepo()
 
-                    setNewTestVorgangManagerVersion()
+                    setNewVorgangManagerGitopsVersion("test")
+                    setNewNachrichtenBayernIdProxyGitopsVersion("test")
 
                     pushTestGitopsRepo()
                 }
@@ -182,7 +252,7 @@ pipeline {
                 branch 'master'
             }
         	steps {
-        	     script {
+        	    script {
                     FAILED_STAGE=env.STAGE_NAME
 
                   	configFileProvider([configFile(fileId: 'maven-settings', variable: 'MAVEN_SETTINGS')]) {
@@ -225,12 +295,23 @@ pipeline {
                                 unstable("SonarQube failed")
                             }
                         }
+
+                        dir('nachrichten-bayernid-proxy') {
+                        	try {
+                                withSonarQubeEnv('sonarqube-ozg-sh'){
+                                    sh 'mvn -s $MAVEN_SETTINGS sonar:sonar'
+	                            }
+	                        } catch (Exception e) {
+                                unstable("SonarQube BayernIdProxy failed")
+                            }
+                        }
             		}
                 }
-        	}
+            }
         }
     }
     
+
     post {
         always{
             junit testResults: '**/target/surefire-reports/*.xml', skipPublishingChecks: true
@@ -246,14 +327,17 @@ pipeline {
 }
 
 
+Boolean isReleaseBranch() {
+    return env.BRANCH_NAME == 'release'
+}
 
-Void deployHelmChart(String helmChartVersion) {       
+void deployHelmChart(String helmChartName, String helmChartVersion) {       
     withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]){
         if (env.BRANCH_NAME == 'release') {
-            result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=ozg-base-apps -F file=@vorgang-manager-'''+helmChartVersion+'''.tgz''', returnStdout: true
+            result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=ozg-base-apps -F file=@'''+helmChartName+'''-'''+helmChartVersion+'''.tgz''', returnStdout: true
         }
         else {
-            result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=ozg-base-apps-snapshot -F file=@vorgang-manager-'''+helmChartVersion+'''.tgz''', returnStdout: true
+            result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=ozg-base-apps-snapshot -F file=@'''+helmChartName+'''-'''+helmChartVersion+'''.tgz''', returnStdout: true
         }
 
         if (result != '') {
@@ -262,8 +346,8 @@ Void deployHelmChart(String helmChartVersion) {
     }
 }
 
-String generateHelmChartVersion() {
-    def chartVersion = getPomVersion('pom.xml')
+String generateHelmChartVersion(String pomFile) {
+    def chartVersion = getPomVersion(pomFile)
 
     if (env.BRANCH_NAME == 'master') {
         chartVersion += "-${env.GIT_COMMIT.take(7)}"
@@ -275,12 +359,12 @@ String generateHelmChartVersion() {
     return chartVersion.replaceAll("_", "-")
 }
 
-Void tagAndPushDockerImage(String newTag){
+Void tagAndPushDockerImage(String imageName, String newTag){
     withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USER', passwordVariable: 'PASSWORD')]) {
         sh 'docker login docker.ozg-sh.de -u ${USER} -p ${PASSWORD}'
 
-        sh "docker tag docker.ozg-sh.de/vorgang-manager:build-latest docker.ozg-sh.de/vorgang-manager:${newTag}"
-        sh "docker push docker.ozg-sh.de/vorgang-manager:${newTag}"
+        sh "docker tag docker.ozg-sh.de/${imageName}:build-latest docker.ozg-sh.de/${imageName}:${newTag}"
+        sh "docker push docker.ozg-sh.de/${imageName}:${newTag}"
     }
 }
 
@@ -290,8 +374,8 @@ String getPomVersion(String pomFile){
     return pom.version
 }
 
-String generateImageTag() {
-    def imageTag = "${env.BRANCH_NAME}-${getPomVersion('pom.xml')}"
+String generateImageTag(String pomFile) {
+    def imageTag = "${env.BRANCH_NAME}-${getPomVersion(pomFile)}"
 
     if (env.BRANCH_NAME == 'master') {
         imageTag += "-${env.GIT_COMMIT.take(7)}"
@@ -318,18 +402,9 @@ Void cloneGitopsRepo() {
     configureGit()
 }
 
-Void setNewDevVorgangManagerVersion() {
-    setNewVorgangManagerGitopsVersion("dev")
-}
-
-Void setNewTestVorgangManagerVersion() {
-    setNewVorgangManagerGitopsVersion("test")
-}
-
 Void setNewVorgangManagerGitopsVersion(String environment) {
     dir("gitops") {
         def envFile = "${environment}/application/values/vorgang-manager-values.yaml"
-
         def envVersions = readYaml file: envFile
 
         envVersions.vorgang_manager.image.tag = IMAGE_TAG
@@ -339,6 +414,18 @@ Void setNewVorgangManagerGitopsVersion(String environment) {
     }
 }
 
+Void setNewNachrichtenBayernIdProxyGitopsVersion(String environment) {
+    dir("gitops") {
+        def envFile = "${environment}/application/values/bayernid-proxy-values.yaml"
+        def envVersions = readYaml file: envFile
+
+        envVersions.nachrichten_bayernid_proxy.image.tag = IMAGE_TAG_BAYERN_ID_PROXY
+        envVersions.nachrichten_bayernid_proxy.helm.version = HELM_CHART_VERSION_BAYERN_ID_PROXY
+
+        writeYaml file: envFile, data: envVersions, overwrite: true
+    }
+}
+
 Void pushDevGitopsRepo() {
     pushNewGitopsVersion('dev')
 }
diff --git a/nachrichten-bayernid-proxy/bayernid-proxy-impl/pom.xml b/nachrichten-bayernid-proxy/bayernid-proxy-impl/pom.xml
index 042d81b0eabe82beb42556cb821ea681b3f609fa..9da99d3bf80c5c2e69013ca017986d7897fb5651 100644
--- a/nachrichten-bayernid-proxy/bayernid-proxy-impl/pom.xml
+++ b/nachrichten-bayernid-proxy/bayernid-proxy-impl/pom.xml
@@ -39,6 +39,8 @@
 	<name>OZG Cloud BayernID Proxy Implementation</name>
 
 	<properties>
+		<jaxb-maven-plugin.version>4.0.0</jaxb-maven-plugin.version>
+
 		<spring-boot.build-image.imageName>docker.ozg-sh.de/bayernid-proxy:build-latest</spring-boot.build-image.imageName>
 	</properties>
 
@@ -55,8 +57,8 @@
 			<artifactId>spring-boot-starter</artifactId>
 		</dependency>
 		<dependency>
-			<groupId>org.springframework.boot</groupId>
-			<artifactId>spring-boot-starter-web</artifactId>
+		<groupId>org.springframework.boot</groupId>
+		<artifactId>spring-boot-starter-web</artifactId>
 		</dependency>
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
diff --git a/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application-dev.yml b/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application-dev.yml
index a77a3901c354302914dc89678013e7cd2622cfc8..df2f1cca69b93f18902100a3a93997030beb2000 100644
--- a/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application-dev.yml
+++ b/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application-dev.yml
@@ -1,3 +1,5 @@
 ozgcloud:
   bayernid:
-    server: "https://infra-pre-id.bayernportal.de/bspx-postkorb-okkomm-ws/bspservices/postkorbkomm"
+    proxy:
+      server: "https://infra-pre-id.bayernportal.de/bspx-postkorb-okkomm-ws/bspservices/postkorbkomm"
+      postkorbId: "28721c6f-b78f-4d5c-a048-19fd2fc429d2"
diff --git a/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application.yml b/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application.yml
index 6c12151d0abfef8a50948c2218bb9042435d8ed9..69790c2b42e751213e739cf8ca6a87df6fd74068 100644
--- a/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application.yml
+++ b/nachrichten-bayernid-proxy/bayernid-proxy-impl/src/main/resources/application.yml
@@ -2,3 +2,28 @@ logging:
   level:
     ROOT: WARN
     '[de.ozgcloud]': INFO
+  config: classpath:log4j2-local.xml
+
+
+management:
+  server:
+    port: 8081
+  health:
+    livenessState:
+      enabled: true
+    readinessState:
+      enabled: true
+  endpoint:
+    health:
+      group:
+        exploratory:
+          include: livenessState,readinessState,ping
+          show-details: always
+      probes:
+        enabled: true
+    prometheus:
+      enabled: true
+  endpoints:
+    web:
+      exposure:
+        include: "*"
diff --git a/nachrichten-bayernid-proxy/run_helm_test.sh b/nachrichten-bayernid-proxy/run_helm_test.sh
new file mode 100755
index 0000000000000000000000000000000000000000..21019cc23dab325f1ec88421dc73caa849af660f
--- /dev/null
+++ b/nachrichten-bayernid-proxy/run_helm_test.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+set -e
+
+helm template  ./src/main/helm/ -f src/test/helm-linter-values.yaml
+helm lint -f src/test/helm-linter-values.yaml ./src/main/helm/
+cd src/main/helm && helm unittest -f '../../test/helm/*.yaml'  .
+
diff --git a/nachrichten-bayernid-proxy/src/main/helm/.helmignore b/nachrichten-bayernid-proxy/src/main/helm/.helmignore
new file mode 100644
index 0000000000000000000000000000000000000000..3d0dbe446770be5127eb719b695414c427b09715
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/.helmignore
@@ -0,0 +1 @@
+tests/
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/main/helm/Chart.yaml b/nachrichten-bayernid-proxy/src/main/helm/Chart.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b04099d33913b9524a729a95a20dc769f5663839
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/Chart.yaml
@@ -0,0 +1,30 @@
+#
+# 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.
+#
+
+apiVersion: v1
+appVersion: "1.0"
+description: A Helm chart for Bayernid-Proxy
+name: bayernid-proxy
+version: 0.0.0-MANAGED-BY-JENKINS
+icon: https://simpleicons.org/icons/helm.svg
diff --git a/nachrichten-bayernid-proxy/src/main/helm/templates/_helpers.tpl b/nachrichten-bayernid-proxy/src/main/helm/templates/_helpers.tpl
new file mode 100644
index 0000000000000000000000000000000000000000..0ea6c8d8c9dd30157cc593c949f47a7be8a738a2
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/templates/_helpers.tpl
@@ -0,0 +1,47 @@
+
+{{/* Default Labels: Helm recommended best-practice labels https://helm.sh/docs/chart_best_practices/labels/ */}}
+{{- define "app.defaultLabels" }}
+app.kubernetes.io/instance: bayernid-proxy
+app.kubernetes.io/managed-by: {{ .Release.Service }}
+app.kubernetes.io/name: {{ .Release.Name }}
+app.kubernetes.io/namespace: {{ .Release.Namespace }}
+app.kubernetes.io/part-of: ozgcloud
+app.kubernetes.io/version: {{ .Chart.Version }}
+helm.sh/chart: {{ printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" }}
+app.kubernetes.io/component: bayernid-proxy
+component: bayernid-proxy
+{{- end -}}
+
+{{- define "app.matchLabels" }}
+app.kubernetes.io/name: {{ .Release.Name }}
+app.kubernetes.io/namespace: {{ .Release.Namespace }}
+component: bayernid-proxy
+{{- end -}}
+
+{{- define "app.envSpringProfiles" }}
+{{- if (.Values.env).overrideSpringProfiles -}}
+{{ printf "%s" (.Values.env).overrideSpringProfiles }}
+{{- else -}}
+{{ printf "oc, %s" (include "app.ozgcloudEnvironment" . ) }}
+{{- end -}}
+{{- end -}}
+
+{{- define "app.ozgcloudEnvironment" -}}
+{{- required "ozgcloud.environment muss angegeben sein" (.Values.ozgcloud).environment -}}
+{{- end -}}
+
+
+{{ define "app.zertifikatPath" }}
+{{- required "ozgcloud zertifikat path muss angegeben sein" (.Values.ozgcloud).bayernid.zertifikat.path -}}
+{{- end -}}
+
+
+{{ define "app.zertifikatFilename" }}
+{{- required "ozgcloud zertifikat fileName muss angegeben sein" (.Values.ozgcloud).bayernid.zertifikat.fileName -}}
+{{- end -}}
+
+
+{{- define "app.serviceAccountName" -}}
+{{ printf "%s" ( (.Values.serviceAccount).name | default "bayernid-proxy-service-account" ) }}
+{{- end -}}
+
diff --git a/nachrichten-bayernid-proxy/src/main/helm/templates/configmap_bindings_type.yaml b/nachrichten-bayernid-proxy/src/main/helm/templates/configmap_bindings_type.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d56b2505d154567012dff38fe9ef5b50887b45a5
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/templates/configmap_bindings_type.yaml
@@ -0,0 +1,32 @@
+#
+# 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.
+#
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: bindings-type
+  namespace: {{ .Release.Namespace }}
+data:
+  type: |
+    ca-certificates
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/main/helm/templates/deployment.yaml b/nachrichten-bayernid-proxy/src/main/helm/templates/deployment.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b3169c97d56ffc2da535e79f0c7f929a69f2f07d
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/templates/deployment.yaml
@@ -0,0 +1,166 @@
+#
+# 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.
+#
+
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: {{ .Release.Name }}
+  namespace: {{ .Release.Namespace }}
+  labels:
+    {{- include "app.defaultLabels" . | indent 4 }}
+spec:
+  progressDeadlineSeconds: 600
+  replicas: {{ .Values.replicaCount }}
+  revisionHistoryLimit: 10
+  selector:
+    matchLabels:
+      {{- include "app.matchLabels" . | indent 6 }}
+  strategy:
+    rollingUpdate:
+      maxSurge: 1
+      maxUnavailable: 0
+    type: RollingUpdate
+  template:
+    metadata:
+      labels:
+        {{- include "app.defaultLabels" . | indent 8 }}
+    spec:  
+      {{- if (.Values.serviceAccount).create }}
+      serviceAccountName: {{ include "app.serviceAccountName" . }}
+      {{- end }}
+      topologySpreadConstraints:
+      - maxSkew: 1
+        topologyKey: kubernetes.io/hostname
+        whenUnsatisfiable: ScheduleAnyway
+        labelSelector:
+          matchLabels:
+            app.kubernetes.io/name: {{ .Release.Name }}
+      containers:
+      - env:
+          - name: SERVICE_BINDING_ROOT
+            value: "/bindings"
+          - name: spring_profiles_active
+            value: {{ include "app.envSpringProfiles" . }}
+
+          {{- with (.Values.env).customList }}
+{{ toYaml . | indent 10 }}
+          {{- end }}
+
+          - name: ozgcloud_bayernid_server
+            value: {{ required "ozgcloud.bayernid.server must be set" (.Values.ozgcloud).bayernid.server }}
+
+          - name: spring_ssl_bundle_jks_bayern-id-ca_keystore_location
+            value: "/keystore/bayernid/bayern-id-ca.p12"
+          - name: spring_ssl_bundle_jks_bayern-id-ca_keystore_type
+            value: PKCS12
+          - name: spring_ssl_bundle_jks_bayern-id-ca_keystore_password
+            valueFrom:
+              secretKeyRef:
+                name: {{ required "ozgcloud.bayernid.certificateSecretName must be set" ((.Values.ozgcloud).bayernid).certificateSecretName }}
+                key: password
+                optional: false
+
+        image: "{{ .Values.image.repo }}/{{ .Values.image.name }}:{{ coalesce (.Values.image).tag "latest" }}"
+        imagePullPolicy: Always
+        name: bayernid-proxy
+        ports:
+          - containerPort: 9090
+            name: grpc-9090
+            protocol: TCP
+          - containerPort: 8081
+            name: metrics
+            protocol: TCP
+        readinessProbe:
+          failureThreshold: 3
+          httpGet:
+            path: /actuator/health/readiness
+            port: 8081
+            scheme: HTTP
+          periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 3
+        startupProbe:
+          httpGet:
+            path: /actuator/health/readiness
+            port: 8081
+            scheme: HTTP
+          failureThreshold: 10
+          initialDelaySeconds: 20
+          periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 5
+        resources:
+        {{- with .Values.resources }}
+{{ toYaml . | indent 10 }}
+        {{- end }}
+        securityContext:
+          allowPrivilegeEscalation: false
+          privileged: false
+          readOnlyRootFilesystem: false
+          runAsNonRoot: true
+          {{- with (.Values.securityContext).runAsUser }}
+          runAsUser: {{ . }}
+          {{- end }}
+          {{- with (.Values.securityContext).runAsGroup }}
+          runAsGroup: {{ . }}
+          {{- end }}
+        stdin: true
+        terminationMessagePath: /dev/termination-log
+        terminationMessagePolicy: File
+        tty: true
+        volumeMounts:
+          - name: bindings
+            mountPath: "/bindings/ca-certificates/type"
+            subPath: type
+            readOnly: true
+          - name: bayern-id-ca
+            mountPath: "/keystore/bayernid/bayern-id-ca.p12"
+            subPath: zertifikat
+            readOnly: true
+          - name: temp-dir
+            mountPath: "/tmp"
+      
+      volumes: 
+        - name: bindings
+          configMap:
+            name: bindings-type
+        - name: bayern-id-ca
+          secret:
+            secretName: {{ required "ozgcloud.bayernid.certificateSecretName must be set" ((.Values.ozgcloud).bayernid).certificateSecretName }}
+            optional: false
+        - name: temp-dir
+          emptyDir: {}
+      dnsConfig: {}
+      dnsPolicy: ClusterFirst
+      imagePullSecrets:
+      - name: {{ required "imagePullSecret must be set" .Values.imagePullSecret  }}
+   
+      restartPolicy: Always
+      {{- with .Values.hostAliases }}
+      hostAliases:
+{{ toYaml . | indent 8 }}
+      {{- end }}
+      schedulerName: default-scheduler
+      securityContext: {}
+      terminationGracePeriodSeconds: 30
diff --git a/nachrichten-bayernid-proxy/src/main/helm/templates/network_policy.yaml b/nachrichten-bayernid-proxy/src/main/helm/templates/network_policy.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..e0effc809597979a1cdb01c636f868c63574f617
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/templates/network_policy.yaml
@@ -0,0 +1,66 @@
+#
+# Copyright (C) 2024 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.
+#
+
+{{- if not (.Values.networkPolicy).disabled }} 
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+  name: network-policy-bayernid-proxy
+  namespace: {{ .Release.Namespace }}
+spec:
+  podSelector:
+    matchLabels:
+      component: bayernid-proxy
+  policyTypes:
+    - Ingress
+    - Egress
+  ingress:
+  - ports:
+    - port: 9090
+    from:
+    - podSelector: 
+        matchLabels:
+          component: vorgang-manager
+{{- with (.Values.networkPolicy).additionalIngressConfig }}
+{{ toYaml . | indent 2 }}
+{{- end }}
+  egress:
+  - to:
+    - namespaceSelector:
+        matchLabels:
+          kubernetes.io/metadata.name: {{ required "networkPolicy.dnsServerNamespace must be set" (.Values.networkPolicy).dnsServerNamespace }}
+    ports:
+      - port: 53
+        protocol: UDP
+      - port: 53
+        protocol: TCP
+      - port: 5353
+        protocol: UDP
+      - port: 5353
+        protocol: TCP
+{{- with (.Values.networkPolicy).additionalEgressConfig }}
+{{ toYaml . | indent 2 }}
+{{- end }}
+
+{{- end }}
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/main/helm/templates/service.yaml b/nachrichten-bayernid-proxy/src/main/helm/templates/service.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ed6467de511d8fddec146bd3fb2a96791f7f7a8f
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/templates/service.yaml
@@ -0,0 +1,42 @@
+#
+# 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.
+#
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{.Release.Name }}
+  namespace: {{ .Release.Namespace }}
+  labels:
+    {{- include "app.defaultLabels" . | indent 4 }}
+spec:
+  type: ClusterIP
+  ports:
+    - name: grpc-9090
+      port: 9090
+      protocol: TCP
+    - name: metrics
+      port: 8081
+      protocol: TCP
+  selector:
+    {{- include "app.matchLabels" . | indent 4 }}
diff --git a/nachrichten-bayernid-proxy/src/main/helm/templates/service_account.yaml b/nachrichten-bayernid-proxy/src/main/helm/templates/service_account.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..231d53f52dfe67b27f474ebf552d1e10a052f042
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/templates/service_account.yaml
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2024 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.
+#
+
+{{- if (.Values.serviceAccount).create }}
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: {{ include "app.serviceAccountName" . }}
+  namespace: {{ .Release.Namespace }}
+{{- end }}
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/main/helm/values.yaml b/nachrichten-bayernid-proxy/src/main/helm/values.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7873a672af6bddd71ca66f81988d8a80d5c0b0ca
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/main/helm/values.yaml
@@ -0,0 +1,39 @@
+#
+# 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.
+#
+
+
+replicaCount: 2
+
+
+image:
+  repo: docker.ozg-sh.de
+  name: bayernid-proxy
+  tag: latest # [default: latest]
+
+    
+vorgangmanagerName: vorgang-manager
+
+imagePullSecret: ozgcloud-image-pull-secret
+
+
diff --git a/nachrichten-bayernid-proxy/src/test/helm-linter-values.yaml b/nachrichten-bayernid-proxy/src/test/helm-linter-values.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..35e31ef09343dc75bec9ea0fb5712ecaf73382ca
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm-linter-values.yaml
@@ -0,0 +1,9 @@
+ozgcloud:
+  environment: test
+  bayernid:
+      server: "https://test"
+      certificateSecretName: "bayernidCertificat"
+
+networkPolicy:
+  dnsServerNamespace: test-dns-namespace
+
diff --git a/nachrichten-bayernid-proxy/src/test/helm/configmap_bindings_type_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/configmap_bindings_type_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..78236b32067b019da7497306962f0fd74d7d9307
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/configmap_bindings_type_test.yaml
@@ -0,0 +1,46 @@
+#
+# 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: Certificate ConfigMap Binding
+release:
+  name: vorgang-manager
+  namespace: sh-helm-test
+templates:
+  - templates/configmap_bindings_type.yaml
+tests:
+  - it: validate configMap values
+    asserts:
+      - isKind:
+          of: ConfigMap
+      - equal:
+          path: metadata.name
+          value: bindings-type
+      - equal:
+          path: metadata.namespace
+          value: sh-helm-test
+      - equal:
+          path: data
+          value:
+            type: | 
+              ca-certificates
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_actuator_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_actuator_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7fc4a5ff86f25c1d2dbda8e2cf0c6c068956e267
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_actuator_test.yaml
@@ -0,0 +1,67 @@
+#
+# 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: test deployment actuator 
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: testIsDeployment
+    template: deployment.yaml
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].readinessProbe
+          value:
+            failureThreshold: 3
+            httpGet:
+              path: /actuator/health/readiness
+              port: 8081
+              scheme: HTTP
+            periodSeconds: 10
+            successThreshold: 1
+            timeoutSeconds: 3
+      - equal: 
+          path: spec.template.spec.containers[0].startupProbe
+          value: 
+            httpGet:
+              path: /actuator/health/readiness
+              port: 8081
+              scheme: HTTP
+            failureThreshold: 10
+            initialDelaySeconds: 20
+            periodSeconds: 10
+            successThreshold: 1
+            timeoutSeconds: 5    
+        
+
+
+
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_bayernid_certificate_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_bayernid_certificate_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b529f09ef6de4f74a95cf89f21595ea08d978128
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_bayernid_certificate_test.yaml
@@ -0,0 +1,113 @@
+#
+# Copyright (C) 2024 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: test bayernid certificate
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "https://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should contains bayernid server
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: ozgcloud_bayernid_server
+            value: "https://test"
+
+  - it: should fail when bayernid server not set 
+    set: 
+      ozgcloud:
+        environment: dev
+        bayernid:
+          server: ""
+    asserts:
+      - failedTemplate:
+          errorMessage: "ozgcloud.bayernid.server must be set"
+
+
+  - it: should set variable keystore certificate
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: spring_ssl_bundle_jks_bayern-id-ca_keystore_location
+            value: /keystore/bayernid/bayern-id-ca.p12
+
+  - it: should set variable keystore type
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: spring_ssl_bundle_jks_bayern-id-ca_keystore_type
+            value: PKCS12
+
+  - it: should set variable keystore password secret reference
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: spring_ssl_bundle_jks_bayern-id-ca_keystore_password
+            valueFrom:
+              secretKeyRef:
+                name: bayernidCertificat
+                key: password
+                optional: false
+
+  - it: should fail when secret name for bayernid certificat is not set
+    set: 
+      ozgcloud:
+        environment: dev
+        bayernid:
+          server: "bayernIdServer"
+    asserts:
+      - failedTemplate:
+          errorMessage: "ozgcloud.bayernid.certificateSecretName must be set"
+
+  - it: should have volumeMount for bayernid certificate keystore
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].volumeMounts
+          content:
+            name: bayern-id-ca
+            mountPath: "/keystore/bayernid/bayern-id-ca.p12"
+            subPath: zertifikat
+            readOnly: true
+
+  - it: should have volume for bayernid certificate keystore
+    asserts:
+      - contains:
+           path: spec.template.spec.volumes
+           content:
+              name: bayern-id-ca
+              secret:
+                 secretName: bayernidCertificat
+                 optional: false
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_bindings_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_bindings_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..cc051bf7be028d28fa6015d6a63ba39af6637da0
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_bindings_test.yaml
@@ -0,0 +1,72 @@
+#
+# 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: deployment bayernid-proxy bindings
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should have volumeMounts for temp folder
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].volumeMounts
+          content:
+            name: temp-dir
+            mountPath: "/tmp"
+            
+  - it: should have volume for temp folder
+    asserts:
+      - contains:
+           path: spec.template.spec.volumes
+           content:
+              name: temp-dir
+              emptyDir: {}
+
+  - it: should have bindings-type volume
+    asserts:
+      - contains:
+          path: spec.template.spec.volumes
+          content:
+            name: bindings
+            configMap:
+              name: bindings-type  
+
+  - it: should have bindings-type volumeMount
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].volumeMounts
+          content:
+            name: bindings
+            mountPath: "/bindings/ca-certificates/type"
+            subPath: type
+            readOnly: true
+                
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_container_basic_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_container_basic_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..0da62e9e3341fbf78b3434d257fdf8b2a1fdffc2
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_container_basic_test.yaml
@@ -0,0 +1,64 @@
+#
+# 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: test deployment container basics
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should have correct values for container image, name, imagePullPolicy
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].image
+          value: docker.ozg-sh.de/bayernid-proxy:latest
+      - equal:
+          path: spec.template.spec.containers[0].name
+          value: bayernid-proxy
+      - equal: 
+          path: spec.template.spec.containers[0].imagePullPolicy
+          value: Always
+  - it: should have correct values for container ports
+    asserts:
+      - contains: 
+          path: spec.template.spec.containers[0].ports
+          content:  
+            containerPort: 9090
+            name: grpc-9090
+            protocol: TCP
+      - contains: 
+          path: spec.template.spec.containers[0].ports
+          content:  
+            containerPort: 8081
+            name: metrics
+            protocol: TCP
+            
+            
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_container_other_values_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_container_other_values_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..8daa93f0c87ba344c70622e885c22a92a461f100
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_container_other_values_test.yaml
@@ -0,0 +1,52 @@
+   
+   #
+# 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: test deployment container other values
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should have correct values for container terminationMessagePolicy, terminationMessagePath, stdin, tty
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].terminationMessagePolicy
+          value: File
+      - equal:
+          path: spec.template.spec.containers[0].terminationMessagePath
+          value: /dev/termination-log
+      - equal: 
+          path: spec.template.spec.containers[0].stdin
+          value: true
+      - equal: 
+          path: spec.template.spec.containers[0].tty
+          value: true
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_container_security_context_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_container_security_context_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..5b6103b0ef2624acd8f70ffab8a370ec28401ba3
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_container_security_context_test.yaml
@@ -0,0 +1,69 @@
+#
+# 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: test deployment container security context
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: check default values
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].securityContext.allowPrivilegeEscalation
+          value: false
+      - equal:
+          path: spec.template.spec.containers[0].securityContext.privileged
+          value: false
+      - equal:
+          path: spec.template.spec.containers[0].securityContext.readOnlyRootFilesystem
+          value: false
+      - equal:
+          path: spec.template.spec.containers[0].securityContext.runAsNonRoot
+          value: true
+      - isNull:
+          path: spec.template.spec.containers[0].securityContext.runAsUser
+      - isNull:
+          path: spec.template.spec.containers[0].securityContext.runAsGroup
+  - it: check runAsUser
+    set:
+      securityContext.runAsUser: 1000
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].securityContext.runAsUser
+          value: 1000
+  - it: check runAsGroup
+    set:
+      securityContext.runAsGroup: 1000
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].securityContext.runAsGroup
+          value: 1000
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_defaults_labels_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_defaults_labels_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..3e4455daed36fc9aadd506f6599b4c9c3a266f33
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_defaults_labels_test.yaml
@@ -0,0 +1,75 @@
+#
+# 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: test deployment default labels
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: check metadata.labels
+    asserts:
+      - equal:
+          path: metadata.labels
+          value:
+            app.kubernetes.io/instance: bayernid-proxy
+            app.kubernetes.io/managed-by: Helm
+            app.kubernetes.io/name: bayernid-proxy
+            app.kubernetes.io/namespace: sh-helm-test
+            app.kubernetes.io/part-of: ozgcloud
+            app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS
+            helm.sh/chart: bayernid-proxy-0.0.0-MANAGED-BY-JENKINS
+            app.kubernetes.io/component: bayernid-proxy
+            component: bayernid-proxy
+  
+  - it: should set spec.selector.matchLabels
+    asserts:
+      - equal:
+          path: spec.selector.matchLabels
+          value:
+            app.kubernetes.io/name: bayernid-proxy
+            app.kubernetes.io/namespace: sh-helm-test
+            component: bayernid-proxy
+
+  - it: should have correct deyploment spec.template.metadata.labels
+    asserts:
+      - equal:
+          path: spec.template.metadata.labels
+          value: 
+            app.kubernetes.io/instance: bayernid-proxy
+            app.kubernetes.io/managed-by: Helm
+            app.kubernetes.io/name: bayernid-proxy
+            app.kubernetes.io/namespace: sh-helm-test
+            app.kubernetes.io/part-of: ozgcloud
+            app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS
+            helm.sh/chart: bayernid-proxy-0.0.0-MANAGED-BY-JENKINS
+            app.kubernetes.io/component: bayernid-proxy
+            component: bayernid-proxy
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_env_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_env_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..f94cc7c236928bbadcecf08ae2bef51a637d23db
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_env_test.yaml
@@ -0,0 +1,53 @@
+#
+# 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: test deployment container environments 
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "https://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: check customList
+    set:
+      env.customList:
+        - name: my_test_environment_name
+          value: "A test value"
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: my_test_environment_name
+            value: "A test value"
+
+  - it: check customList test value is not set by default
+    asserts:
+      - notContains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: my_test_environment_name
+            value: "A test value"
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_imagepull_secret_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_imagepull_secret_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..69c1d1b6257a53596e6ab523422932fe5d61e41a
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_imagepull_secret_test.yaml
@@ -0,0 +1,42 @@
+#
+# 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: test deployment image pull secret
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should use correct imagePull secret
+    asserts:
+      - equal:
+          path: spec.template.spec.imagePullSecrets[0].name
+          value: ozgcloud-image-pull-secret
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_ozgcloud_base_values_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_ozgcloud_base_values_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..00a0300659c67b9e1927870f63dcf26fe31321ee
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_ozgcloud_base_values_test.yaml
@@ -0,0 +1,46 @@
+#
+# 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: test ozgcloud base values
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+
+tests:
+
+  - it: should fail on missing environment
+    asserts:
+      - failedTemplate:
+          errorMessage: ozgcloud.environment muss angegeben sein
+  - it: should not fail on not missing environment
+    set:
+      ozgcloud:
+        environment: dev
+        bayernid:
+          server: "http://test"
+          certificateSecretName: "bayernidCertificat"
+    asserts:
+      - notFailedTemplate: {}
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_resources_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_resources_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..cb794dac0ffaff7f164ede6eb5193e6dc3ca0743
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_resources_test.yaml
@@ -0,0 +1,63 @@
+#
+# 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: test deployment container resources
+release:
+  name: bayernid-proxy
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should generate resources when values set
+    set:
+      resources:
+        limits:
+          cpu: 11m
+          memory: 22Mi
+        requests:
+          cpu: 33m
+          memory: 44Mi
+    asserts:
+      - equal:
+          path: spec.template.spec.containers[0].resources.limits.cpu
+          value: 11m
+      - equal:
+          path: spec.template.spec.containers[0].resources.limits.memory
+          value: 22Mi
+      - equal:
+          path: spec.template.spec.containers[0].resources.requests.cpu
+          value: 33m
+      - equal:
+          path: spec.template.spec.containers[0].resources.requests.memory
+          value: 44Mi
+  - it: should not generate resources when values not set
+    asserts:
+      - isEmpty:
+          path: spec.template.spec.containers[0].resources
+
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_service_account_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_service_account_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..334d3f74c55057973868eefe40e1977ffe32b7de
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_service_account_test.yaml
@@ -0,0 +1,57 @@
+#
+# Copyright (C) 2024 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: deployment service account
+release:
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should use service account with default name
+    set:
+      serviceAccount:
+        create: true
+    asserts:
+      - equal:
+          path: spec.template.spec.serviceAccountName
+          value: bayernid-proxy-service-account
+  - it: should use service account with name
+    set:
+      serviceAccount:
+        create: true
+        name: helm-service-account
+    asserts:
+      - equal:
+          path: spec.template.spec.serviceAccountName
+          value: helm-service-account
+  - it: should use default service account
+    asserts:
+      - isNull:
+          path: spec.template.spec.serviceAccountName
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_springProfile_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_springProfile_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..70df4d35ce94b1fc4cd33fdaf7fd4752e8991435
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_springProfile_test.yaml
@@ -0,0 +1,52 @@
+#
+# 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: test deployment spring profiles
+release:
+  name: bayernid-proxy
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should override spring profiles
+    set:
+      env.overrideSpringProfiles: oc,stage,ea
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: spring_profiles_active
+            value: oc,stage,ea
+  - it: should generate spring profiles 
+    asserts:
+      - contains:
+          path: spec.template.spec.containers[0].env
+          content:
+            name: spring_profiles_active
+            value: oc, dev
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deployment_template_other_values_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deployment_template_other_values_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9d9aff7d253c6a5151a768ccbe5e38c0ffb2b7fa
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deployment_template_other_values_test.yaml
@@ -0,0 +1,81 @@
+#
+# 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: test deployment template other values
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+tests:
+  - it: should have correct spec.template.spec.topologySpreadConstraints values 
+    asserts: 
+      - contains:
+          path: spec.template.spec.topologySpreadConstraints
+          content: 
+            maxSkew: 1
+            topologyKey: kubernetes.io/hostname
+            whenUnsatisfiable: ScheduleAnyway
+            labelSelector:
+              matchLabels:
+                app.kubernetes.io/name: bayernid-proxy
+  - it: should have correct deployment spec.template.spec.dnsConfig dnsPolicy restartPolicy schedulerName and terminationGracePeriodSeconds values 
+    asserts:
+      - equal:
+          path: spec.template.spec.dnsConfig
+          value: {}
+      - equal:
+          path: spec.template.spec.dnsPolicy
+          value: ClusterFirst
+      - equal:
+          path: spec.template.spec.restartPolicy
+          value: Always
+      - equal:
+          path: spec.template.spec.terminationGracePeriodSeconds
+          value: 30
+      - equal:
+          path: spec.template.spec.schedulerName
+          value: default-scheduler
+  - it: should not generate spec.template.spec.hostAlias when values set
+    set: 
+      hostAliases: test-alias
+    asserts:
+      - equal:
+          path: spec.template.spec.hostAliases 
+          value: test-alias
+    
+    
+  - it: should not generate spec.template.spec.hostAlias when values not set
+    asserts:
+      - isNull:
+          path: spec.template.spec.hostAliases 
+         
+      
+      
diff --git a/nachrichten-bayernid-proxy/src/test/helm/deyploment_general_value_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/deyploment_general_value_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..53eadc8ef118fcf0177192a5fa14f1cf1fafe6a1
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/deyploment_general_value_test.yaml
@@ -0,0 +1,78 @@
+#
+# 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: test deployment general values
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/deployment.yaml
+set:
+  ozgcloud:
+    environment: dev
+    bayernid:
+      server: "http://test"
+      certificateSecretName: "bayernidCertificat"
+
+tests:
+  - it: should have correct apiVersion
+    asserts:
+      - isKind:
+          of: Deployment
+      - isAPIVersion:
+           of: "apps/v1"
+    
+  
+  - it: should have correct deployment metadata 
+    asserts: 
+      - equal:
+          path: metadata.name
+          value: bayernid-proxy
+      - equal: 
+          path: metadata.namespace
+          value: sh-helm-test
+
+
+  - it: should have correct deyployment general spec values
+    asserts:
+      - equal:
+          path: spec.progressDeadlineSeconds
+          value: 600
+      - equal:
+          path: spec.replicas
+          value: 2
+      - equal:
+          path: spec.revisionHistoryLimit
+          value: 10
+  - it: should have correct deployment spec strategy values
+    asserts:
+      - equal: 
+          path: spec.strategy
+          value: 
+            rollingUpdate:
+              maxSurge: 1
+              maxUnavailable: 0
+            type: RollingUpdate
+          
+
diff --git a/nachrichten-bayernid-proxy/src/test/helm/network_policy_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/network_policy_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7382ad0947be9db238ff1b5d7f9de08439716165
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/network_policy_test.yaml
@@ -0,0 +1,163 @@
+#
+# Copyright (C) 2024 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: network policy test
+release:
+  namespace: by-helm-test
+templates:
+  - templates/network_policy.yaml
+tests:
+  - it: should match apiVersion
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - isAPIVersion:
+          of: networking.k8s.io/v1
+
+  - it: should match kind
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - isKind:
+          of: NetworkPolicy
+
+  - it: should match metadata
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - equal:
+          path: metadata
+          value:
+            name: network-policy-bayernid-proxy
+            namespace: by-helm-test
+
+  - it: should generate spec
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - equal:
+          path: spec
+          value:
+            podSelector:
+              matchLabels:
+                component: bayernid-proxy
+            policyTypes:
+              - Ingress
+              - Egress
+            ingress:
+            - ports:
+              - port: 9090
+              from:
+              - podSelector: 
+                  matchLabels:
+                    component: vorgang-manager
+            egress:
+            - to:
+              - namespaceSelector:
+                  matchLabels:
+                    kubernetes.io/metadata.name: test-dns-namespace
+              ports:
+                - port: 53
+                  protocol: UDP
+                - port: 53
+                  protocol: TCP
+                - port: 5353
+                  protocol: UDP
+                - port: 5353
+                  protocol: TCP
+
+  - it: add ingress rule by values
+    set:
+      networkPolicy:
+        ssoPublicIp: 51.89.117.53/32
+        dnsServerNamespace: test-namespace-dns
+        additionalIngressConfig:
+        - from:
+          - podSelector: 
+              matchLabels:
+                component: client2
+    asserts:
+      - contains:
+          path: spec.ingress
+          content:
+            from:
+            - podSelector: 
+                matchLabels:
+                  component: client2
+
+  - it: add egress rules by values
+    set:
+      networkPolicy:
+        additionalEgressConfig:
+        - to:
+          - ipBlock:
+              cidr: 1.2.3.4/32
+        - to:
+          - podSelector:
+              matchLabels:
+                component: ozg-testservice
+          ports:
+            - port: 12345
+              protocol: TCP
+
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+    - contains:
+        path: spec.egress
+        content:
+          to:
+          - ipBlock:
+              cidr: 1.2.3.4/32
+    - contains:
+        path: spec.egress
+        content:
+          to:
+          - podSelector:
+              matchLabels:
+                component: ozg-testservice
+          ports:
+            - port: 12345
+              protocol: TCP
+
+  - it: test network policy disabled
+    set:
+      networkPolicy:
+        disabled: true
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - hasDocuments:
+          count: 0
+
+  - it: test network policy unset should be disabled
+    set:
+      networkPolicy:
+        disabled: false
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - hasDocuments:
+          count: 1
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/service_account_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/service_account_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..41565540d17ddc7998397ff62407b0e5bdf7c249
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/service_account_test.yaml
@@ -0,0 +1,65 @@
+#
+# Copyright (C) 2024 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: test service account
+release:
+  namespace: sh-helm-test
+templates:
+  - templates/service_account.yaml
+tests:
+  - it: should create service account with default name
+    set:
+      serviceAccount:
+        create: true
+    asserts:
+      - isKind:
+          of: ServiceAccount
+      - isAPIVersion:
+           of: v1
+      - equal:
+          path: metadata.name
+          value: bayernid-proxy-service-account
+      - equal:
+          path: metadata.namespace
+          value: sh-helm-test
+
+  - it: should create service account with name
+    set:
+      serviceAccount:
+        create: true
+        name: helm-service-account
+    asserts:
+      - isKind:
+          of: ServiceAccount
+      - equal:
+          path: metadata.name
+          value: helm-service-account
+      - equal:
+          path: metadata.namespace
+          value: sh-helm-test
+
+  - it: should not create service account
+    asserts:
+      - hasDocuments:
+         count: 0
\ No newline at end of file
diff --git a/nachrichten-bayernid-proxy/src/test/helm/service_test.yaml b/nachrichten-bayernid-proxy/src/test/helm/service_test.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..533bdd32b941ed3982480d0198f9941b81b80f2f
--- /dev/null
+++ b/nachrichten-bayernid-proxy/src/test/helm/service_test.yaml
@@ -0,0 +1,85 @@
+#
+# 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: test service
+release:
+  name: bayernid-proxy
+  namespace: sh-helm-test
+templates:
+  - templates/service.yaml
+tests:
+  - it: should have the label component with correct value 
+    asserts:
+      - isKind:
+          of: Service
+      - isAPIVersion:
+           of: v1
+      - equal:
+          path: metadata.labels.component
+          value: bayernid-proxy
+  - it: should be of type ClusterIP
+    asserts:
+      - equal:
+          path: spec.type
+          value: ClusterIP
+  - it: ports should contain the grpc port
+    asserts:
+      - contains:
+          path: spec.ports
+          content:
+            name: grpc-9090
+            port: 9090
+            protocol: TCP
+          count: 1
+          any: true
+  - it: ports should contain the metrics port
+    asserts:
+      - contains:
+          path: spec.ports
+          content:
+            name: metrics
+            port: 8081
+            protocol: TCP
+          count: 1
+          any: true
+  - it: selector should contain the component label with correct value
+    asserts:
+      - equal:
+          path: spec.selector.component
+          value: bayernid-proxy
+
+  - it: selector should contain helm recommended labels name and namespace
+    asserts:
+      - equal:
+          path: spec.selector
+          value:
+            app.kubernetes.io/name: bayernid-proxy
+            app.kubernetes.io/namespace: sh-helm-test
+            component: bayernid-proxy
+
+  - it: check component label for service
+    asserts:
+      - equal:
+          path: metadata.labels["component"]
+          value: bayernid-proxy
\ No newline at end of file
diff --git a/src/main/helm/templates/network_policy.yaml b/src/main/helm/templates/network_policy.yaml
index b80e28782dcf18de0d1b2bcae9da257f83015613..45db7211db6101cfd216f948d70ddbcae7ac8eeb 100644
--- a/src/main/helm/templates/network_policy.yaml
+++ b/src/main/helm/templates/network_policy.yaml
@@ -73,6 +73,13 @@ spec:
     ports:
       - port: 9000
         protocol: TCP
+  - to:
+    - podSelector: 
+        matchLabels:
+          component: nachrichten-bayernid-proxy
+    ports:
+      - port: 9090
+        protocol: TCP 
   - to:
     - namespaceSelector:
         matchLabels:
diff --git a/src/test/helm/network_policy_test.yaml b/src/test/helm/network_policy_test.yaml
index 5a76e0ad2c0c36023bc95e736a594dcbc8fc4be8..3280407398331229256ffbc36619650cade77a28 100644
--- a/src/test/helm/network_policy_test.yaml
+++ b/src/test/helm/network_policy_test.yaml
@@ -55,22 +55,45 @@ tests:
             name: network-policy-vorgang-manager
             namespace: by-helm-test
 
-  - it: validate spec
+  - it: should set policy target matchLabel
     set:
       networkPolicy:
         dnsServerNamespace: test-dns-namespace
     asserts:
       - equal:
-          path: spec
+          path: spec.podSelector
           value:
-            podSelector:
-              matchLabels:
-                component: vorgang-manager
-            policyTypes:
-              - Ingress
-              - Egress
-            ingress:
-            - ports:
+            matchLabels:
+              component: vorgang-manager
+
+
+  - it: should add policyType Egress
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.policyTypes
+          content: Egress
+
+  - it: should add policyType Ingress
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.policyTypes
+          content: Ingress
+
+  - it: should add ingress rule for eingangsmanager and alfa
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.ingress
+          content:
+              ports:
               - port: 9090
               from:
               - podSelector: 
@@ -79,8 +102,17 @@ tests:
               - podSelector: 
                   matchLabels:
                     ozg-component: eingangsadapter
-            egress:
-            - to:
+
+
+  - it: should add egress rule to elasticsearch
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.egress
+          content:
+              to:
               - namespaceSelector:
                   matchLabels:
                     kubernetes.io/metadata.name: elastic-system
@@ -90,21 +122,48 @@ tests:
               ports:
                 - port: 9200
                   protocol: TCP
-            - to:
+
+  - it: should add egress rule to mongodb
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.egress
+          content:
+              to:
               - podSelector:
                   matchLabels:
                     component: ozgcloud-mongodb
               ports:
                 - port: 27017
                   protocol: TCP
-            - to:
+
+  - it: should add egress rule to user-manager
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.egress
+          content:
+              to:
               - podSelector: 
                   matchLabels:
                     component: user-manager
               ports:
                 - port: 9000
                   protocol: TCP
-            - to:
+
+  - it: should add egress rule to dns service
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.egress
+          content:
+              to:
               - namespaceSelector:
                   matchLabels:
                     kubernetes.io/metadata.name: test-dns-namespace
@@ -118,6 +177,22 @@ tests:
                 - port: 5353
                   protocol: TCP
 
+  - it: should add egress rule to nachrichten-bayernid-proxy
+    set:
+      networkPolicy:
+        dnsServerNamespace: test-dns-namespace
+    asserts:
+      - contains:
+          path: spec.egress
+          content:
+            to:
+            - podSelector: 
+                matchLabels:
+                  component: nachrichten-bayernid-proxy
+            ports:
+            - port: 9090
+              protocol: TCP 
+
   - it: add ingress rule by values
     set:
       networkPolicy: