将 Key Vault 与集成证书颁发机构集成
Azure Key Vault 使你能轻松地为网络预配、管理和部署数字证书,并支持应用程序的安全通信。 数字证书是一种电子凭据,用于在电子交易中建立身份证明。
Azure Key Vault 与以下证书颁发机构建立了受信任的合作关系:
Azure Key Vault 用户可以直接从其密钥保管库生成 DigiCert/GlobalSign 证书。 Key Vault 的合作关系可确保 DigiCert 颁发的证书的端到端证书生命周期管理。
若要详细了解证书的常规信息,请参阅 Azure Key Vault 证书。
如果没有 Azure 订阅,请在开始前创建一个试用版订阅。
先决条件
若要完成本文中的过程,你需要拥有:
- 一个 Key Vault。 可以使用现有的密钥保管库,或者遵循以下快速入门之一中的步骤进行创建:
- 已激活的 DigiCert CertCentral 帐户。 注册 CertCentral 帐户。
- 帐户中的管理员级别权限。
准备阶段
DigiCert
确保你的 DigiCert CertCentral 帐户提供以下信息:
- CertCentral 帐户 ID
- 组织 ID
- API 密钥
- 帐户 ID
- 帐户密码
GlobalSign
确保你的 GlobalSign 帐户提供以下信息:
- 帐户 ID
- 帐户密码
- 管理员的名字
- 管理员的姓氏
- 管理员的电子邮件
- 管理员的电话号码
在密钥保管库中添加证书颁发机构
从 DigiCert CertCentral 帐户收集上述信息后,可以将 DigiCert 添加到密钥保管库中的证书颁发机构列表。
Azure 门户 (DigiCert)
若要添加 DigiCert 证书颁发机构,请转到要将其添加到的密钥保管库。
在密钥保管库属性页中,选择“证书”。
选择“证书颁发机构”选项卡:
选择“添加”:
在“创建证书颁发机构”下,输入以下值:
- 名称:可识别的颁发者名称。 例如 DigicertCA。
- 提供商:DigiCert。
- 帐户 ID:你的 DigiCert CertCentral 帐户 ID。
- 帐户密码:你在 DigiCert CertCentral 帐户中生成的 API 密钥。
- 组织 ID:DigiCert CertCentral 帐户中的组织 ID。
选择“创建”。
DigicertCA 现在位于证书颁发机构列表中。
Azure 门户 (GlobalSign)
若要添加 DigiCert 证书颁发机构,请转到要将其添加到的密钥保管库。
在密钥保管库属性页中,选择“证书”。
选择“证书颁发机构”选项卡:
选择“添加”:
在“创建证书颁发机构”下,输入以下值:
- 名称:可识别的颁发者名称。 例如 GlobalSignCA。
- 提供商:GlobalSign。
- 帐户 ID:GlobalSign 帐户 ID。
- 帐户密码:GlobalSign 帐户密码。
- 管理员名字:GlobalSign 帐户管理员的名字。
- 管理员姓氏:GlobalSign 帐户管理员的姓氏。
- 管理员电子邮件:GlobalSign 帐户管理员的电子邮件。
- 管理员电话号码:GlobalSign 帐户管理员的电话号码。
选择“创建”。
GlobalSignCA 现在位于证书颁发机构列表中。
Azure PowerShell
可以使用 Azure PowerShell 通过命令或脚本创建和管理 Azure 资源。
如果选择在本地安装并使用 PowerShell,则需要使用 Azure AZ PowerShell 模块 1.0.0 或更高版本来完成此过程。 键入 $PSVersionTable.PSVersion
即可确定版本。 如果需要升级,请参阅安装 Azure AZ PowerShell 模块。 如果在本地运行 PowerShell,则还需运行 Connect-AzAccount -Environment AzureChinaCloud
以创建与 Azure 的连接:
Connect-AzAccount -Environment AzureChinaCloud
使用 New-AzResourceGroup 创建 Azure 资源组。 资源组是在其中部署和管理 Azure 资源的逻辑容器。
New-AzResourceGroup -Name ContosoResourceGroup -Location ChinaEast
创建具有唯一名称的密钥保管库。 在这里,
Contoso-Vaultname
是密钥保管库的名称。- 保管库名称:
Contoso-Vaultname
- 资源组名称:
ContosoResourceGroup
- 位置:
ChinaEast
New-AzKeyVault -Name 'Contoso-Vaultname' -ResourceGroupName 'ContosoResourceGroup' -Location 'ChinaEast'
- 保管库名称:
为 DigiCert CertCentral 帐户中的以下值定义变量:
- 帐户 ID
- 组织 ID
- API 密钥
$accountId = "myDigiCertCertCentralAccountID" $org = New-AzKeyVaultCertificateOrganizationDetail -Id OrganizationIDfromDigiCertAccount $secureApiKey = ConvertTo-SecureString DigiCertCertCentralAPIKey -AsPlainText -Force
设置颁发者。 这样做将在密钥保管库中添加 Digicert 作为证书颁发机构。 详细了解参数。
Set-AzKeyVaultCertificateIssuer -VaultName "Contoso-Vaultname" -Name "TestIssuer01" -IssuerProvider DigiCert -AccountId $accountId -ApiKey $secureApiKey -OrganizationDetails $org -PassThru
直接在密钥保管库的 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 参考中的“证书操作”。 有关建立权限的信息,请参阅保管库 - 创建或更新和保管库 - 更新访问策略。