如果要替换默认的 STS 签名证书,必须先生成一个新证书并将其添加到 Java 密钥库。以下过程说明了 Windows 中的安装步骤。

关于此任务

注:

该证书的有效期为十年且不面向外部。除非贵公司的安全策略有相关规定,否则请勿替换此证书。

如果使用虚拟设备,请参见在设备上生成新的 STS 签名证书

过程

  1. 创建一个新目录以存放新证书。
    cd C:\ProgramData\VMware\vCenterServer\cfg\sso\keys\
    mkdir newsts
    cd newsts
  2. 创建 certool.cfg 文件的副本并将其放入新目录中。
    copy "C:\Program Files\VMware\vCenter Server\vmcad\certool.cfg" .
  3. 打开 certool.cfg 文件的副本并进行编辑,以便使用本地 Platform Services Controller 的 IP 地址和主机名。

    国家/地区是必填项,且必须包含两个字符。以下示例说明了这一点。

    #
    # Template file for a CSR request
    #
    
    # Country is needed and has to be 2 characters
    Country = US
    Name = STS
    Organization = ExampleInc
    OrgUnit = ExampleInc Dev
    State = Indiana
    Locality = Indianapolis
    IPAddress = 10.0.1.32
    Email = chen@exampleinc.com
    Hostname = homecenter.exampleinc.local
  4. 生成密钥。
    "C:\Program Files\VMware\vCenter Server\vmcad\certool.exe" --server localhost --genkey --privkey=sts.key --pubkey=sts.pub
  5. 生成证书
    "C:\Program Files\VMware\vCenter Server\vmcad\certool.exe" --gencert --cert=newsts.cer --privkey=sts.key --config=certool.cfg
  6. 将证书转换为 PK12 格式。
    "C:\Program Files\VMware\vCenter Server\openSSL\openssl.exe" pkcs12 -export -in newsts.cer -inkey sts.key -certfile ..\ssoserverRoot.crt -name "newstssigning" -passout pass:changeme -out newsts.p12
    
  7. 将证书添加到 Java 密钥库 (JKS)。
    "C:\Program Files\VMware\vCenter Server\jre\bin\keytool.exe" -v -importkeystore -srckeystore newsts.p12 -srcstoretype pkcs12 -srcstorepass changeme -srcalias newstssigning -destkeystore root-trust.jks -deststoretype JKS -deststorepass testpassword -destkeypass testpassword
    "C:\Program Files\VMware\vCenter Server\jre\bin\keytool.exe" -v -importcert -keystore root-trust.jks -deststoretype JKS -storepass testpassword -keypass testpassword -file ..\ssoserverRoot.crt -alias root-ca

下一步做什么

现在即可导入新证书。请参见刷新安全令牌服务证书