{{/* # Copyright © 2023 Nordix Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. */}} {{ include "common.authorizationPolicy" . }} --- {{- $dot := default . .dot -}} {{- $trustedDomain := default "cluster.local" $dot.Values.serviceMesh.authorizationPolicy.trustedDomain -}} {{- $authorizedPrincipalsSdnHosts := default list $dot.Values.serviceMesh.authorizationPolicy.authorizedPrincipalsSdnHosts -}} {{- $defaultOperationMethods := list "GET" "POST" "PUT" "PATCH" "DELETE" -}} {{- $relName := include "common.release" . -}} {{- if (include "common.useAuthorizationPolicies" .) }} apiVersion: security.istio.io/v1beta1 kind: AuthorizationPolicy metadata: name: sdnhost-{{ include "common.servicename" . }}-authz namespace: {{ include "common.namespace" . }} spec: selector: matchLabels: app: sdnhost-{{ include "common.name" . }} action: ALLOW rules: {{- if $authorizedPrincipalsSdnHosts }} {{- range $principal := $authorizedPrincipalsSdnHosts }} - from: - source: principals: {{- $namespace := default "onap" $principal.namespace -}} {{- if eq "onap" $namespace }} - "{{ $trustedDomain }}/ns/{{ $namespace }}/sa/{{ $relName }}-{{ $principal.serviceAccount }}" {{- else }} - "{{ $trustedDomain }}/ns/{{ $namespace }}/sa/{{ $principal.serviceAccount }}" {{- end }} to: - operation: methods: {{- if $principal.allowedOperationMethods }} {{- range $method := $principal.allowedOperationMethods }} - {{ $method }} {{- end }} {{- else }} {{- range $method := $defaultOperationMethods }} - {{ $method }} {{- end }} {{- end }} {{- end }} {{- end }} {{- end }}