WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
    • VMware Cloud Foundation 9.1
    • VMware Cloud Foundation 9.0
  • VKS
  • Homelab
    • Hardware Options
    • Hardware Reviews
    • Lab Deployment Scripts
    • Nested Virtualization
    • Homelab Podcasts
  • VMware Nostalgia
  • Apple
You are here: Home / Security / Quick Tip - Custom JSON for Deploying VMware Cloud Foundation (VCF) with Custom TLS Certificates

Quick Tip - Custom JSON for Deploying VMware Cloud Foundation (VCF) with Custom TLS Certificates

09.23.2025 by William Lam // Leave a Comment

ESXi hosts deployed with a custom CA signed TLS certificate can be consumed by either VMware Cloud Foundation (VCF) 5.x Cloud Builder or 9.x VCF Installer using a custom JSON deployment manifest.

An additional securitySpec should be appended to your VCF JSON deployment manifest using the following format:

"securitySpec": {
  "esxiCertsMode": "Custom",
  "rootCaCerts": [
    {
      "alias": "custom-CA",
      "certChain": [
        "-----BEGIN CERTIFICATE-----\nMIIDqzC...\n...\n...==\n-----END CERTIFICATE-----"
      ]
    }
  ]
}

Here is an abbreviated example VCF 5.x deployment spec

{
    "managementPoolName": "vcf-m01-np01",
    "sddcManagerSpec": {
        "secondUserCredentials": {
            "username": "vcf",
            "password": "FILL_ME_IN"
        },
        "ipAddress": "FILL_ME_IN",
        "hostname": "sddcm01",
        "rootUserCredentials": {
            "username": "root",
            "password": "FILL_ME_IN"
        },
        "localUserPassword": "FILL_ME_IN"
    },
    "sddcId": "vcf-m01",
    "taskName": "workflowconfig/workflowspec-ems.json",
    "ntpServers": [
        "ntp.org"
    ],
    ........
    "securitySpec": {
        "esxiCertsMode": "Custom",
        "rootCaCerts": [
            {
                "alias": "custom-CA",
                "certChain": [
                    "-----BEGIN CERTIFICATE-----\nMIIDqzC...\n...\n...==\n-----END CERTIFICATE-----"
                ]
            }
        ]
    }
}

Here is an abbreviated example VCF 9.x deployment spec

{
    "sddcId": "vcf-m01",
    "vcfInstanceName": "William Lam's VCF 9 Instance",
    "workflowType": "VCF",
    "version": "9.0.0.0",
    ........
    "securitySpec": {
        "esxiCertsMode": "Custom",
        "rootCaCerts": [
            {
                "alias": "custom-CA",
                "certChain": [
                    "-----BEGIN CERTIFICATE-----\nMIIDqzC...\n...\n...==\n-----END CERTIFICATE-----"
                ]
            }
        ]
    }
}

To assist with generating the single string for the certChain property given your certificate files, you can use this quick AWK command:

awk 'NF {sub(/\r/, ""); printf "%s\\n", $0;}' mycert.pem

Categories // Security, VMware Cloud Foundation Tags // VCF 9.0

Thanks for the comment!Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • VCF 9.1 - Are You Using the Correct ESXCLI Command to Enable NVMe Tiering? 06/12/2026
  • VCF 9.1 - OCuLink External Graphics (eGPU) Passthrough with vSphere Kubernetes Service (VKS) 06/12/2026
  • VCF 9.1 - Quick Tip: Uninstalling Optional Day-N Components 06/11/2026
  • VCF 9.1 - Deploying VCF Operations for Networks to non-Management Network 06/10/2026
  • VCF 9.1 - Quick Tip: Forgot to Retrieve Auto-Generated Passwords from VCF Installer? 06/09/2026
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.

To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2026