你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将 Key Vault 与集成证书颁发机构集成

Azure Key Vault 使你能轻松地为网络预配、管理和部署数字证书,并支持应用程序的安全通信。 数字证书是一种电子凭据,用于在电子交易中建立身份证明。

Azure Key Vault 与以下证书颁发机构建立了受信任的合作关系:

Azure Key Vault 用户可以直接从其密钥保管库生成 DigiCert/GlobalSign 证书。 Key Vault 的合作关系可确保 DigiCert 颁发的证书的端到端证书生命周期管理。

若要详细了解证书的常规信息,请参阅 Azure Key Vault 证书

如果没有 Azure 订阅,可以在开始之前创建一个免费帐户

先决条件

若要完成本文中的过程,你需要拥有:

准备阶段

DigiCert

确保你的 DigiCert CertCentral 帐户提供以下信息:

  • CertCentral 帐户 ID
  • 组织 ID
  • API 密钥
  • 帐户 ID
  • 帐户密码

GlobalSign

确保你的 GlobalSign 帐户提供以下信息:

  • 帐户 ID
  • 帐户密码
  • 管理员的名字
  • 管理员的姓氏
  • 管理员的电子邮件
  • 管理员的电话号码

在密钥保管库中添加证书颁发机构

从 DigiCert CertCentral 帐户收集上述信息后,可以将 DigiCert 添加到密钥保管库中的证书颁发机构列表。

Azure 门户 (DigiCert)

  1. 若要添加 DigiCert 证书颁发机构,请转到要将其添加到的密钥保管库。

  2. 在密钥保管库属性页中,选择“证书”。

  3. 选择“证书颁发机构”选项卡:此屏幕截图显示了正在选择“证书颁发机构”选项卡。

  4. 选择“添加”:此屏幕截图显示了“证书颁发机构”选项卡上的“添加”按钮。

  5. 在“创建证书颁发机构”下,输入以下值:

    • 名称:可识别的颁发者名称。 例如 DigicertCA。
    • 提供商:DigiCert。
    • 帐户 ID:你的 DigiCert CertCentral 帐户 ID。
    • 帐户密码:你在 DigiCert CertCentral 帐户中生成的 API 密钥。
    • 组织 ID:DigiCert CertCentral 帐户中的组织 ID。
  6. 选择“创建”

DigicertCA 现在位于证书颁发机构列表中。

Azure 门户 (GlobalSign)

  1. 要添加 GlobalSign 证书颁发机构,请转到要将其添加到的密钥保管库。

  2. 在密钥保管库属性页中,选择“证书”。

  3. 选择“证书颁发机构”选项卡:此屏幕截图显示了正在选择“证书颁发机构”选项卡。

  4. 选择“添加”:显示“GlobalSign 证书颁发机构”选项卡上的“添加”按钮的屏幕截图。

  5. 在“创建证书颁发机构”下,输入以下值:

    • 名称:可识别的颁发者名称。 例如 GlobalSignCA。
    • 提供商:GlobalSign。
    • 帐户 ID:GlobalSign 帐户 ID。
    • 帐户密码:GlobalSign 帐户密码。
    • 管理员名字:GlobalSign 帐户管理员的名字。
    • 管理员姓氏:GlobalSign 帐户管理员的姓氏。
    • 管理员电子邮件:GlobalSign 帐户管理员的电子邮件。
    • 管理员电话号码:GlobalSign 帐户管理员的电话号码。
  6. 选择“创建”。

GlobalSignCA 现在位于证书颁发机构列表中。

Azure PowerShell

可以使用 Azure PowerShell 通过命令或脚本创建和管理 Azure 资源。 Azure 托管 Azure Cloud Shell(一个可通过 Azure 门户在浏览器中使用的交互式 shell 环境)。

如果选择在本地安装并使用 PowerShell,则需要使用 Azure AZ PowerShell 模块 1.0.0 或更高版本来完成此过程。 键入 $PSVersionTable.PSVersion 即可确定版本。 如果需要升级,请参阅安装 Azure AZ PowerShell 模块。 如果在本地运行 PowerShell,则还需运行 Connect-AzAccount 以创建与 Azure 的连接:

Connect-AzAccount
  1. 使用 New-AzResourceGroup 创建 Azure 资源组。 资源组是在其中部署和管理 Azure 资源的逻辑容器。

    New-AzResourceGroup -Name ContosoResourceGroup -Location EastUS
    
  2. 创建具有唯一名称的密钥保管库。 在这里,Contoso-Vaultname 是密钥保管库的名称。

    • 保管库名称:Contoso-Vaultname
    • 资源组名称:ContosoResourceGroup
    • 位置EastUS
    New-AzKeyVault -Name 'Contoso-Vaultname' -ResourceGroupName 'ContosoResourceGroup' -Location 'EastUS'
    
  3. 为 DigiCert CertCentral 帐户中的以下值定义变量:

    • 帐户 ID
    • 组织 ID
    • API 密钥
    $accountId = "myDigiCertCertCentralAccountID"
    $org = New-AzKeyVaultCertificateOrganizationDetail -Id OrganizationIDfromDigiCertAccount
    $secureApiKey = ConvertTo-SecureString DigiCertCertCentralAPIKey -AsPlainText –Force
    
  4. 设置颁发者。 这样做将在密钥保管库中添加 Digicert 作为证书颁发机构。 详细了解参数。

    Set-AzKeyVaultCertificateIssuer -VaultName "Contoso-Vaultname" -Name "TestIssuer01" -IssuerProvider DigiCert -AccountId $accountId -ApiKey $secureApiKey -OrganizationDetails $org -PassThru
    
  5. 直接在密钥保管库的 DigiCert 中设置证书的策略并颁发证书:

    $Policy = New-AzKeyVaultCertificatePolicy -SecretContentType "application/x-pkcs12" -SubjectName "CN=contoso.com" -IssuerName "TestIssuer01" -ValidityInMonths 12 -RenewAtNumberOfDaysBeforeExpiry 60
    Add-AzKeyVaultCertificate -VaultName "Contoso-Vaultname" -Name "ExampleCertificate" -CertificatePolicy $Policy
    

该证书现在由 DigiCert 证书颁发机构在指定的密钥保管库中颁发。

疑难解答

如果颁发的证书在 Azure 门户中处于“禁用”状态,请查看“证书操作”以查看该证书的 DigiCert 错误消息:

显示“证书操作”选项卡的屏幕截图。

错误消息:“请执行合并以完成此证书请求。”

合并由证书颁发机构签名的 CSR 以完成请求。 有关合并 CSR 的信息,请参阅创建和合并 CSR

有关详细信息,请参阅密钥保管库 REST API 参考中的“证书操作”。 有关建立权限的信息,请参阅保管库 - 创建或更新保管库 - 更新访问策略

后续步骤