mirror of
https://github.com/openappsec/openappsec.git
synced 2025-07-13 14:04:45 +03:00
64 lines
2.5 KiB
YAML
64 lines
2.5 KiB
YAML
{{- if and .Values.controller.admissionWebhooks.enabled .Values.controller.admissionWebhooks.certManager.enabled -}}
|
|
{{- if not .Values.controller.admissionWebhooks.certManager.issuerRef -}}
|
|
# Create a selfsigned Issuer, in order to create a root CA certificate for
|
|
# signing webhook serving certificates
|
|
apiVersion: cert-manager.io/v1
|
|
kind: Issuer
|
|
metadata:
|
|
name: {{ include "ingress-nginx.fullname" . }}-self-signed-issuer
|
|
namespace: {{ include "ingress-nginx.namespace" . }}
|
|
spec:
|
|
selfSigned: {}
|
|
---
|
|
# Generate a CA Certificate used to sign certificates for the webhook
|
|
apiVersion: cert-manager.io/v1
|
|
kind: Certificate
|
|
metadata:
|
|
name: {{ include "ingress-nginx.fullname" . }}-root-cert
|
|
namespace: {{ include "ingress-nginx.namespace" . }}
|
|
spec:
|
|
secretName: {{ include "ingress-nginx.fullname" . }}-root-cert
|
|
duration: {{ .Values.controller.admissionWebhooks.certManager.rootCert.duration | default "43800h0m0s" | quote }}
|
|
issuerRef:
|
|
name: {{ include "ingress-nginx.fullname" . }}-self-signed-issuer
|
|
commonName: "ca.webhook.ingress-nginx"
|
|
isCA: true
|
|
subject:
|
|
organizations:
|
|
- ingress-nginx
|
|
---
|
|
# Create an Issuer that uses the above generated CA certificate to issue certs
|
|
apiVersion: cert-manager.io/v1
|
|
kind: Issuer
|
|
metadata:
|
|
name: {{ include "ingress-nginx.fullname" . }}-root-issuer
|
|
namespace: {{ include "ingress-nginx.namespace" . }}
|
|
spec:
|
|
ca:
|
|
secretName: {{ include "ingress-nginx.fullname" . }}-root-cert
|
|
{{- end }}
|
|
---
|
|
# generate a server certificate for the apiservices to use
|
|
apiVersion: cert-manager.io/v1
|
|
kind: Certificate
|
|
metadata:
|
|
name: {{ include "ingress-nginx.admissionWebhooks.fullname" . }}
|
|
namespace: {{ include "ingress-nginx.namespace" . }}
|
|
spec:
|
|
secretName: {{ include "ingress-nginx.admissionWebhooks.fullname" . }}
|
|
duration: {{ .Values.controller.admissionWebhooks.certManager.admissionCert.duration | default "8760h0m0s" | quote }}
|
|
issuerRef:
|
|
{{- if .Values.controller.admissionWebhooks.certManager.issuerRef }}
|
|
{{- toYaml .Values.controller.admissionWebhooks.certManager.issuerRef | nindent 4 }}
|
|
{{- else }}
|
|
name: {{ include "ingress-nginx.fullname" . }}-root-issuer
|
|
{{- end }}
|
|
dnsNames:
|
|
- {{ include "ingress-nginx.controller.fullname" . }}-admission
|
|
- {{ include "ingress-nginx.controller.fullname" . }}-admission.{{ include "ingress-nginx.namespace" . }}
|
|
- {{ include "ingress-nginx.controller.fullname" . }}-admission.{{ include "ingress-nginx.namespace" . }}.svc
|
|
subject:
|
|
organizations:
|
|
- ingress-nginx-admission
|
|
{{- end -}}
|