Cette page explique comment auditer automatiquement vos clusters pour détecter les problèmes de conformité et obtenir des recommandations exploitables pour améliorer la conformité de vos clusters Google Kubernetes Engine (GKE) Enterprise. L'audit de conformité est une fonctionnalité du tableau de bord GKE Compliance. Pour en savoir plus, consultez la page À propos du tableau de bord GKE Compliance.
Normes de conformité acceptées
L'audit de conformité analyse vos clusters pour vérifier la conformité avec les normes suivantes et fournit des recommandations pour améliorer votre stratégie de conformité :
Nom |
Description |
Benchmark CIS Google Kubernetes Engine v1.5.0 |
Ensemble de contrôles de sécurité recommandés pour la configuration de Google Kubernetes Engine (GKE), en fonction des benchmarks CIS Google Kubernetes Engine (GKE) v1.5.0. |
Référence des normes de sécurité des pods |
Un ensemble de protections recommandées pour les clusters Kubernetes, en fonction de la règle des normes limitées de sécurité des pods (PSS) de Kubernetes. |
Normes limitées de sécurité des pods |
Un ensemble de protections recommandées pour les clusters Kubernetes, en fonction de la règle des normes limitées de sécurité des pods (PSS) de Kubernetes. |
Tarifs
Le tableau de bord GKE Compliance est disponible pour les utilisateurs qui ont activé GKE Enterprise.
Avant de commencer
Avant de commencer, effectuez les tâches suivantes :
Activez l'API Container Security.
Conditions requises
Pour obtenir les autorisations nécessaires pour utiliser l'audit de conformité, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet Google Cloud :
-
Lecteur de sécurité des conteneurs (
roles/containersecurity.viewer
) -
Lecteur de parc (anciennement lecteur GKE Hub) (
roles/gkehub.viewer
)
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ces rôles prédéfinis contiennent les autorisations requises pour utiliser l'audit de conformité. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Vous devez disposer des autorisations suivantes pour utiliser l'audit de conformité :
-
resourcemanager.projects.get
-
resourcemanager.projects.list
-
containersecurity.locations.list
-
containersecurity.locations.get
-
containersecurity.clusterSummaries.list
-
containersecurity.findings.list
-
container.clusters.list
-
gkehub.features.get
-
gkehub.memberships.list
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Auditer la conformité du cluster
Vous pouvez activer l'audit de conformité sur votre cluster à l'aide de la console Google Cloud.
Activer l'audit de configuration sur un cluster existant
Accédez à la page Conformité dans la console Google Cloud.
Dans la fiche Paramètres, cliquez sur Sélectionner des clusters.
Dans l'onglet Audit désactivé, cochez les cases correspondant aux clusters que vous souhaitez ajouter.
Cliquez sur Activer pour activer l'audit sur ces clusters.
Tester l'audit de conformité
Déployez un exemple de pod qui enfreint intentionnellement les normes de sécurité des pods
Enregistrez le manifeste suivant sous le nom
noncompliant-sample.yaml
:apiVersion: v1 kind: Pod metadata: namespace: default name: wp-non-compliant labels: app: wordpress spec: containers: - image: nginx name: wordpress securityContext: capabilities: add: - NET_RAW
Appliquez la ressource à votre cluster :
kubectl apply -f noncompliant-sample.yaml
Si vous souhaitez essayer d'autres violations, modifiez noncompliant-sample.yaml
avec une autre configuration non conforme.
Afficher et résoudre les problèmes de conformité
L'audit initial peut prendre jusqu'à 30 minutes pour renvoyer des résultats. Vous pouvez afficher les résultats sur la page Conformité ou sous forme d'entrées dans vos journaux de cluster.
Afficher les résultats
Pour afficher une vue d'ensemble des problèmes de conformité sur les clusters de votre projet, procédez comme suit :
Accédez à la page Conformité dans la console Google Cloud.
Cliquez sur l'onglet Problèmes.
Dans la section Standards du volet Filtrer les problèmes, sélectionnez la norme pour laquelle vous souhaitez obtenir des détails.
Afficher les informations et les recommandations standards
Pour afficher des informations détaillées sur une norme spécifique, développez la section "standard" jusqu'à ce que le lien de description s'affiche, puis cliquez sur la description du standard pour ouvrir le volet Contrainte de conformité.
L'onglet Détails affiche les informations suivantes :
- Description : description de la norme.
- Action recommandée : présentation des actions que vous pouvez effectuer pour résoudre le problème de configuration.
L'onglet Ressources concernées répertorie les ressources concernées par la norme.
Afficher les journaux pour les problèmes détectés
Pour les problèmes de conformité détectés, vous pouvez afficher une entrée correspondante dans Logging.
Accédez à l'explorateur de journaux dans la console Google Cloud.
Dans le champ Requête, saisissez la requête suivante :
resource.type="k8s_cluster" jsonPayload.@type="type.googleapis.com/cloud.kubernetes.security.containersecurity_logging.Finding" jsonPayload.type="FINDING_TYPE_MISCONFIG" jsonPayload.configuration.violation:*
Cliquez sur Exécuter la requête.
Pour recevoir des notifications lorsque GKE ajoute de nouvelles découvertes à Logging, configurez des alertes basées sur les journaux pour cette requête. Pour en savoir plus, consultez la page Gérer les alertes basées sur les journaux.
Effectuer un nettoyage
Supprimez l'exemple de pod que vous avez déployé :
kubectl delete pod wp-non-compliant
Désactiver les audits de conformité
Vous pouvez désactiver l'audit de conformité à l'aide de la console Google Cloud.
Accédez à la page Conformité dans la console Google Cloud.
Dans la fiche "Paramètres", cliquez sur Sélectionner des clusters.
Dans l'onglet Audit activé, cochez les cases correspondant aux clusters que vous souhaitez retirer.
Cliquez sur Désactiver pour désactiver l'audit sur ces clusters.
Limites
- Les pools de nœuds Windows Server ne sont pas acceptés.
- L'audit de conformité n'analyse pas les charges de travail gérées par GKE, telles que les charges de travail de l'espace de noms kube-system.
- L'audit de conformité n'est disponible que pour les clusters de moins de 1 000 nœuds.