the trustAnchors parameter must be non-empty
" in vSphere Client./var/log/vmware/certificatemanagement/certificatemanagement-svcs.log
" shows below error snippets :YYYY-MM-DDTHH:MM:SS [tomcat-exec-7 INFO com.vmware.certificatemanagement.impl.SSLCertificate opId=] Validating the private key with the provided certificate
YYYY-MM-DDTHH:MM:SS [tomcat-exec-7 INFO com.vmware.certificatemanagement.impl.SSLCertificate opId=] The provided MACHINE_SSL certificate and provided key are valid
YYYY-MM-DDTHH:MM:SS [tomcat-exec-7 INFO com.vmware.certificatemanagement.impl.SSLCertificate opId=] Validating if the MACHINE_SSL Certificate is signed by the given root certificate ...
YYYY-MM-DDTHH:MM:SS [tomcat-exec-7 ERROR com.vmware.certificatemanagement.impl.SSLCertificate opId=] Error verifying the certificate: the trustAnchors parameter must be non-empty
YYYY-MM-DDTHH:MM:SS [tomcat-exec-7 ERROR com.vmware.certificatemanagement.impl.SSLCertificate opId=] Caught exception while validating the root certificate for the provided MACHINE_SSL certificate : the trustAnchors parameter must be non-empty
vCenter Server 7.x
vCenter Server 8.x
This issue is caused due to invalid CA Certificate chain provided during the certificate replacement.
For eg. if the Machine SSL certificate is loaded instead of the actual Root CAs in field Chain of trusted root certificates.
To resolve the issue, create a certificate chain with the intermediate and root CA certificates and load that chain file in certificate replacement wizard for option "Chain of trusted root certificates".
Below steps will help to create the CA Chain from local desktop if the Certificate is signed by third party CAs:
-----BEGIN CERTIFICATE-----
.
Intermediate Certificate
.
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
.
Root Certificate
.
-----END CERTIFICATE-----