Esta página descreve como pode usar o serviço de deteção da proteção de dados confidenciais para determinar se existem segredos nas suas variáveis de ambiente do Cloud Run. A proteção de dados confidenciais comunica todas as conclusões ao Security Command Center como vulnerabilidades.
Acerca do Security Command Center
O Security Command Center é o serviço centralizado de relatórios de vulnerabilidades e ameaças do Google Cloud. O Security Command Center ajuda a reforçar a sua postura de segurança através da identificação de configurações incorretas, vulnerabilidades, observações e ameaças. Também fornece recomendações para investigar e corrigir as conclusões.
Por que motivo deve procurar segredos nas variáveis de ambiente
Armazenar segredos, como palavras-passe, em variáveis de ambiente não é uma prática segura porque as variáveis de ambiente não são encriptadas. Os respetivos valores podem ser recolhidos e expostos em vários sistemas, como registos. Recomendamos que use o Secret Manager para armazenar os seus segredos. Para mais informações, consulte a documentação do Cloud Run e das funções do Cloud Run sobre a configuração de segredos.
Como funciona
Para realizar a descoberta de segredos, crie uma configuração de análise de descoberta ao nível da organização ou do projeto. No âmbito selecionado, a Proteção de dados confidenciais analisa periodicamente o Cloud Run para detetar segredos nas variáveis de ambiente de compilação e de tempo de execução.
Se um segredo estiver presente numa variável de ambiente, a Proteção de dados confidenciais envia uma descoberta de vulnerabilidade Secrets in environment variables
para o Security Command Center. Não são gerados perfis de dados. Todas as conclusões só estão disponíveis
através do Security Command Center.
A Proteção de dados confidenciais gera um máximo de uma descoberta por recurso. Por exemplo, se forem encontrados segredos em duas variáveis de ambiente na mesma função do Cloud Run, apenas é gerada uma descoberta no Security Command Center.
No Security Command Center, pode ver Secrets in environment variables
descobertas
quando faz o seguinte:
- Reveja as conclusões da proteção de dados confidenciais
- Veja ou exporte um relatório de conformidade para a norma CIS 1.3 ou CIS 2.0.
O JSON seguinte mostra um exemplo de uma Secrets in environment variables
finding. Este exemplo mostra apenas os campos relevantes para esta funcionalidade; não
fornece uma lista exaustiva de
campos.
Segredos em variáveis de ambiente
{ "finding": { "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID", "category": "SECRETS_IN_ENVIRONMENT_VARIABLES", "compliances": [ { "standard": "cis", "version": "1.3", "ids": [ "1.18" ] } ], "createTime": "DATE_TIME", "description": "The affected resource is storing credentials or other secret information in its environment variables. This is a security vulnerability because environment variables are stored unencrypted, and accessible to all users who have access to the code.", "eventTime": "DATE_TIME", "findingClass": "VULNERABILITY", "findingProviderId": "organizations/ORGANIZATION_ID/firstPartyFindingProviders/dlp", "mute": "MUTE_STATUS", "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID", "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID", "parentDisplayName": "Sensitive Data Protection", "resourceName": "//cloudfunctions.googleapis.com/projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID", }, "resource": { "name": "//cloudfunctions.googleapis.com/projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID", "display_name": "projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID", "type": "google.cloudfunctions.CloudFunction", "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "project_display_name": "PROJECT_DISPLAY_NAME", "parent_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "parent_display_name": "PARENT_DISPLAY_NAME" } }
Latência de geração de resultados da pesquisa
Consoante a dimensão da sua organização, as conclusões da Proteção de dados confidenciais podem começar a ser apresentadas no Security Command Center alguns minutos após ativar a deteção de dados confidenciais. Para organizações maiores ou organizações com configurações específicas que afetam a geração de resultados, pode demorar até 12 horas antes de os resultados iniciais aparecerem no Security Command Center.
Posteriormente, a Proteção de dados confidenciais gera resultados no Security Command Center alguns minutos após o serviço de deteção analisar os seus recursos.
Tipos de segredos comunicados
Alguns exemplos de informações secretas são palavras-passe, tokens de autenticação e Google Cloud credenciais. Para ver uma lista completa dos tipos de segredos que a Proteção de dados confidenciais procura nesta funcionalidade, consulte o artigo Credenciais e segredos.
Recursos suportados
Para a deteção de segredos, o Sensitive Data Protection suporta funções do Cloud Run (incluindo as Cloud Functions de 1.ª geração) e revisões de serviços do Cloud Run.
Preços
Esta funcionalidade não está sujeita a encargos de proteção de dados confidenciais. Podem aplicar-se cobranças do Security Command Center, dependendo do seu nível de serviço. A proteção de dados confidenciais funciona com o Security Command Center em todos os níveis de serviço.
Residência dos dados
Quando cria uma configuração de análise pela primeira vez, especifica onde quer que o Sensitive Data Protection a armazene. Todas as configurações de análise subsequentes que criar são armazenadas nessa mesma região. A proteção de dados confidenciais exporta os metadados do Cloud Run para a região onde a configuração da análise está armazenada, mas a revisão da função ou do serviço em si não é exportada.
Se a Proteção de dados confidenciais detetar segredos em variáveis de ambiente, as descobertas são enviadas para o Security Command Center e estão sujeitas aos respetivos processos de tratamento de dados.
Funções de IAM necessárias
Para realizar a deteção de segredos, precisa das funções de gestão de identidade e de acesso necessárias para criar perfis de dados:
Para realizar a deteção de segredos ao nível da organização, consulte as funções necessárias para trabalhar com perfis de dados ao nível da organização.
Para realizar a deteção de segredos ao nível do projeto, consulte Funções necessárias para trabalhar com perfis de dados ao nível do projeto.
Além disso, precisa das funções adequadas para trabalhar com as descobertas do Security Command Center. Para mais informações, consulte o artigo IAM para ativações ao nível da organização na documentação do Security Command Center.
Antes de começar
Verifique o nível de ativação do Security Command Center para a sua organização. Para enviar perfis de dados para o Security Command Center, tem de ter o Security Command Center ativado ao nível da organização em qualquer nível de serviço. Para mais informações, consulte o artigo Ative o Centro de Comando de Segurança para uma organização.
Se o Security Command Center estiver ativado apenas ao nível do projeto, as conclusões da Proteção de dados confidenciais não aparecem no Security Command Center.
No Security Command Center, certifique-se de que a Proteção de dados confidenciais está ativada como um serviço integrado. Para mais informações, consulte o artigo Adicione um serviço Google Cloud integrado.
Configure a descoberta de segredos ao nível da organização
Execute estes passos se quiser ativar a deteção de segredos numa organização inteira. Para a descoberta ao nível do projeto, consulte o artigo Configure a descoberta de segredos ao nível do projeto.
Se não tiver a função de administrador da organização (roles/resourcemanager.organizationAdmin
) ou administrador de segurança (roles/iam.securityAdmin
), pode continuar a criar uma configuração de análise. No entanto, depois de criar a configuração da análise, alguém com uma dessas funções tem de conceder acesso à deteção ao seu agente de serviço.
Aceda à página Criar configuração de análise.
Aceda à sua organização. Na barra de ferramentas, clique no seletor de projetos e selecione a sua organização.
Após cada passo nesta página, clique em Continuar.
Em Selecione um tipo de descoberta, selecione Vulnerabilidades de segredos/credenciais.
Em Selecionar âmbito, selecione se quer analisar toda a organização.
Para Gerir o contentor do agente de serviço e a faturação, especifique o projeto a usar como um contentor do agente de serviço. Pode fazer com que a Proteção de dados confidenciais crie automaticamente um novo projeto ou escolher um projeto existente.
Se não tiver um projeto para usar como contentor de agente de serviço, selecione Criar um novo projeto como contentor de agente de serviço. A Proteção de dados confidenciais cria um novo projeto denominado DLP Service Agent Container. O agente de serviço neste projeto vai ser usado para autenticar no serviço de proteção de dados confidenciais e noutras APIs. O sistema pede-lhe que selecione a conta a faturar para todas as operações faturáveis relacionadas com este projeto, incluindo operações que não estão relacionadas com a deteção.
Se não tiver as autorizações necessárias para criar projetos, a opção Criar um novo projeto como contentor de agente de serviço está desativada. Neste caso, tem de selecionar um projeto existente ou pedir ao seu administradorGoogle Cloud
roles/resourcemanager.projectCreator
que lhe conceda a função de criador de projetos.Se tiver um contentor de agente de serviço existente que quer reutilizar, selecione Selecionar um contentor de agente de serviço existente. Em seguida, clique em Procurar para selecionar o ID do projeto do contentor do agente de serviço.
Em Definir localização para armazenar a configuração, selecione a região onde quer armazenar esta configuração de análise. Todas as configurações de análise que criar posteriormente também são armazenadas nesta localização. Para ver informações sobre considerações de residência de dados, consulte a secção Residência de dados nesta página.
Opcional: se não quiser que a análise comece pouco depois de criar a configuração da análise, selecione Criar análise no modo pausado.
Esta opção é útil nos seguintes casos:
- O seu Google Cloud administrador ainda tem de conceder acesso à descoberta ao agente de serviço.
- Quiser criar várias configurações de análise e quiser que algumas configurações substituam outras.
Clique em Criar.
A proteção de dados confidenciais começa a analisar as variáveis de ambiente do Cloud Run pouco depois de criar uma configuração de análise ou retomar uma configuração pausada. Para obter informações sobre o tempo que as conclusões demoram a aparecer no Security Command Center, consulte a secção Latência de geração de conclusões nesta página.
Se não tiver a função de administrador da organização (roles/resourcemanager.organizationAdmin
) ou administrador de segurança (roles/iam.securityAdmin
), alguém com uma dessas funções tem de conceder acesso à deteção ao seu agente de serviço antes de a deteção poder começar.
Configure a descoberta de segredos ao nível do projeto
Execute estes passos se quiser ativar a descoberta de segredos para um único projeto. Para a descoberta ao nível da organização, consulte o artigo Configure a descoberta de segredos ao nível da organização.
Aceda à página Criar configuração de análise.
Aceda ao seu projeto. Na barra de ferramentas, clique no seletor de projetos e selecione o seu projeto.
Após cada passo nesta página, clique em Continuar.
Em Selecione um tipo de descoberta, selecione Vulnerabilidades de segredos/credenciais.
Em Selecionar âmbito, certifique-se de que a opção Analisar projeto inteiro está selecionada. Se não estiver selecionada, certifique-se de que está na vista de projeto.
Em Definir localização para armazenar a configuração, selecione a região onde quer armazenar esta configuração de análise. Todas as configurações de análise que criar posteriormente também são armazenadas nesta localização. Para ver informações sobre considerações de residência de dados, consulte a secção Residência de dados nesta página.
Clique em Criar.
A proteção de dados confidenciais começa a analisar as variáveis de ambiente do Cloud Run pouco depois de criar uma configuração de análise ou retomar uma configuração pausada. Para obter informações sobre o tempo que as conclusões demoram a aparecer no Security Command Center, consulte a secção Latência de geração de conclusões nesta página.
Consulta para entradas de Secrets in environment variables
Seguem-se exemplos de consultas que pode usar para encontrar Secrets in
environment variables
resultados no Security Command Center. Pode introduzir estas consultas no campo Editor de consultas. Para mais informações sobre o editor de consultas, consulte o artigo Edite uma consulta de resultados no painel de controlo do Security Command Center.
Apresente todas as conclusões de Secrets in environment variables
state="ACTIVE"
AND NOT mute="MUTED"
AND category="SECRETS_IN_ENVIRONMENT_VARIABLES"
Apresenta todas as descobertas Secrets in environment variables
de um projeto específico
state="ACTIVE"
AND NOT mute="MUTED"
AND category="SECRETS_IN_ENVIRONMENT_VARIABLES"
AND resource.project_name="//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
Substitua o seguinte:
- PROJECT_NUMBER: o ID numérico do projeto para o qual quer enviar uma consulta