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 等工具管理数据库和实例资源。