Práticas recomendadas de segurança do Managed Service for Apache Spark

É fundamental proteger seu ambiente do Serviço Gerenciado para Apache Spark para proteger dados sensíveis e evitar acesso não autorizado. Este documento descreve as principais práticas recomendadas para melhorar sua postura de segurança do Serviço Gerenciado para Apache Spark, incluindo recomendações para segurança de rede, Identity and Access Management, criptografia e configuração segura de cluster.

Segurança de rede

  • Implante o Serviço Gerenciado para Apache Spark em uma VPC particular. Crie uma nuvem privada virtual dedicada para seus clusters do Serviço Gerenciado para Apache Spark, isolando-os de outras redes e da Internet pública.

  • Use IPs particulares. Para proteger seus clusters do Serviço Gerenciado para Apache Spark contra exposição à Internet pública, use endereços IP particulares para aumentar a segurança e o isolamento.

  • Configure regras de firewall. Implemente regras de firewall estritas para controlar o tráfego de e para seus clusters do Serviço Gerenciado para Apache Spark. Permita apenas as portas e protocolos necessários.

  • Use o peering de rede. Para aumentar o isolamento, estabeleça o peering de rede VPC entre sua VPC do Serviço Gerenciado para Apache Spark e outras VPCs sensíveis para comunicação controlada.

  • Ative o gateway de componentes. Ative o Gateway de componentes do Serviço gerenciado para Apache Spark ao criar clusters para acessar com segurança as interfaces do ecossistema Hadoop, como a UI do servidor YARN, HDFS ou Spark, em vez de abrir as portas do firewall.

Identity and Access Management

  • Isole as permissões. Use diferentes contas de serviço do plano de dados para clusters diferentes. Atribua às contas de serviço apenas as permissões que os clusters precisam para executar as cargas de trabalho.

  • Evite depender da conta de serviço padrão do Google Compute Engine (GCE). Não use a conta de serviço padrão para seus clusters.

  • Siga o princípio de privilégio mínimo. Conceda apenas as permissões mínimas necessárias às contas de serviço e aos usuários do Serviço Gerenciado para Apache Spark.

  • Aplique o controle de acesso baseado em papéis (RBAC). Considere definir permissões do IAM para cada cluster.

  • Use papéis personalizados. Crie papéis personalizados do IAM detalhados e adaptados a funções de trabalho específicas no ambiente do Serviço Gerenciado para Apache Spark.

  • Revise regularmente. Audite regularmente as permissões e os papéis do IAM para identificar e remover privilégios excessivos ou não utilizados.

Criptografia

  • Criptografar dados em repouso. Para criptografia de dados em repouso, use o Cloud Key Management Service (KMS) ou chaves de criptografia gerenciadas pelo cliente (CMEK). Além disso, use políticas organizacionais para aplicar a criptografia de dados em repouso para a criação de clusters.

  • Criptografar dados em trânsito. Ative o SSL/TLS para comunicação entre componentes do Serviço gerenciado para Apache Spark (ativando o Modo seguro do Hadoop) e serviços externos. Isso protege os dados em movimento.

  • Tenha cuidado com dados sensíveis. Tenha cuidado ao armazenar e transmitir dados sensíveis, como PII ou senhas. Quando necessário, use soluções de criptografia e gerenciamento de secrets.

Configuração segura do cluster

  • Autentique usando o Kerberos. Para evitar o acesso não autorizado aos recursos do cluster, implemente o modo seguro do Hadoop usando a autenticação Kerberos. Para mais informações, consulte Multilocação segura com o Kerberos.

  • Use uma senha raiz principal forte e um armazenamento seguro baseado no KMS. Para clusters que usam o Kerberos, o Serviço Gerenciado para Apache Spark configura automaticamente recursos de reforço da proteção para todos os componentes de código aberto em execução no cluster.

  • Ative o Login do SO. Ative o Login do SO para aumentar a segurança ao gerenciar nós do cluster usando SSH.

  • Separe os buckets de preparo e temporários no Google Cloud Storage (GCS). Para garantir o isolamento de permissões, separe os buckets de preparo e temporários de cada cluster do Serviço Gerenciado para Apache Spark.

  • Use o Secret Manager para armazenar credenciais. O Secret Manager pode proteger seus dados sensíveis, como chaves de API, senhas e certificados. Use-o para gerenciar, acessar e auditar seus secrets no Google Cloud.

  • Use restrições organizacionais personalizadas. É possível usar uma política organizacional personalizada para permitir ou negar operações específicas em clusters do Serviço Gerenciado para Apache Spark. Por exemplo, se uma solicitação para criar ou atualizar um cluster não atender à validação de restrição personalizada definida pela política da organização, a solicitação vai falhar e um erro será retornado ao autor da chamada.

A seguir

Saiba mais sobre outros recursos de segurança do Serviço Gerenciado para Apache Spark: