我需要在使用 ARM 模板创建的 Service Fabric 群集中安装证书。我能够使用以下帮助程序 powershell 命令安装带有私钥的证书:
> Invoke-AddCertToKeyVault
https://github.com/ChackDan/Service-Fabric/tree/master/Scripts/ServiceFabricRPHelpers
此证书在 Azure Key Vault 中后,我可以修改我的 ARM 模板以在集群中的节点上自动安装证书:
"osProfile": {
"secrets": [
{
"sourceVault": {
"id": "[parameters('vaultId')]"
},
"vaultCertificates": [
{
"certificateStore": "My",
"certificateUrl": "https://mykeyvault.vault.azure.net:443/secrets/fabrikam/9d1adf93371732434"
}
]
}
]
}
问题是 Invoke-AddCertToKeyVault 期望我提供一个 pfx 文件,假设我有私钥。
该脚本正在创建以下 JSON blob:
$jsonBlob = @{
data = $base64
dataType = 'pfx'
password = $Password
} | ConvertTo-Json
我修改了脚本以删除密码并将 dataType 更改为“cer”,但是当我在 Azure 中部署模板时,它说 dataType 不再有效。
如何将证书部署到不包含私钥的 Service Fabric 集群?