Modèle de responsabilité partagée de Spanner

Spanner est un service de base de données multimodèle entièrement géré et distribué à l'échelle mondiale, conçu pour offrir une haute disponibilité et une évolutivité extrême. En tant que service géré sur Google Cloud, les responsabilités en termes de sécurité et de résilience opérationnelle sont partagées entre vous et Google.

Ce document décrit la répartition des responsabilités pour assurer la sécurité, la conformité et le fonctionnement de vos instances et données Spanner.

Présentation du modèle de responsabilité partagée

Dans un modèle de responsabilité partagée, Google gère la sécurité du service Spanner, de l'infrastructure et du réseau mondial sous-jacent, tandis que le client est responsable de la sécurité et de la gestion dans l'instance Spanner, y compris des données, de l'accès aux applications et de la configuration.

Domaine de responsabilité Google Cloud Vous
Infrastructure IA responsable Non responsable
Configuration et sécurité des services Partagé Partagé
Accès aux données et aux applications Non responsable IA responsable

Responsabilités de Google

Google est responsable de la protection de l'infrastructure qui exécute le service Spanner. Cela inclut les composants physiques, matériels, réseau et opérationnels.

Infrastructure et disponibilité mondiale

  • Sécurité physique : sécurisation des régions, zones et centres de données physiques mondiaux où réside l'infrastructure Spanner.

  • Mise en réseau : fournit le réseau sécurisé et fiable nécessaire à la cohérence et à la réplication mondiales de Spanner.

  • Matériel et logiciel : gestion du matériel, des systèmes d'exploitation hôtes et du logiciel de service Spanner lui-même. Cela inclut les correctifs, la maintenance et les mises à jour automatiques.

Gestion et résilience des services

  • Haute disponibilité et évolutivité : garantit un contrat de niveau de service de 99, 999 % (pour les configurations multirégionales) en gérant automatiquement la mise à l'échelle, la réplication et le basculement dans les régions et les zones. Spanner est conçu pour un temps d'arrêt planifié nul. Une instance Spanner peut être exclue du contrat de niveau de service (SLA) Spanner si des configurations contrôlées par l'utilisateur entraînent une panne. Pour afficher ces configurations, consultez les consignes opérationnelles de Spanner.

  • Durabilité : garantir la durabilité des données, y compris des sauvegardes stockées dans le système Spanner.

  • Intégrité du logiciel de base de données : création, maintenance et mise à jour du logiciel Spanner.

Conformité et protection des données

  • Chiffrement au repos et en transit : garantit que les données sont chiffrées par défaut.

  • Résidence des données : vous permet de gérer l'emplacement des données dans des régions ou configurations spécifiques (par exemple, birégionale, multirégionale).

  • Opérations Google Cloud Dedicated : pour les déploiements Google Cloud Dedicated, Google fournit l'infrastructure, la version logicielle et les mises à jour. Nos partenaires locaux de confiance exploitent et prennent en charge les services cloud. Google peut fournir une assistance de niveau 2 aux partenaires pour effectuer la maintenance et résoudre les problèmes.

Vos responsabilités

Lorsque vous utilisez Spanner, vous conservez le contrôle principal de vos données, de votre configuration, de la gestion des accès et du développement d'applications.

Gestion des données et des schémas

  • Contenu et sécurité des données : responsabilité du contenu des données stockées dans Spanner, y compris leur sensibilité, leur conformité réglementaire et leur intégrité.

  • Conception et optimisation du schéma : définition et gestion du schéma de la base de données, y compris la création de tables et d'index, et la gestion des tables imbriquées pour améliorer les performances.

  • Optimisation des requêtes : conception de requêtes efficaces pour garantir les performances et gérer l'allocation des ressources. Par exemple, il est essentiel de gérer les étendues de transaction et de comprendre le comportement de verrouillage.

Gestion des accès et des identités

  • Configuration IAM : définition et gestion des rôles et autorisations IAM (Identity and Access Management) pour les principaux (utilisateurs et comptes de service) accédant à l'instance et aux bases de données Spanner.

  • Contrôle précis des contrôle des accès (FGAC) : si le client l'implémente, il est responsable de la définition, de la gestion et de la réattribution de l'accès aux rôles et aux privilèges de la base de données.

  • Journaux d'audit : surveillez et analysez Cloud Audit Logs pour suivre les accès et les actions effectués sur l'instance et les données Spanner.

Résilience opérationnelle et reprise après sinistre

  • Gestion de la configuration : gestion de la configuration de l'instance Spanner, du nombre de nœuds et des déploiements régionaux.

  • Service de sauvegarde et de reprise après sinistre : mettez en œuvre une stratégie de reprise après sinistre qui inclut le stockage des données en dehors de l'instance Spanner elle-même (par exemple, dans une région, une instance ou un stockage externe distincts) pour vous protéger contre des scénarios tels que la suppression accidentelle de l'instance ou la corruption des données.

  • (Facultatif) Intégration des flux de modifications : configurez et gérez les jobs Dataflow ou d'autres consommateurs qui utilisent les flux de modifications Spanner pour le streaming d'événements.

Configuration de la sécurité

  • Clés de chiffrement gérées par le client (CMEK) : si elles sont utilisées, elles permettent de gérer les clés et les autorisations Cloud Key Management Service (Cloud KMS) utilisées pour chiffrer les données Spanner.

  • Taggage des requêtes et des transactions : application de tags aux requêtes et aux transactions pour améliorer l'observabilité et la surveillance des performances.

  • Surveillance et alertes : configurer et ajuster la surveillance personnalisée, exporter des métriques et configurer des alertes pour détecter la dégradation des performances ou les anomalies de sécurité.

Résumé des responsabilités

Le tableau suivant récapitule les responsabilités partagées pour des composants opérationnels et de sécurité spécifiques :

Composant Notre responsabilité Votre responsabilité
Données et accès utilisateur Isolement physique et protection du stockage sous-jacent. Gestion de l'IAM et de FGAC. Définir les rôles et les droits d'accès à la base de données.
Sécurité du réseau Chemins réseau, pare-feu et segmentation de l'infrastructure du service Spanner. Configurer le cloud privé virtuel (VPC), Private Service Connect et les règles réseau côté client.
Service de sauvegarde et de reprise après sinistre Réplication multirégionale et disponibilité du service à 99,999 %. Fonctionnalité de récupération à un moment précis (PITR). Implémenter une solution de reprise après sinistre pour stocker les données en dehors de l'instance Spanner principale et gérer le basculement des applications vers une nouvelle base de données.
Chiffrement Chiffrement au repos et en transit par défaut. Gérez et faites tourner les clés CMEK, si vous en utilisez.
Sauvegardes Gérer l'infrastructure du service de sauvegarde et assurer la durabilité des sauvegardes. Définir des plannings de sauvegarde, gérer les sauvegardes et y accéder, et copier les sauvegardes vers d'autres instances/régions.
Instance Spanner Provisionner et gérer l'infrastructure sous-jacente. Configurer le nombre et l'emplacement des nœuds
Observabilité Fournir des tables système (par exemple, SPANNER_SYS) pour les diagnostics. Implémenter une surveillance personnalisée, tirer parti des tags de requête/transaction et s'intégrer à des outils de surveillance externes (par exemple, Prometheus et Grafana).
Applications clientes Fournir des bibliothèques clientes et des API Spanner. Développer, déployer et sécuriser toutes les applications clientes qui interagissent avec la base de données.
Gestion de la configuration Vérifier l'utilisation par rapport aux quotas et envoyer des demandes si nécessaire Utiliser des outils tels que Terraform pour gérer les ressources de base de données et d'instance.