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

确保 Azure 云 HSM 部署安全

Azure云 HSM 提供高保证的硬件安全模块(HSM)解决方案,用于保护加密密钥和保护云中的敏感工作负载。 实施安全最佳做法对于防止未经授权的访问、维护作完整性和优化性能至关重要。

本文提供安全建议来帮助保护 Azure Cloud HSM 部署。

本文中的安全建议实施零信任原则:“显式验证”、“使用最小特权访问”和“假设违规”。 有关全面的零信任指南,请参阅 零信任 指导中心

特定于服务的安全性

Azure云 HSM 是单租户 FIPS 140-3 级别 3 验证的服务,可授予客户对其 HSM 的完整管理权限。 保护信任根对于维护部署的安全性至关重要。

  • 限制对分区所有者私钥的访问:限制对应用程序分区(POTA)私钥(POTA)的PO.key分区所有者的访问。 应用程序分区 (AOTA) 和用户分区 (POTA) 的私钥管理员权限相当于 root 访问,可以为分区内的密码官 (CO) 用户重置密码(AOTA 针对分区0,POTA 针对用户分区)。 在运行时对于 HSM 访问不需要 PO.key。 它仅在需要对分区所有者身份验证证书(POAC)进行初始签名和重置 CO 密码时使用。 脱机存储 PO.key ,并在脱机计算机上执行初始 POAC 签名(如果可能)。 你负责保护 POTA 私钥。 丢失它会导致无法恢复 CO 密码。 安全地存储 POTA 私钥并维护适当的备份。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 了解物理安全保证:Azure云 HSM 托管在具有篡改检测机制的安全数据中心。 物理安全由微软负责,并且是该服务的固有组成部分。 有关详细信息,请参阅 物理安全性

  • 围绕服务的运营模型进行规划:Azure云 HSM 没有计划的维护时段,但Microsoft提前通知你任何预期的影响。 跟踪这些通知,并将其与更改控制流程保持一致。 有关详细信息,请参阅 服务操作

网络安全

正确配置网络有助于防止未经授权的访问并减少外部威胁的暴露。

  • 使用专用终结点:使用专用子网和专用终结点帮助保护Azure云 HSM 部署,以防止暴露到公共 Internet。 此方法可确保流量保留在Microsoft主干网络中,从而降低未经授权的访问风险。 有关详细信息,请参阅 Azure Cloud HSM 的网络安全。

身份和访问管理

有效的用户管理和身份验证控制对于维护 Azure Cloud HSM 的安全性和完整性至关重要。 为用户标识、凭据和权限实施适当的控制有助于防止未经授权的访问并确保作连续性。

  • 使用强密码:为 HSM 用户创建唯一的强密码。 使用至少 12 个字符,包括大写和小写字母、数字和特殊字符的组合。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 保护 HSM 用户凭据:仔细保护 HSM 用户凭据,因为Microsoft在丢失时无法恢复凭据。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 实现辅助管理员进行锁定防护:指定至少两个管理员以防止 HSM 锁定,以防丢失一个密码。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 使用受限权限建立多个加密用户(OU):创建具有不同职责的多个 OU,以防止任何单个用户完全控制。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 通过设置适当的用户属性来限制 OU 导出密钥的能力:通过设置适当的用户属性来限制 OU 导出密钥材料。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 限制对 OU 的 CO 控制:使用 disableUserAccess 命令阻止 CO 用户管理特定 OU。 CO 用户可以使用较旧的备份绕过此命令。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 配置托管标识:为备份和还原操作以及执行管理操作的 VM 建立用户分配的托管标识。 有关详细信息,请参阅 Azure Cloud HSM 中的 User 管理

  • 安全地存储 HSM 凭据:保护存储的凭据,避免在不使用时公开它们。 设置您的环境以自动地检索和设置凭据。 有关详细信息,请参阅 Azure Cloud HSM 中的 Authentication

  • 为 JCE 身份验证使用隐式登录名:尽可能使用隐式登录进行Java加密扩展(JCE)身份验证,以允许自动凭据管理和重新身份验证。 有关详细信息,请参阅 Azure Cloud HSM 中的 Authentication

  • 避免跨线程共享会话:对于多线程应用程序,请为每个线程分配其自己的会话,以防止冲突和安全问题。 有关详细信息,请参阅 Azure Cloud HSM 中的 Authentication

  • 实现客户端重试:为 HSM 操作添加重试逻辑以处理潜在的维护事件或 HSM 替换。 有关详细信息,请参阅 Azure Cloud HSM 中的 Authentication

  • 仔细管理 HSM 客户端会话:请注意,azurecloudhsm_client 会在同一台主机上的应用程序之间共享会话。 适当的会话管理可避免冲突。 有关详细信息,请参阅 Azure Cloud HSM 中的 Authentication

数据保护

正确处理密钥存储限制、密钥包装安全性、密钥属性和缓存策略可以提高保护和性能。

  • 实现密钥轮换:定期轮换密钥以替换旧密钥,并在维护安全性的同时释放存储空间。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 使用密钥层次结构:通过使用主密钥来加密其他密钥,将更少的密钥存储在 HSM 中。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 在可行时共享和重用密钥:在适当情况下通过跨多个会话共享或重复使用密钥来减少storage要求。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 安全删除未使用的密钥:删除不再需要的密钥,以防止不必要的存储消耗。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 尽可能将密钥设置为不可导出:用于 EXTRACTABLE=0 确保无法在 HSM 外部导出密钥。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 启用受信任的密钥包装:用于 WRAP_WITH_TRUSTED=1 将密钥包装限制为受信任的密钥。 此作可防止未经授权的密钥导出。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 使用密钥属性来限制权限:仅在生成密钥时分配必要的属性,以限制意外的操作。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

  • 缓存密钥对象的性能:仅在应用程序启动期间使用一次键查找命令,并将返回的密钥对象存储在应用程序内存中以减少延迟。 有关详细信息,请参阅 Azure Cloud HSM 中的 Key 管理

日志记录和监控

  • 配置操作事件日志记录:操作事件日志记录对于 HSM 安全性至关重要。 事件日志记录提供访问和操作的一致记录,用于问责、可跟踪性和法规合规性。 事件日志记录有助于检测未经授权的访问、调查事件和识别异常,这有助于确保加密操作的完整性和机密性。 为了维护安全和隐私,日志会排除敏感数据(例如密钥 ID、密钥名称和用户详细信息)。 日志捕获 HSM 操作、时间戳和元数据,但它们无法确定成功或失败,因为 HSM 操作发生在内部 TLS 通道中。 有关详细信息,请参阅教程:Azure Cloud HSM 中的操作事件日志记录

  • 将日志流式传输到事件中心进行实时处理:对于实时日志处理并与下游 SIEM 系统或自定义分析管道集成,请将事件中心配置为诊断设置的另一个目标。 有关详细信息,请参阅教程:为 Azure Cloud HSM 配置事件中心

合规性和治理

定期合规性评审可帮助你演示Azure云 HSM 部署符合行业和法规标准。

  • 了解服务的合规性状况:Azure云 HSM 符合多个行业标准和认证,包括 FIPS 140-3 级别 3、eIDAS 和 PCI/PCI 3DS。 在将云 HSM 用于受监管工作负荷之前,请确认当前认证列表。 有关详细信息,请参阅 合规性和认证

备份和恢复

Azure 云 HSM 通过群集 HSM 提供高可用性,这些 HSM 在故障发生时自动迁移工作负载,并同步密钥和策略。

  • 实现备份和灾难恢复:该服务支持全面的备份和还原操作,这些操作保留所有密钥、属性和角色分配。 HSM 派生密钥保护Microsoft无法访问的备份。 Azure 云 HSM 不支持还原到已激活的 HSM。 为了保持业务连续性,请使用托管标识进行身份验证、将备份存储在专用Azure Blob 存储中、实现最小基于角色的访问控制(RBAC)权限以及禁用共享密钥访问。 其他恢复选项包括使用 extractMaskedObject 将密钥提取为加密数据块、安全地存储,并根据需要使用 insertMaskedObject 导入它们。 在两个区域中部署系统以实现故障转移能力。 有关详细信息,请参阅备份和还原Azure云 HSM 资源

  • 验证所有节点的用户和密钥同步:Azure云 HSM 作为三个节点的群集运行。 在服务事件(如自我修复或升级)期间,用户或密钥可能不会复制到所有节点。 如果遇到间歇性身份验证或作失败,请验证每个节点上是否存在所有用户和密钥。 有关详细信息,请参阅跨 Azure 云 HSM 节点同步用户和密钥

后续步骤