<p>By default creating a managed certificate object on GKE creates a managed certificate of type &quot;Load Balancer Authorization&quot;. How can I create one with DNS authorization through GKE?</p>
<p><a href="https://cloud.google.com/kubernetes-engine/docs/how-to/managed-certs" rel="nofollow noreferrer">https://cloud.google.com/kubernetes-engine/docs/how-to/managed-certs</a></p>
<pre><code>apiVersion: networking.gke.io/v1
kind: ManagedCertificate
metadata:
  name: managed-cert
spec:
  domains:
    - DOMAIN_NAME1
    - DOMAIN_NAME2
</code></pre>
<p>I want to add wildcard domains and this only possible with DNS authorization.</p>
<p><a href="https://stackoverflow.com/questions/73734679/how-to-generate-google-managed-certificates-for-wildcard-hostnames-in-gcp">How to generate Google-managed certificates for wildcard hostnames in GCP?</a></p>

<p>You won't be able to use the current <code>ManagedCertificate</code> CRD to generate wildcard certificates. Wildcard certificates are only supported by <a href="https://cloud.google.com/certificate-manager/docs/overview" rel="nofollow noreferrer">Google Cloud Certificate Manager</a>.  <code>ManagedCertificate</code> actually creates the older Google Managed SSL Certificates which do not support wildcards.</p>
<p>Currently, the only supported ways to create wildcard certificates would be via CLI (gcloud), API or Terraform.  There is currently no CRD for them available directly in GKE.  Also, note that Certificate Manager only integrates with the Gateway API and not with Ingress.</p>
