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

已启用 Azure Arc 的 SQL 托管实例的治理和安全性

本文提供有关治理、安全性和合规性的关键设计注意事项和最佳做法,以帮助你规划和实现已启用 Azure Arc 的 SQL 托管实例部署。 虽然企业级登陆区域文档将治理安全性作为单独的主题进行介绍,但这些关键设计领域合并到了已启用 Arc 的 SQL 托管实例的单个主题中。

体系结构

下图显示了一个概念参考体系结构,其中描绘了已启用 Arc 的 SQL 托管实例的安全性、合规性和治理设计领域:

Diagram showing enterprise-scale security and governance for Azure Arc-enabled SQL Managed Instance.

设计注意事项

本部分包含规划已启用 Arc 的 SQL 托管实例的安全性和治理时应记住的设计注意事项。

查看 Azure 登陆区域的安全性治理设计领域,以评估已启用 Arc 的 SQL 托管实例对整体治理和安全模型的影响。

治理原则

  • 查看资源组织关键设计领域,获取有关在登陆区域中实施治理的最佳做法。
  • 查看并强制实施组织对已启用 Arc 的 SQL 托管实例、数据控制器和自定义位置等混合资源使用的命名约定。
  • 查看“间接连接”模式的内置配置文件,并根据 Kubernetes 基础结构确定是否需要任何自定义配置文件

数据隐私和驻留

  • 根据安全性和合规性要求,考虑要在哪些 Azure 区域中部署已启用 Arc 的 SQL 托管实例和数据控制器,同时考虑任何数据主权要求。 了解在“直接连接”和“间接连接”模式下会从资源中收集哪些数据,并根据组织的数据驻留要求做出相应的规划

注意

不会向 Microsoft 发送数据库数据,只会发送操作数据、计费和清单数据、诊断数据以及客户体验改善计划 (CEIP) 数据

群集安全性

  • 已启用 Arc 的 SQL 托管实例可以驻留在混合云或多云 Kubernetes群集 上。 查看所选云提供商和 Kubernetes 发行版的安全性和治理注意事项。
  • 查看已启用 Azure Arc 的 Kubernetes 治理和安全规程设计领域中的设计注意事项。

网络安全性

  • 查看网络连接关键设计领域以获取最佳做法和指导。
  • 根据组织的安全性和合规性要求,确定用于已启用 Arc 的 SQL 托管实例的连接模式
  • 根据群集的部署位置,考虑分配所需的网络端口和终结点来通过 Grafana 和 Kibana 监视已启用 Arc 的 SQL 托管实例。
  • 创建数据控制器时,请确定要在 Kubernetes LoadBalancer 或 NodePort 之间使用哪种服务类型

标识和访问管理

  • 查看已启用 Arc 的 SQL 托管实例的标识和访问管理以获取最佳做法和指导。
  • 在考虑组织的职责分离和最低特权访问要求时,定义组织中的群集管理、操作、数据库管理和开发人员角色。 将每个团队映射到操作和职责可以根据使用的连接模式确定 Azure 基于角色的访问控制 (RBAC) 角色或 Kubernetes ClusterRoleBinding 和 RoleBinding
  • 考虑使用负责、问责、咨询和知情 (RACI) 参与方矩阵来支持这项工作。 根据资源一致性清单管理指导,将控制措施内置到你定义的管理范围层次结构中。
  • 部署 Azure Arc 数据控制器需要一些权限,这些权限可被视为高特权,例如创建 Kubernetes 命名空间或创建群集角色的权限。 了解为防止特权过高而需要的权限
  • 决定在已启用 Arc 的SQL 托管实例中使用的身份验证模型,无论是 Microsoft Entra 身份验证还是 SQL 身份验证。 查看标识和访问管理设计领域,获取设计注意事项和建议以选择正确的身份验证模式。
  • 请考虑系统管理的 keytab 和客户管理的 keytab 之间的差异,以部署 Azure Arc AD 连接器以支持已启用 Arc 的 SQL 托管实例 中的 Microsoft Entra 身份验证。 与完全客户控制管理服务帐户和 Microsoft Entra 身份验证支持的 keytab 相比,这两种方法都有简化操作的好处。

已启用 Azure Arc 的 SQL 托管实例安全性

  • 确定连接模式,考虑直接和不直接连接到 Azure 的利弊,以及这种连接模式如何影响混合云和多云实例使用 Azure 当前和将来实现的安全功能。
  • 查看已启用 Arc 的 SQL 托管实例中为数据工作负载提供的安全功能
  • 定义用于 Kubernetes 群集中的永久卷的存储平台,并了解可用于保护永久卷上的数据的安全功能。 在进行登陆区域设计时查看存储规程关键设计领域
  • 在已启用 Arc 的 SQL 托管实例上启用透明数据加密之前,查看此功能的要求和体系结构。
  • 根据组织的加密密钥管理策略和过程,考虑可以存储透明数据加密凭据的不同位置
  • 在“间接连接”模式下部署已启用 Arc 的 SQL 托管实例时,根据组织的安全性和合规性要求确定用于提供用户管理证书的证书颁发机构
  • 在“直接连接”模式下部署已启用 Arc 的 SQL 托管实例可以使用自动轮换功能提供系统管理的证书。 在“间接连接”模式下,需要手动干预才能轮换用户管理的证书。 选择要部署的连接模式时考虑手动操作和安全要求。
  • 考虑到需要使用最新版本来使已启用 Arc 的 SQL 托管实例保持最新状态,无论它们是在“直接连接”还是“间接连接”模式下部署的。 查看可升级性规程关键设计领域以获取更多指导。

监视策略

  • 查看管理规程关键设计领域设计,并计划将混合资源中的指标和日志收集到 Log Analytics 工作区中,以供进一步分析、审核和提供警报
  • 了解服务主体将日志和指标上传到 Azure Monitor 所需的最低特权

设计建议

网络安全性

  • 使用 SSL/TLS 证书保护 Grafana 和 Kibana 监视仪表板,以确保传输层安全。
  • 在部署已启用 Arc 的 SQL 托管实例时,使用 Kubernetes LoadBalancer 作为服务类型以提高可用性

标识和访问管理

  • 首选使用 Microsoft Entra 身份验证将用户生命周期管理卸载到目录服务,并使用 Microsoft Entra ID 中的安全组来管理用户访问 SQL 数据库的权限。
  • 对 Microsoft Entra 身份验证支持使用系统管理的 keytab 模式卸载域帐户和 keytab 管理开销,以简化操作。
  • 如果使用 SQL 身份验证,请采用强密码策略并启用审核,以监视 SQL 用户身份以及授予他们的数据库服务器和数据库访问权限。
  • 为 Azure Arc 数据控制器部署指定 Kubernetes 命名空间,并分配最低的部署和管理特权。
  • 为 Grafana 和 Kibana 仪表板创建强密码,并确保定期审核和轮换密码。
  • 监视已启用 Arc 的 SQL 托管实例和数据控制器的活动日志,以审核混合资源上发生的不同操作。 为相关事件创建警报,并与 Microsoft Sentinel 等安全信息和事件管理 (SIEM) 工具集成,以提供安全监视和事件响应。

已启用 Azure Arc 的 SQL 托管实例安全性

  • 尽可能为已启用 Azure Arc 的数据服务和已启用 Arc 的 SQL 托管实例选择“直接连接”模式而不是“间接连接”模式部署,以确保获得与“直接连接”模式相关的所有当前和未来安全功能优势
  • 尽可能启用透明数据加密以加密静态数据。
  • 将透明数据加密凭据存储在永久卷上,以提高复原能力。
  • 根据组织的安全性和合规性要求,使用存储平台功能来加密永久卷。
  • 确保根据要求制定备份策略,以便在丢失数据后能够恢复。 查看业务连续性和灾难恢复关键设计领域以获取更多指导。
  • 在“间接连接”模式下部署时,创建一个流程来轮换用户管理的证书
  • 确保创建一个流程用于将已启用 Arc 的 SQL 托管实例更新到最新版本,不管它使用哪种连接模式。

监视策略

  • 监视凭据过期时间,或用于将指标和日志上传到 Azure 的服务主体的变化。
  • 根据组织的安全性和合规性要求,创建一个流程来轮换服务主体凭据。

后续步骤

有关混合和多云云旅程的详细信息,请参阅以下文章: