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

保护 Azure Key Vault 证书

Azure Key Vault 证书管理 X.509 证书及其关联的私钥,用于 TLS/SSL、身份验证和代码签名。 本文提供特定于证书管理的安全建议。

注释

本文重点介绍特定于 Key Vault 证书的安全做法。 有关全面的 Key Vault 安全指南,包括网络安全、标识和访问管理以及保管库体系结构,请参阅 保护 Azure Key Vault

证书存储和格式

Key Vault 证书将 X.509 证书与其私钥相结合,并提供自动化管理功能:

  • 存储证书,而不是机密:始终使用 Key Vault 证书对象类型,而不是将证书存储为机密。 证书对象提供:

    • 自动化生命周期管理
    • 与证书颁发机构(CA)集成
    • 自动续订功能
    • 内置版本控制
  • 使用受信任的证书颁发机构:与受支持的 CA 集成,以便自动颁发和续订:

    • DigiCert
    • GlobalSign
    • 其他集成证书颁发机构

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

  • 正确导入外部证书:从外部源导入证书时:

    • 使用 PFX 或 PEM 格式
    • 包括完整的证书链
    • 在导入期间保护私钥

    请参阅 导入证书

有关证书的详细信息,请参阅 “关于 Azure Key Vault 证书”。

证书生命周期管理

实现适当的证书生命周期管理,以防止过期和中断:

  • 启用自动续订:为集成 CA 颁发的证书配置自动续订。 请参阅 续订 Azure Key Vault 证书

  • 设置续订窗口:将证书配置为在过期前续订:

    • 在证书生效期达到 80% 的时候开始续订
    • 对于 1 年期证书,请从 292 天开始续订
    • 对于 2 年期证书,请从 584 天开始续订
  • 监视证书过期:使用事件网格通知跟踪证书生命周期事件:

    • 证书即将过期(到期前 30 天、15 天和 7 天)
    • 证书已过期
    • 已创建或续订证书

    Azure Key Vault 视为事件网格源

  • 维护证书清单:跟踪所有证书、其用途和到期日期

有关续订的详细信息,请参阅 教程:在 Key Vault 中配置证书自动轮换

证书访问控制

控制谁可以访问和管理证书:

  • 单独的证书权限:使用 Azure RBAC 授予特定证书权限:

    • 证书用户:读取证书和公钥
    • 证书官员:管理证书生命周期(创建、导入、续订、删除)
    • 清除恢复工具:用于恢复已删除的证书
  • 限制管理访问权限:仅限授权人员进行证书管理操作

  • 使用托管标识:应用程序应使用托管标识而不是使用存储凭据的服务主体访问证书

请参阅 使用 Azure RBAC 提供对 Key Vault 证书的访问权限

证书颁发策略

配置证书策略以强制实施安全要求:

  • 设置适当的有效期

    • TLS/SSL 证书:最长 1 年(根据 CA/Browser Forum 基准要求)
    • 内部证书:基于组织策略
    • 代码签名证书:遵循行业标准
  • 使用强键算法

    • RSA:2048 位最低,4096 位,适合高安全性方案
    • EC:P-256、P-384 或 P-521 曲线
  • 配置使用者可选名称(SAN):包括所有必需的 DNS 名称和 IP 地址

  • 设置密钥用法扩展:指定适当的密钥用法(数字签名、密钥加密)和扩展密钥用法(服务器身份验证、客户端身份验证)

有关证书策略的详细信息,请参阅 关于 Azure Key Vault 证书的创建

证书监视和警报

跟踪证书操作和生命周期事件。

  • 启用诊断日志记录:记录所有证书作,包括:

    • 证书创建和导入
    • 证书续订尝试(成功/失败)
    • 证书访问(获取证书,获取私钥)
    • 证书删除

    请参阅 Azure Key Vault 日志记录

  • 配置过期警报:设置 Azure Monitor 警报,用于:

    • 证书在 30 天内过期
    • 续订尝试失败
    • 未经授权身份对证书的访问

    请参阅 Azure Key Vault 的监视和警报

  • 查看证书使用情况:定期审核使用每个证书的应用程序和服务

证书导出和备份

在维护安全性的同时保护证书可用性:

  • 控制导出作:限制谁可以使用私钥导出证书(证书策略中的可导出标志)

  • 启用软删除:在保留期内恢复意外删除的证书(7-90 天)。 请参阅 Azure Key Vault 软删除概述

  • 启用清除保护:防止在保留期内永久删除。 请参阅 清除保护

  • 备份关键证书:导出并安全地存储用于灾难恢复的证书备份。 请参阅 Azure Key Vault 备份

  • 保护导出的证书:导出证书时:

    • 对 PFX 文件使用强密码
    • 将导出的文件存储在安全位置
    • 使用后删除临时文件
    • 审核导出操作

证书透明度和符合性

保持对证书颁发的可见性:

  • 启用证书透明度(CT)日志记录:对于公开信任的证书,请确保 CT 符合性

    • CT 日志提供证书颁发的公共审核线索
    • 为了获得现代浏览器的信任,证书是必需的。
  • 文档证书用途:维护记录:

    • 证书用途和所属应用程序
    • 证书颁发审批过程
    • 证书续订过程

自签名证书

使用自签名证书进行测试或内部用途时:

  • 限制为非生产环境:自签名证书不应在生产环境中用于可公开访问的服务

  • 设置适当的有效期:对自签名证书使用较短的有效期(90 天或更少)

  • 管理信任分发:记录如何向客户端分发自签名证书信任

  • 计划迁移到 CA 颁发的证书:制定策略,将自签名证书替换为用于生产的 CA 颁发的证书

有关自签名证书的详细信息,请参阅 使用 Key Vault 创建证书

后续步骤