我正在尝试使用Azure CLI将证书添加到Azure密钥保管库。我遵循这里的文档和这里的快速启动。两个页面都表示生成证书的命令是:
az keyvault certificate create --vault-name vaultname -n cert1 -p "$(az keyvault certificate get-default-policy)"
我的脚本中有这样一行:
az keyvault certificate create --vault-name $keyVault -n $certName -p "$(az keyvault certificate get-default-policy)"
每次运行它时,我都会遇到以下异常。我是否遗漏了一些明显的内容?
az : Expecting property name enclosed in double quotes: line 1 column 5 (char 4)
这是因为Powershell以与bash和CMD不同的编码保存get-default-policy
的输出。
请使用此解决方法:
az keyvault certificate get-default-policy | Out-File -Encoding utf8 defaultpolicy.json
az keyvault certificate create --vault-name $keyVault -n $certName --policy `@defaultpolicy.json