Spanner es un servicio de base de datos multimodelo, distribuido a nivel global y completamente administrado, diseñado para una alta disponibilidad y una escala extrema. Como servicio administrado en Google Cloud, las responsabilidades de seguridad y resiliencia operativa se comparten entre tú y Google.
En este documento, se describe la división de responsabilidades para garantizar la seguridad, el cumplimiento y el funcionamiento de tus instancias y datos de Spanner.
Descripción general del modelo de responsabilidad compartida
En un modelo de responsabilidad compartida, Google administra la seguridad del servicio, la infraestructura y la red global subyacente de Spanner, mientras que el cliente es responsable de la seguridad y la administración en la instancia de Spanner, incluidos los datos, el acceso a las aplicaciones y la configuración.
| Área de responsabilidad | Google Cloud | Tú |
|---|---|---|
| Infraestructura | Prácticas de | Sin responsabilidad |
| Configuración y seguridad del servicio | Compartido | Compartido |
| Acceso a datos y aplicaciones | Sin responsabilidad | Prácticas de |
Las responsabilidades de Google
Google es responsable de proteger la infraestructura que ejecuta el servicio de Spanner. Esto incluye los componentes físicos, de hardware, de red y operativos.
Infraestructura y disponibilidad global
Seguridad física: Protección de las regiones, las zonas y los centros de datos físicos globales en los que reside la infraestructura de Spanner
Redes: Proporciona la red segura y confiable necesaria para la coherencia y la replicación globales de Spanner.
Hardware y software: Administrar el hardware, los sistemas operativos host y el software del servicio de Spanner. Esto incluye parches, mantenimiento y actualizaciones automáticos.
Administración y resiliencia de servicios
Alta disponibilidad y escala: Garantiza el ANS del 99.999% (para configuraciones multirregionales) administrando automáticamente el ajuste de escala, la replicación y la conmutación por error en regiones y zonas. Spanner está diseñado para no tener tiempo de inactividad planificado. Una instancia de Spanner se puede excluir del Acuerdo de Nivel de Servicio (ANS) de Spanner si las configuraciones controladas por el usuario causan una interrupción. Para ver estas configuraciones, consulta los lineamientos operativos de Spanner.
Durabilidad: Garantizar la durabilidad de los datos, incluidas las copias de seguridad almacenadas en el sistema de Spanner
Integridad del software de la base de datos: Compilación, mantenimiento y actualización del software de Spanner
Cumplimiento y protección de datos
Encriptación en reposo y en tránsito: Garantiza que los datos se encripten de forma predeterminada.
Residencia de datos: Te permite administrar la ubicación de los datos dentro de regiones o configuraciones específicas (por ejemplo, birregional, multirregional).
Operaciones de Google Cloud Dedicated: Para las implementaciones de Google Cloud Dedicated, Google proporciona la infraestructura, la compilación de software y las actualizaciones, mientras que nuestros socios locales de confianza operan y brindan asistencia para los servicios en la nube. Google puede brindar asistencia de segundo nivel a los socios para realizar el mantenimiento y resolver problemas.
Tus responsabilidades
Cuando usas Spanner, mantienes el control principal sobre tus datos, la configuración, la administración de acceso y el desarrollo de aplicaciones.
Administración de datos y esquemas
Contenido y seguridad de los datos: Responsabilidad por el contenido de los datos almacenados en Spanner, incluida su sensibilidad, cumplimiento de reglamentaciones y su integridad.
Diseño y optimización de esquemas: Definir y administrar el esquema de la base de datos, lo que incluye la creación de tablas, índices y la administración de tablas intercaladas para mejorar el rendimiento
Optimización de consultas: Diseño de consultas eficientes para garantizar el rendimiento y administrar la asignación de recursos Por ejemplo, es fundamental administrar los intervalos de transacciones y comprender el comportamiento de bloqueo.
Administración de identidades y accesos
Configuración de IAM: Definición y administración de roles y permisos de Identity and Access Management (IAM) para principales (usuarios y cuentas de servicio) que acceden a la instancia y las bases de datos de Spanner
Control de acceso detallado (FGAC): Si se implementa, el cliente es responsable de definir, administrar y volver a otorgar acceso a los roles y privilegios de la base de datos.
Registro de auditoría: Supervisa y analiza los Registros de auditoría de Cloud para hacer un seguimiento del acceso y las acciones que se realizan en la instancia y los datos de Spanner.
Resiliencia operativa y recuperación ante desastres
Administración de la configuración: Administra la configuración de la instancia de Spanner, los recuentos de nodos y las implementaciones regionales.
Servicio de copia de seguridad y DR: Implementa una estrategia de recuperación ante desastres que incluya el almacenamiento de datos fuera de la instancia de Spanner (por ejemplo, en una región, instancia o almacenamiento externo independientes) para protegerte contra situaciones como la eliminación accidental de la instancia o la corrupción de datos.
(Opcional) Integración de flujos de cambios: Configuración y administración de trabajos de Dataflow o de otros consumidores que utilizan flujos de cambios de Spanner para la transmisión de eventos
Configuración de seguridad
Claves de encriptación administradas por el cliente (CMEK): Si se utilizan, se administran las claves y los permisos de Cloud Key Management Service (Cloud KMS) que se usan para encriptar los datos de Spanner.
Etiquetado de solicitudes y transacciones: Aplicar etiquetas a las búsquedas y transacciones para mejorar la observabilidad y la supervisión del rendimiento
Supervisión y alertas: Configurar y ajustar la supervisión personalizada, exportar métricas y configurar alertas para detectar la degradación del rendimiento o anomalías de seguridad
Resumen de responsabilidades
En la siguiente tabla, se resumen las responsabilidades compartidas para componentes operativos y de seguridad específicos:
| Componente | Nuestra responsabilidad | Tu responsabilidad |
|---|---|---|
| Acceso a los datos y a los usuarios | Aislamiento físico y protección del almacenamiento subyacente | Administración de IAM y FGAC Definir roles y privilegios de la base de datos |
| Seguridad de red | Rutas de red, firewalls y segmentación de la infraestructura de servicio de Spanner | Configurar la nube privada virtual (VPC), Private Service Connect y las reglas de red del cliente |
| Servicio de copia de seguridad y DR | Replicación multirregional y disponibilidad del servicio del 99.999% Funcionalidad de recuperación de un momento determinado (PITR). | Implementar una solución de recuperación ante desastres para almacenar datos fuera de la instancia principal de Spanner y administrar la conmutación por error de la aplicación a una base de datos nueva |
| Encriptación | Encriptación en reposo y en tránsito de forma predeterminada | Administrar y rotar las claves de CMEK, si se utilizan |
| Copias de seguridad | Administrar la infraestructura del servicio de copias de seguridad y garantizar la durabilidad de las copias de seguridad | Definir programas de copias de seguridad, administrar copias de seguridad y acceder a ellas, y copiar copias de seguridad a otras instancias o regiones |
| Instancia de Spanner | Aprovisionar y administrar la infraestructura subyacente | Configurar la cantidad y las ubicaciones de los nodos |
| Observabilidad | Proporcionar tablas del sistema (por ejemplo, SPANNER_SYS) para el diagnóstico |
Implementar la supervisión personalizada, aprovechar las etiquetas de solicitud o transacción y realizar la integración con herramientas de supervisión externas (por ejemplo, Prometheus y Grafana) |
| Aplicaciones cliente | Proporciona APIs y bibliotecas cliente de Spanner. | Desarrollar, implementar y proteger todas las aplicaciones cliente que interactúan con la base de datos |
| Administración de configuración | Verificar el uso en relación con las cuotas y presentar solicitudes según sea necesario Usar herramientas como Terraform para administrar recursos de bases de datos y de instancias |