Ce document décrit une architecture Google Kubernetes Engine (GKE) type dans Google Cloud. Il répertorie également les bonnes pratiques de sécurité applicables aux charges de travail GKE.
Architecture
Le schéma suivant illustre les Google Cloud services dans un déploiement GKE type.
Ce schéma comprend les éléments suivants :
GKE est une implémentation gérée de la plate-forme d'orchestration de conteneurs Open Source Kubernetes qui vous permet d'exécuter des applications conteneurisées. Les clusters GKE incluent vos pods d'application et Policy Controller. Policy Controller vous permet d'appliquer des règles à vos clusters Kubernetes.
Artifact Registry simplifie le processus de développement et de déploiement de vos conteneurs et applications, améliore la collaboration et contribue à améliorer la sécurité et la fiabilité de vos applications.
Cloud Audit Logs suit les actions effectuées par vos utilisateurs dans votre environnement, ce qui améliore vos capacités de dépannage, d'audit et de réponse aux incidents.
Les tableaux de bord et les alertes Cloud Billing vous permettent de consulter l'utilisation et la facturation des charges de travail GKE.
Cloud Build vous permet de créer, de tester et de déployer une plate-forme CI/CD sans serveur sur Google Cloud.
Cloud Identity unifie l'identité, l'accès, les applications et la gestion pour Google Cloud.
Cloud Key Management Service crée et gère les clés de chiffrement.
Les fonctions Cloud Run automatisent les tâches, déclenchent des jobs, s'intègrent à d'autres services et créent des pipelines de développement axés sur les événements.
Cloud Service Mesh permet aux services Kubernetes de communiquer entre eux.
Cloud Storage stocke les données nécessaires à l'exécution de vos conteneurs et applications.
Cloud DNS enregistre, gère et diffuse votre domaine.
Identity and Access Management (IAM) contrôle qui peut effectuer des actions spécifiques sur les ressources de votre charge de travail GKE, telles que la création, la modification ou la suppression.
Le service de règles d'administration gère et applique de manière centralisée les règles dans votre Google Cloud environnement. Les règles d'administration permettent d'assurer une configuration cohérente et la conformité en matière de sécurité dans les projets et les ressources de votre organisation.
Pub/Sub permet une communication et une automatisation efficaces dans vos workflows.
Resource Manager vous aide à regrouper et à gérer les composants logiques de vos charges de travail GKE.
Secret Manager vous aide à protéger les données sensibles et les identifiants utilisés dans les projets GKE.
Security Command Center vous aide à protéger votre organisation cloud, vos charges de travail GKE et les données que vous stockez sur Google Cloud. Security Command Center fournit les éléments suivants :
- Gestion centralisée de la sécurité
- Détection des menaces et réponse aux incidents
- Évaluations de sécurité automatisées
- Rapports de conformité et réglementaires
- Recommandations et bonnes pratiques de sécurité
Le cloud privé virtuel (VPC) isole vos ressources GKE d'Internet dans un environnement sécurisé. Cette configuration réseau permet de protéger les données sensibles et les charges de travail contre les accès non autorisés et les cyberattaques potentielles.
Cloud VPN ou Cloud Interconnect vous permet d'établir une connexion réseau sécurisée entre votre infrastructure sur site et votre environnement GKE. Cloud VPN ou Cloud Interconnect permet un transfert de données et une communication fluides entre votre réseau privé et vos Google Cloud ressources. Envisagez cette intégration dans des scénarios tels que l'accès à des données sur site pour l'entraînement de modèles ou le déploiement de modèles sur des ressources sur site pour l'inférence.
Bonnes pratiques pour les charges de travail GKE
Cette section fournit des liens vers les bonnes pratiques pour les charges de travail qui utilisent GKE.
- Groupes d'utilisateurs et rôles IAM recommandés
Bonnes pratiques pour une base d'entreprise sécurisée
Bonnes pratiques d'authentification et d'autorisation
- Désactiver l'attribution de rôles automatique pour les comptes de service par défaut
- Bloquer la création de clés de compte de service externes
- Bloquer l'importation de clés de compte de service
- Configurer la séparation des tâches pour les administrateurs de règles d'administration
- Activer la validation en deux étapes pour les comptes super-administrateur
- Appliquer la validation en deux étapes à l'unité organisationnelle du super-administrateur
- Créer une adresse e-mail exclusive pour le super-administrateur principal
- Créer des comptes administrateur redondants
- Implémenter des tags pour attribuer efficacement des stratégies IAM et des règles d'administration
- Auditer les modifications à haut risque apportées à IAM
- Bloquer l'accès à Cloud Shell pour les comptes utilisateur gérés par Cloud Identity
- Configurer l'accès contextuel pour les consoles Google
- Bloquer l'auto-récupération de compte pour les comptes super-administrateur
- Désactiver les services Google inutilisés
Bonnes pratiques pour l'organisation
Bonnes pratiques de mise en réseau
Bonnes pratiques de journalisation, de surveillance et d'alerte
- Partager les journaux d'audit de Cloud Identity
- Utiliser les journaux d'audit
- Activer les journaux de flux VPC
- Activer la journalisation des règles de pare-feu
- Activer les journaux d'audit des accès aux données
- Activer l'audit de l'activité de l'administrateur
- S'abonner aux bulletins de sécurité
- Activer les journaux Access Transparency
- Exporter les données de facturation pour une analyse détaillée
Bonnes pratiques de gestion des clés et des secrets
- Chiffrer les données au repos dans Google Cloud
- Utiliser des algorithmes approuvés par le NIST pour le chiffrement et le déchiffrement
- Définir l'objectif des clés Cloud Key Management Service
- S'assurer que les paramètres CMEK sont appropriés pour les entrepôts de données BigQuery sécurisés
- Alterner les clés de chiffrement tous les 90 jours
- Configurer l'alternance automatique des secrets
- Limiter l'emplacement des clés de chiffrement gérées par le client
- Utiliser des clés CMEK pour les Google Cloud services
- Répliquer automatiquement les secrets
Bonnes pratiques en matière de stratégie de sécurité et d'analyse
Bonnes pratiques pour l'infrastructure
Bonnes pratiques de calcul
Bonnes pratiques pour les conteneurs
- Limiter l'accès au plan de contrôle
- Utiliser les règles de pare-feu selon le principe du moindre privilège
- Utiliser Google Groupes pour RBAC
- Activer les nœuds GKE protégés
- Utiliser Container-Optimized OS avec l'environnement d'exécution containerd
- Utiliser la fédération d'identité de charge de travail pour GKE
- Activer GKE Sandbox
- Désactiver le port accessible en lecture seule du kubelet
- Utiliser les espaces de noms et les autorisations RBAC pour limiter l'accès aux ressources du cluster
- Limiter le trafic entre les pods
- Utiliser des contrôleurs d'admission pour appliquer les règles
- Restreindre les capacités d'automodification des charges de travail
- Surveiller la configuration de vos clusters
- Appliquer l'autorisation binaire
Bonnes pratiques de gestion des données
Bonnes pratiques de stockage
- Bloquer l'accès public aux buckets Cloud Storage
- Utiliser l'accès uniforme au niveau du bucket
- Protéger les clés HMAC pour les comptes de service
- Détecter l'énumération des buckets Cloud Storage par les comptes de service
- S'assurer que la règle de conservation des bucket Cloud Storage utilise Bucket Lock
- Définir des règles de cycle de vie pour l'action SetStorageClass
- Définir les régions autorisées pour les classes de stockage
- Activer la gestion du cycle de vie pour les buckets Cloud Storage
- Examiner et évaluer les suspensions temporaires sur les objets actifs
- Appliquer des règles de conservation aux buckets Cloud Storage
- Appliquer des tags de classification aux buckets Cloud Storage
- Appliquer des buckets de journaux aux buckets Cloud Storage
- Configurer des règles de suppression pour les buckets Cloud Storage
- S'assurer que la condition isLive est définie sur False pour les règles de suppression
- Appliquer le contrôle des versions aux buckets Cloud Storage
- Appliquer des propriétaires aux buckets Cloud Storage
- Activer la journalisation des principales activités Cloud Storage
Bonnes pratiques pour les agents et les applications
Étape suivante
- Découvrez comment déployer une plate-forme de développement d'entreprise sur Google Cloud.