Managed Service pour Apache Spark vous permet de protéger les données sensibles et d'empêcher les accès non autorisés en appliquant des contrôles de sécurité clés. En appliquant les bonnes pratiques concernant la sécurité réseau, Identity and Access Management (IAM), le chiffrement et la configuration des clusters, vous pouvez maintenir votre stratégie de sécurité pour l'ensemble de vos charges de travail.
Sécurité réseau
Déployez Managed Service pour Apache Spark dans un VPC privé. Créez un cloud privé virtuel (VPC) dédié pour vos clusters Managed Service pour Apache Spark, en les isolant des autres réseaux et de l'Internet public.
Utiliser des adresses IP privées. Pour protéger vos clusters Managed Service pour Apache Spark contre l'exposition à l'Internet public, utilisez des adresses IP privées pour renforcer la sécurité et l'isolation.
Configurez des règles de pare-feu. Implémentez des règles de pare-feu strictes pour contrôler le trafic vers et depuis vos clusters Managed Service pour Apache Spark. N'autorisez que les ports et protocoles nécessaires.
Utilisez l'appairage de réseaux. Pour une meilleure isolation, établissez un appairage de réseaux VPC entre votre VPC Managed Service pour Apache Spark et d'autres VPC sensibles pour une communication contrôlée.
Activez la passerelle des composants. Activez la passerelle des composants Managed Service pour Apache Spark lorsque vous créez des clusters pour accéder de manière sécurisée aux interfaces utilisateur de l'écosystème Hadoop, telles que l'interface utilisateur du serveur YARN, HDFS ou Spark, au lieu d'ouvrir les ports du pare-feu.
IAM
Isoler les autorisations Utilisez différents comptes de service de plan de données pour différents clusters. N'attribuez aux comptes de service que les autorisations dont les clusters ont besoin pour exécuter leurs charges de travail.
Évitez d'utiliser le compte de service par défaut de Google Compute Engine (GCE). N'utilisez pas le compte de service par défaut pour vos clusters.
Respectez le principe du moindre privilège. N'accordez que les autorisations minimales nécessaires aux comptes de service et aux utilisateurs de Managed Service pour Apache Spark.
Appliquez le contrôle des accès basé sur les rôles (RBAC). Envisagez de définir des autorisations IAM pour chaque cluster.
Utiliser des rôles personnalisés Créez des rôles IAM personnalisés précis et adaptés à des fonctions spécifiques dans votre environnement Managed Service pour Apache Spark.
Examinez régulièrement les performances. Auditez régulièrement les autorisations et les rôles IAM pour identifier et supprimer les privilèges excessifs ou inutilisés.
Chiffrement
Chiffrer les données au repos. Pour le chiffrement des données au repos, utilisez Cloud Key Management Service (KMS) ou les clés de chiffrement gérées par le client (CMEK). Utilisez également des règles d'administration pour appliquer le chiffrement des données au repos lors de la création du cluster.
Chiffrer les données en transit. Activez SSL/TLS pour la communication entre les composants de Managed Service pour Apache Spark (en activant le mode sécurisé Hadoop) et les services externes. Cela protège les données en mouvement.
Faites attention aux données sensibles. Faites preuve de prudence lorsque vous stockez et transmettez des données sensibles telles que des informations permettant d'identifier personnellement l'utilisateur ou des mots de passe. Si nécessaire, utilisez des solutions de chiffrement et de gestion des secrets.
Configuration de cluster sécurisée
S'authentifier à l'aide de Kerberos Pour empêcher tout accès non autorisé aux ressources du cluster, implémentez le mode sécurisé Hadoop à l'aide de l'authentification Kerberos. Pour en savoir plus, consultez Sécuriser l'architecture mutualisée via Kerberos.
Utilisez un mot de passe principal racine sécurisé et un stockage sécurisé basé sur KMS. Pour les clusters qui utilisent Kerberos, Managed Service pour Apache Spark configure automatiquement les fonctionnalités de renforcement de la sécurité pour tous les composants Open Source exécutés dans le cluster.
Activez OS Login. Activez OS Login pour renforcer la sécurité lors de la gestion des nœuds de cluster à l'aide de SSH.
Séparez les buckets de préproduction et les buckets temporaires sur Google Cloud Storage (GCS). Pour garantir l'isolation des autorisations, séparez les buckets de préproduction et les buckets temporaires pour chaque cluster Managed Service pour Apache Spark.
Utilisez Secret Manager pour stocker les identifiants. Secret Manager peut protéger vos données sensibles, telles que vos clés API, vos mots de passe et vos certificats. Utilisez-le pour gérer, consulter et auditer vos secrets dans Google Cloud.
Utiliser des contraintes d'administration personnalisées Vous pouvez utiliser une règle d'administration personnalisée pour autoriser ou refuser des opérations spécifiques sur les clusters Managed Service pour Apache Spark. Par exemple, si une demande de création ou de mise à jour d'un cluster ne satisfait pas la validation des contraintes personnalisées définies par votre règle d'administration, la requête échoue et une erreur est renvoyée à l'appelant.
Étapes suivantes
En savoir plus sur les autres fonctionnalités de sécurité de Managed Service pour Apache Spark :
- Architecture mutualisée sécurisée via des comptes de service
- Configurer une Confidential VM avec chiffrement de la mémoire intégré
- Activer un service d'autorisation sur chaque VM du cluster