如何在 Azure DevOps 管道中安装 Azure Key Vault 证书?
How to install an Azure Key Vault certificate in an Azure DevOps pipeline?
问题说明了一切。我很难做到这一点,所以我要回答我自己的问题。
也许人们有一些 suggestions/modifications 但这是我们使用一些 PowerShell 命令得到的结果。
设置有权访问 Key Vault 的 Azure 资源管理器连接。
在 Azure 门户中,您可以在 Key Vault 的 “访问策略” 中执行此操作。
授予应用程序获取、列表和备份权限。
在您的 CI YAML 文件中:
- task: AzureCLI@2
displayName: "Install Certificate"
inputs:
azureSubscription: '<Your Azure Resource Manager connection name>'
scriptType: 'ps'
scriptLocation: 'inlineScript'
addSpnToEnvironment: true
inlineScript: |
Set-PSDebug -Trace 1
$vaultName="<Your Key Vault name>"
$certName="<Your certificate name in the Key Vault>"
az keyvault secret show --vault-name $vaultName --name $certName | ConvertFrom-Json | Select-Object -Expand value > certName.pfx
Import-PfxCertificate -FilePath certName.pfx Cert:\CurrentUser\My
问题说明了一切。我很难做到这一点,所以我要回答我自己的问题。
也许人们有一些 suggestions/modifications 但这是我们使用一些 PowerShell 命令得到的结果。
设置有权访问 Key Vault 的 Azure 资源管理器连接。 在 Azure 门户中,您可以在 Key Vault 的 “访问策略” 中执行此操作。 授予应用程序获取、列表和备份权限。
在您的 CI YAML 文件中:
- task: AzureCLI@2
displayName: "Install Certificate"
inputs:
azureSubscription: '<Your Azure Resource Manager connection name>'
scriptType: 'ps'
scriptLocation: 'inlineScript'
addSpnToEnvironment: true
inlineScript: |
Set-PSDebug -Trace 1
$vaultName="<Your Key Vault name>"
$certName="<Your certificate name in the Key Vault>"
az keyvault secret show --vault-name $vaultName --name $certName | ConvertFrom-Json | Select-Object -Expand value > certName.pfx
Import-PfxCertificate -FilePath certName.pfx Cert:\CurrentUser\My