外部证书颁发机构 (CA) 功能适用于在内部部署 Orchestrator 并需要使用自有证书颁发机构 (CA)(而非默认的自签名 Orchestrator 证书颁发机构)的大型企业和政府客户。本节将介绍如何启用和配置外部 CA。

配置外部 CA 后,不是由 Orchestrator 接收证书签名请求 (Certificate Signing Request, CSR) 并亲自颁发设备证书,而是需要 Orchestrator 将 CSR 传递给外部 CA 以请求颁发证书。然后,设备证书将返回到 Orchestrator 并发送到 Edge 或网关。

使用此功能的客户应已部署商业证书颁发机构(例如,从 PrimeKey (EJBCA PKI) 部署),或者在某些情况下,客户可能已经实施了自己的专有 CA。

对于版本 4.3.0,可以将启用了外部 CA 的 Orchestrator 配置为在一种交互模式(即“同步”(Synchronous) 模式)下运行。在“同步”(Synchronous) 模式下,Orchestrator 直接与外部 CA 集成(对于版本 3.4.0,PrimeKey EJBCA PKI 是唯一可用的外部证书颁发机构),并通过 REST API 执行证书请求、续订和吊销操作。

启用外部 CA

可通过两个系统属性启用外部 CA 功能。这两个系统属性只能由具有超级用户角色的操作员启用。

过程

必须启用的第一个系统属性是 ca.external.configuration。此属性是使用 JSON 数据类型手动创建的,并且 JSON 中填充的内容与下面“外部 CA 配置示例”部分中显示的示例相一致。

只有在创建并启用 ca.external.configuration 后,操作员才应启用第二个系统属性,即 ca.external.enable。

  1. 在 Orchestrator UI 上,选择“系统属性”(System Properties)
  2. 在“系统属性”(System Properties) 页面上的搜索框中输入 ca.external.enable,如下图所示。
  3. 找到 ca.external.enable 属性后,选择该属性进行编辑。
  4. 将 ca.external.enable 属性更改为“True”,然后选择“更新”(Update) 以完成更改,如下图所示。

    此时,Orchestrator 会与外部 CA 通信,以提取外部 CA 根证书。

    已启用外部证书颁发机构的确认信息可在 Orchestrator 的“CA 摘要”(CA Summary) 页面上找到,其中的“已启用”(Enabled) 复选框已选中。

    要检查是否已与外部 CA 建立连接,请选择“测试”(Test) 按钮。

配置外部 CA

对于版本 4.3.0,此功能的外部 CA 配置十分有限,因为只有一种模式可用,即“同步”(Synchronous) 模式。此外,在“同步”(Synchronous) 模式下,仅支持一个外部证书颁发机构,即 PrimeKey EJBCA PKI。在即将发布的版本中,如果支持“异步”(Asynchronous) 和“手动”(Manual) 等其他模式,并且支持其他外部证书颁发机构,则 Orchestrator 的“CA 摘要”(CA Summary) 页面中将添加新的配置界面,以允许选择这些新增的模式和外部 CA。

如“启用外部 CA”部分中所述,操作员将首先启用 ca.external.configuration 系统属性,该属性是使用 JSON 数据类型手动创建的,并且 JSON 中填充的内容与下面“外部 CA 配置示例”部分中显示的示例相一致。

只有在创建并启用 ca.external.configuration 后,操作员才应启用第二个系统属性,即 ca.external.enable。

此外,还存在第三个系统属性:ca.external.caCertificate。启用外部 CA 且连接到有效的外部 CA 后,将显示此系统属性。此属性要求采用 PEM(隐私增强邮件)编码的证书。

Orchestrator 上“CA 摘要”(CA Summary) 页面的“外部证书颁发机构”(External Certificate Authority) 部分下有一个“测试”(Test) 按钮。通过单击此“测试”(Test) 按钮,操作员可以确认其 EJBCA PKI 外部证书颁发机构已与 Orchestrator 同步并可生成有效证书。

外部 CA 配置示例

本节提供了 ca.external.configuration 字段的配置示例。

{
"integrationType": "SYNCHRONOUS",
"csrDistinguishedName": {
"CN_PID_SN": "VMWare-SDWAN"
},
"synchronous": {
"synchronousIntegrationType": "EJBCA",
"ejbca": {
"serverCaCertificate": "-----BEGIN CERTIFICATE-----\nMIIFFzCCA3+gAwIBAgIUGgattlewRnm/gyPxJ7PW6uJOjCcwDQYJKoZIhvcNAQEL\nBQAwgZIxIzAhBgoJkiaJk/IsZAEBDBNyLTA1OTVhMTNjMTUzZDc2YWU1MRUwEwYD\nVQQDDAxNYW5hZ2VtZW50Q0ExHjAcBgNVBAsMFWFtaS0wMmE0NDc0YzFmNzQ5NDBh\nODE0MDIGA1UECgwraXAtMTAtODEtMTI1LTEzMi51cy13ZXN0LTIuY29tcHV0ZS5p\nbnRlcm5hbDAeFw0yMTAyMDQxOTA0MTRaFw00NjAyMDUxOTA0MTNaMIGSMSMwIQYK\nCZImiZPyLGQBAQwTci0wNTk1YTEzYzE1M2Q3NmFlNTEVMBMGA1UEAwwMTWFuYWdl\nbWVudENBMR4wHAYDVQQLDBVhbWktMDJhNDQ3NGMxZjc0OTQwYTgxNDAyBgNVBAoM\nK2lwLTEwLTgxLTEyNS0xMzIudXMtd2VzdC0yLmNvbXB1dGUuaW50ZXJuYWwwggGi\nMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC2r0YYVKnusA7NS6aCSjbRdzMA\nNgbF1j3+aeWn6ZokjpFsk9Tavnu0c9gETIMfVVFj6jCyTLZcHWuPt2r1aEfvuDyk\nW/u4kY8IaGSE5Z5+QH2I8gifTfegQBqFBSk8q4dN7oOnoXFKhUgCRtTf6hd7aSji\nynIUkEV6P/t5q+Mwql1EK6RdZzL6w9ycQOkG7mitfW4onJJcbIKy3abB/vkiTmd8\nSQ10DyDXOzN6gwCrcUV0RfxIgd4YKN8Cj+/+bMw+It8mn5Dd/xl9FutYAQ+brZhy\nSDw5m2W66y/znh3Fr1+DUn8b0wlgHrwPSi9i/QlOefRDMvFmjiDyXq+E/peirDyl\njVxYwn0ySgO5TympwkWw1Riibp4fJpYtwYT4EJU85em1rD6PPrzfBPsGQeG4ljQE\nCZ2YrnOLctbv+sF5rYQzTl0lOrLMAuqJLyV4Shv+3Oj1SzXKwkqJC0sCLcX+djmq\nYOJ9YxBke7DQKubTezHkyuk9tarEq5iHr68Ig3sCAwEAAaNjMGEwDwYDVR0TAQH/\nBAUwAwEB/zAfBgNVHSMEGDAWgBRp8EFk1aYW+s/tweOUwuXh/xuMJzAdBgNVHQ4E\nFgQUafBBZNWmFvrP7cHjlMLl4f8bjCcwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3\nDQEBCwUAA4IBgQCzAO0RZIHJUJw2xbcLr2Cvr0tj+3qbY5f/LYN5GfyMk5RjLK+u\nbaius7FxpRpw40oZ/FH2ichDD4FO8ulqJt4znU3VtwJ0/JmaY2x0XqwEI0CWiEiE\naKiSMzaHjsMvJ7gNQSfcB+QEm8IM/PSPKcxNj2+QnHtDnQwgb5iMN6n88Bjeygrk\nJG0RH0EUJ0sQr9pXo+Gcn66b99HgEyIjojqsGC1dYzkZVHQuFH7RINfU//1OmnRN\nmb6JgjNGgbdPKKHdWrfwrGpCiz1c44yznlkWVFrMdbLA1B+1uLpb8Xka7Hq5qZZn\nLVC0O7Q483FBa8Lkg+RXQjIxYXgx4wkiV600UyKP1pwNSLMJvUUBmIM/Byl1h8xR\nyKIIZn7rc5wA4aKcfnJ9CUVfKCjtUPZffOWlvMt8bDZfaloif20Z0KydJyAStl3Z\nQbsMvcA6747aQQ25JD4tid5rDeRDb2bYi7nLl+lNnhmn5ZB4qGgnaXGj3oFDoN0R\n+kEK69DlZRNudn4=\n-----END CERTIFICATE-----",
"apiCertificate": "-----BEGIN CERTIFICATE-----\nMIIEKzCCApOgAwIBAgIUM83EYfZz4vi4ty1EOJr+n6wMksAwDQYJKoZIhvcNAQEL\nBQAwgZIxIzAhBgoJkiaJk/IsZAEBDBNyLTA1OTVhMTNjMTUzZDc2YWU1MRUwEwYD\nVQQDDAxNYW5hZ2VtZW50Q0ExHjAcBgNVBAsMFWFtaS0wMmE0NDc0YzFmNzQ5NDBh\nODE0MDIGA1UECgwraXAtMTAtODEtMTI1LTEzMi51cy13ZXN0LTIuY29tcHV0ZS5p\nbnRlcm5hbDAeFw0yMTAyMDUwMDA1MTRaFw0yNjAyMDUwMDA1MTNaMBUxEzARBgNV\nBAMMClN1cGVyQWRtaW4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/\nrPdG0oY89GGUgHbV9iG3n3Y1mPBmQ+iVBvKYD3YpM7fG+KnVQTdJLrYoH5vP7lVY\nQj9H6pjxq0Bh53Mse2Fl9UE/Gew6IZiRd2OK9yM1xRKH7hjPB3tqFlA98mar+BYA\nGPhapmq+sSFz6TS2ssToUllG8QgJeMxh6+vSP/Ca9O+HiDB7TqECufVv6lrL7sfK\nqfyQ5YzITKm7IGDQfdCiorwndvd1i1NB+vviiYsk1fEW8gvRUu7wMRlzmPwxnUxd\nKmb/b7+O65md7+FlkqU6EzYMQ/224ZJonwJfzmNTO1AGt4aaJDNKn1i5wV22xqqQ\nZvA6nrkBd+06pUwVTen1AgMBAAGjdTBzMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgw\nFoAUafBBZNWmFvrP7cHjlMLl4f8bjCcwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYD\nVR0OBBYEFFj+bk/epA/jPXZywy1D4XV5sWlMMA4GA1UdDwEB/wQEAwIF4DANBgkq\nhkiG9w0BAQsFAAOCAYEARNN08PUMCAWI+wLpu4FRuApRJrWn7U07D2ZDirV5a7pq\nICCbREe34EYmbLyqdUCMHS8xJlPun5ER3E5YFzckC7wJ9y2h8giB7O3cjx/wWkax\nNEkz/Is634XZveIRNf1TmV9/71LnfUBDJjHYFPNzyw6CBtVn/niL1Q9o3SvbbZLQ\nCcdcpFm1rxku0UOuCaQgOSuLn5nqTFCNi4Sx40shg8wDrc1AUuv+yX09dM2G+27h\ndCJrkqHwbtWQMY2sOBdTIq6TMyJyrsvTCTQ67vqRtdJuSqOw/CnPnSo2/lSrkNWC\nIl7mQzq6+2ayQBxsm6xuHXD0INoRB+flq/QhY+CQIaTLYLezVITo0bZhe0TpNqYK\nlINUWjxI8mCBBiXZZ9zxbyOqzZouZcNH12OCEqU8alTfyW0EpGYClemRTgXxboDK\n+uEwKH6sngYMkG0Usni4WIKBvZV2dJa5o8RhuCUFhwBJ2aHuiTq86RLrazJBE3wA\nGvpl0ZmGVYmond3aBOYu\n-----END CERTIFICATE-----",
"apiKey": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC/rPdG0oY89GGU\ngHbV9iG3n3Y1mPBmQ+iVBvKYD3YpM7fG+KnVQTdJLrYoH5vP7lVYQj9H6pjxq0Bh\n53Mse2Fl9UE/Gew6IZiRd2OK9yM1xRKH7hjPB3tqFlA98mar+BYAGPhapmq+sSFz\n6TS2ssToUllG8QgJeMxh6+vSP/Ca9O+HiDB7TqECufVv6lrL7sfKqfyQ5YzITKm7\nIGDQfdCiorwndvd1i1NB+vviiYsk1fEW8gvRUu7wMRlzmPwxnUxdKmb/b7+O65md\n7+FlkqU6EzYMQ/224ZJonwJfzmNTO1AGt4aaJDNKn1i5wV22xqqQZvA6nrkBd+06\npUwVTen1AgMBAAECggEAL5DVVnp0/JhqxMbydptbd613UMqw0bgFdkIgnrKrkIL4\nlsRrpPPHq/4PDzr02C9dd4cNHCQwKzzjv8gHkWDW5U3tEKM2t6BRs7usdLZqwvOy\naxAfkPTa4BNEe3L1nrR0hTatHxXQRJ1BX3nebn5DliGlbRDwfSVAlwZMYcMjStiS\nZNyS71vrxRmYFyUNyjGDCZsBDRdSb41cQJ0GmwMd2B8AE5I0spMZm2Y5FM0ZcddX\nlDcELonz1LCTNZaXyhdDBCQ8ecWrSWJZ8REhTlK/wsTtPbLi1OxIAemcLxzTJQRC\n0tyWzA2zl90hmpJs3of7geGvDCDwRu/MgvuH31MFwQKBgQDxbHm/982/txuB440+\nMm+x/Ma5HzZg0l8sMdH0wQ5qJYd/lrgz2Ik79FqmFPh0l6LcekA0zGri+4PiRVRx\nAlY9pLFdegIY6jJpvJxJH+kQ00xEdeUSZ1O0aAn4dlsHaX3wg+SBJ0NiZxsOeQ9m\nrMDKYT7LE3F5indOimDCug2GoQKBgQDLP5FPvA3uWh5Lff14yhVb0T1oiyeiqe01\nylO7LkCI0s002/M7U0gWXd2XNqAr98KRFtVsbf9gZxsKXTvDI+Vsd11xGGfNZXmM\nwodSK9zIeL4Eve7mRtcB/ZDjtqOn0Um2YeVfXZrEacQoopYo7B4pwjpJmIq/40w3\nOlhXOXEm1QKBgQDPkd9/8LQCwJEy9Q1sS3sDQf0uDyr2xgkz+0W0NQSKuOeuCE0p\nrmQXmzkREHip7fIFtEpd2t+PdoZm1gsK+uJhL6ebYhpJh5p+lL6elIQThkhNmDuy\nvgoW01i3OjN7xPSWBSBC9xoVkeaOZAGc2q0Lk96kRXxL7oQzkAAvjD2y4QKBgHEe\neQaSmIJO/8tuXLNsbYTDqNTVlgKvZoloiT+FV3+PK4y+2dnr2RQxu9GcIns2EsDj\nn3cQpXCHEgKrr0ZFZTwAFy6JscQcNRFFd0Ehjmi44rEK8LqTNLkz4f8KuHz/O3JZ\ne+qe0zN71iPzkXVHLOZ65ivtzVNM8y9NtrsdCj/dAoGBAJNM0+Fbt3i1El+U/jOQ\nKwD8vBVwsJEZ0UspoxETTAnu0sgIUbRECVhn/BQ5ja3HusRaDRsKb7ROLyjnRuC7\nnR/wM//oENnRm50hEi4Ocfp0eAOx7XQOUuE08XhUMyXp00mOCo1NwOFtL0WdG6Bk\nSNV2aPx+2+DGSZEVbuLXviHs\n-----END PRIVATE KEY-----",
"host": "ip-10-81-125-132.us-west-2.compute.internal",
"port": "443",
"distinguishedName": "UID=r-0595a13c153d76ae5,CN=ManagementCA,OU=ami-02a4474c1f74940a8,O=ip-10-81-125-132.us-west-2.compute.internal",
"certificateProfile": "ENDUSER",
"endEntityProfile": "EMPTY"
}
}
}

监控外部 CA

证书监控功能在版本 4.3.0 及更高版本中保持不变。

操作员可以继续在“CA 摘要”(CA Summary) 页面中查看所有 Edge 证书和网关证书的列表。

操作员、合作伙伴或客户管理员也可以导航到“配置”(Configure) > Edge >“概览”(Overview),以查看特定 Edge 的证书。

限制

  • 外部 CA 功能只能在由客户管理的内部部署 Orchestrator 上启用,而不能在由 VMware 托管的 Orchestrator 上使用。
  • 对于版本 4.3.0,此功能仅支持“同步”(Synchronous) 模式。
  • 对于版本 4.3.0,此功能只能使用 PrimeKey EJBCA PKI 作为外部 CA。
  • 在未来版本中,将添加对其他模式(“异步”(Asynchronous) 和“手动”(Manual) 模式)和其他外部 CA 的支持。