You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure CLI或PowerShell更新APIM现有自定义域名的SSL证书

更新APIM自定义域名的SSL证书(从Key Vault获取)

前提条件

确保你的APIM实例拥有Key Vault的**证书读取(Get)**权限:

  • 先获取APIM系统身份的Object ID:
    # Azure CLI
    az apim show --name <APIM实例名> --resource-group <资源组名> --query identity.principalId -o tsv
    
    # PowerShell
    $apimIdentity = (Get-AzApiManagement -ResourceGroupName <资源组名> -Name <APIM实例名>).Identity.PrincipalId
    
  • 给Key Vault添加权限:
    az keyvault set-policy --name <Key Vault名> --resource-group <KV资源组名> \
      --object-id <上面获取的Object ID> --certificate-permissions get
    
    Set-AzKeyVaultAccessPolicy -VaultName <Key Vault名> -ObjectId $apimIdentity -PermissionsToCertificates Get
    

Azure CLI 命令

直接通过az apim update命令更新指定自定义域名的Key Vault证书,推荐用域名名称定位(无需记索引):

az apim update --name <APIM实例名> --resource-group <资源组名> \
  --set "customDomains[?(@.name=='<你的自定义域名>')].keyVaultSecretId"="https://<Key Vault名>.vault.azure.net/secrets/<证书密钥名>/<可选:密钥版本>"

若不指定密钥版本,APIM会自动使用Key Vault中该密钥的最新版本。

PowerShell 命令

通过分步修改APIM配置对象来更新:

# 1. 获取APIM实例
$apim = Get-AzApiManagement -ResourceGroupName <资源组名> -Name <APIM实例名>

# 2. 定位要更新的自定义域名配置
$domainConfig = $apim.CustomDomains | Where-Object { $_.Name -eq "<你的自定义域名>" }

# 3. 设置新的Key Vault证书Secret ID
$domainConfig.KeyVaultSecretId = "https://<Key Vault名>.vault.azure.net/secrets/<证书密钥名>/<可选:密钥版本>"

# 4. 保存更改
Set-AzApiManagement -InputObject $apim

内容的提问来源于stack exchange,提问作者KSP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 01:35:25