Spanner 共担责任模型

Spanner 是一项全代管式全球分布式多模型数据库服务,旨在实现高可用性和极大规模。作为 Google Cloud上的代管式服务,安全性和运营弹性责任由您和 Google 共同承担。

本文档概述了责任划分,以确保 Spanner 实例和数据的安全性、合规性和正常运行。

责任共担模型概览

在责任共担模型中,Google 负责管理 Spanner 服务、基础架构和底层全球网络的安全性,而客户则负责 Spanner 实例中的安全性和管理,包括数据、应用访问权限和配置。

责任范围 Google Cloud 您
基础架构 Responsible Not Responsible
服务配置和安全性 已共享 已共享
数据和应用访问权限 Not Responsible Responsible

Google 责任

Google 负责保护运行 Spanner 服务的相应基础架构。这包括物理、硬件、网络和运营组件。

基础架构和全球可用性

  • 实体安全:保护 Spanner 基础架构所在的全球区域、地区和实体数据中心。

  • 网络:提供安全可靠的网络,确保 Spanner 的全局一致性和复制功能。

  • 硬件和软件:管理硬件、宿主操作系统和 Spanner 服务软件本身。这包括自动修补、维护和更新。

服务管理和弹性

  • 高可用性和可伸缩性:通过自动管理区域和可用区之间的扩缩、复制和故障切换,确保 99.999% 的 SLA(适用于多区域配置)。Spanner 旨在实现零计划内停机时间。如果用户控制的配置导致服务中断,则 Spanner 实例可能会被排除在 Spanner 服务等级协议 (SLA) 的涵盖范围之外。如需查看这些配置,请参阅 Spanner 操作指南。

  • 持久性:确保数据的持久性,包括存储在 Spanner 系统中的备份。

  • 数据库软件完整性:构建、维护和更新 Spanner 软件。

合规性和数据保护

  • 静态加密和传输加密:确保数据默认处于加密状态。

  • 数据驻留:可让您管理特定区域或配置(例如双区域、多区域)内的数据放置。

  • Google Cloud Dedicated 运营:对于 Google Cloud Dedicated 部署,Google 提供基础设施、软件 build 和更新,而我们的本地可信合作伙伴负责运营和支持云服务。Google 可能会在合作伙伴执行维护和解决问题时提供第二级帮助。

您的职责

使用 Spanner 时,您可以对数据、配置、访问权限管理和应用开发保持主要控制权。

数据和架构管理

  • 数据内容和安全性:负责 Spanner 中存储的数据内容,包括其敏感度、合规性和完整性。

  • 架构设计和优化:定义和管理数据库架构,包括创建表、索引和管理交错表以提升性能。

  • 查询优化:设计高效的查询,以确保性能并管理资源分配。例如,管理事务跨度和了解锁定行为至关重要。

访问权限和身份管理

  • IAM 配置:为访问 Spanner 实例和数据库的主账号(用户和服务账号)定义和管理 Identity and Access Management (IAM) 角色和权限。

  • 精细访问权限控制 (FGAC):如果客户实施了 FGAC,则负责定义、管理和重新授予对数据库角色和权限的访问权限。

  • 审核日志记录:监控和分析 Cloud Audit Logs,以跟踪对 Spanner 实例和数据的访问和操作。

运营弹性和灾难恢复

  • 配置管理:管理 Spanner 实例配置、节点数量和区域部署。

  • Backup and DR Service:实施灾难恢复策略,包括将数据存储在 Spanner 实例本身之外(例如,在单独的区域、实例或外部存储空间中),以防范意外删除实例或数据损坏等情况。

  • (可选)变更数据流集成:配置和管理利用 Spanner 变更数据流进行事件流式传输的 Dataflow 作业或其他消费者。

安全配置

  • 客户管理的加密密钥 (CMEK):如果使用,则管理用于加密 Spanner 数据的 Cloud Key Management Service (Cloud KMS) 密钥和权限。

  • 请求和事务标记:为查询和事务应用标记,以增强可观测性和性能监控。

  • 监控和提醒:设置和调整自定义监控、导出指标,以及配置提醒以检测性能下降或安全异常。

职责摘要

下表总结了特定运营和安全组件的共同责任:

组件 我们的责任 您的责任
数据和用户访问权限 底层存储的物理隔离和保护。 IAM 和 FGAC 管理。定义数据库角色和权限。
网络安全 Spanner 服务基础架构的网络路径、防火墙和分段。 配置虚拟私有云 (VPC)、Private Service Connect 和客户端网络规则。
Backup and DR Service 多区域复制和 99.999% 的服务可用性。时间点恢复 (PITR) 功能。 实现灾难恢复解决方案,将数据存储在主 Spanner 实例之外,并管理应用故障切换到新数据库。
加密 默认支持静态加密和传输中加密。 管理和轮替 CMEK 密钥(如果使用)。
备份 管理备份服务基础架构并确保备份持久性。 定义备份时间表、管理和访问备份,以及将备份复制到其他实例/区域。
Spanner 实例 预配和管理底层基础设施。 配置节点数量和位置。
可观测性 提供用于诊断的系统表(例如 SPANNER_SYS)。 实现自定义监控,利用请求/事务标记,并与外部监控工具(例如 Prometheus 和 Grafana)集成。
客户端应用 提供 Spanner 客户端库和 API。 开发、部署和保护与数据库交互的所有客户端应用。
配置管理 根据配额检查用量,并根据需要提交申请。使用 Terraform 等工具管理数据库和实例资源。