Resolver negações de acesso com sugestões de correção

É possível usar as sugestões de correção do VPC Service Controls para diagnosticar e resolver negações de acesso causadas por perímetros de serviço.

Quando o VPC Service Controls nega uma solicitação de acesso, o mecanismo de correção analisa o evento de violação e gera recomendações práticas e de escopo restrito. Com essas sugestões, você pode conceder o acesso necessário e seguir o princípio de privilégio mínimo.

Como as sugestões de correção funcionam

As sugestões de correção são integradas diretamente ao analisador de violações no console doGoogle Cloud . Ao diagnosticar uma negação de acesso usando um ID exclusivo ou um token de solução de problemas, o mecanismo de correção avalia o contexto da violação e propõe mudanças de configuração com base no tipo de violação:

  • Violações de entrada: o mecanismo propõe uma regra de entrada com escopo e, se aplicável, permite selecionar um nível de acesso existente que satisfaça o contexto da solicitação (recomendado) ou criar um novo nível de acesso baseado no contexto (como sub-redes IP, regiões geográficas e requisitos de política de dispositivo) para autorizar o chamador.
  • Violações de saída: o mecanismo propõe uma regra de saída com escopo que especifica a identidade de origem e os recursos ou operações de destino fora do perímetro.
  • Violações de serviços acessíveis por VPC: o mecanismo sugere adicionar o serviço solicitado à lista de permissões ou atualizar as restrições de perímetro.

Uma única negação de acesso pode envolver vários tipos de violação, como uma combinação de violações de entrada, saída e serviços acessíveis por VPC. Nesses casos, o mecanismo de correção gera sugestões que abordam todas as violações aplicáveis. Você pode analisar as mudanças de configuração geradas e aplicá-las diretamente ao perímetro de serviço com um único clique.

Antes de começar

Funções exigidas

Para receber as permissões necessárias para ver e aplicar sugestões de correção, peça ao administrador para conceder a você os seguintes papéis do IAM:

  • Diagnosticar um evento de negação de acesso e conferir sugestões de correção: Leitor do Access Context Manager (roles/accesscontextmanager.policyReader) na sua política de acesso
  • Extraia tokens de solução de problemas dos registros de auditoria do Cloud: Visualizador de registros (roles/logging.viewer) nos projetos que contêm registros de auditoria do VPC Service Controls.
  • Aplique sugestões de correção e atualize os perímetros de serviço: Editor do Access Context Manager (roles/accesscontextmanager.editor) na sua política de acesso

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para ver e aplicar sugestões de correção. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para conferir e aplicar sugestões de correção:

  • Diagnosticar um evento de negação de acesso e ver sugestões de correção:
    • accesscontextmanager.accessLevels.list na sua política de acesso
    • accesscontextmanager.policies.get na sua política de acesso
    • accesscontextmanager.servicePerimeters.list na sua política de acesso
  • Extraia tokens de solução de problemas dos registros de auditoria do Cloud: logging.logEntries.list nos projetos que contêm registros de auditoria do VPC Service Controls.
  • Aplique sugestões de correção e atualize os perímetros de serviço:
    • accesscontextmanager.accessLevels.create na sua política de acesso
    • accesscontextmanager.accessLevels.get na sua política de acesso
    • accesscontextmanager.accessLevels.list na sua política de acesso
    • accesscontextmanager.policies.get na sua política de acesso
    • accesscontextmanager.servicePerimeters.get na sua política de acesso
    • accesscontextmanager.servicePerimeters.update na sua política de acesso

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Conferir e aplicar sugestões de correção

Para conferir e aplicar sugestões de correção a uma negação de acesso, siga estas etapas:

  1. No console do Google Cloud , acesse a página VPC Service Controls.

    Acessar o VPC Service Controls

    Se solicitado, selecione a organização.

  2. Na página VPC Service Controls, clique em Analisador de violações.

  3. No campo Token de solução de problemas (ou ID exclusivo), insira o token de solução de problemas ou o ID exclusivo da negação de acesso.

  4. Clique em Continuar.

  5. Na página de resultados da solução de problemas, em Recursos protegidos acessados, selecione o perímetro que negou o acesso.

  6. Clique em Analisar recomendação. O painel Detalhes da correção é aberto.

  7. Revise as ações de correção propostas:

    • Se a correção exigir um nível de acesso, configure-o:
      • Selecione um nível de acesso atual (recomendado): clique na guia Nível de acesso atual e selecione um nível de acesso que atenda ao contexto da solicitação na lista Selecionar um nível de acesso atual.
      • Criar um nível de acesso: na guia Novo nível de acesso, revise o nome sugerido para o nível de acesso, as sub-redes IP, as regiões geográficas e as restrições de dispositivo.
    • Analise as mudanças propostas na regra de entrada, na regra de saída ou nos serviços acessíveis por VPC para o perímetro de serviço.
  8. Para aplicar as mudanças sugeridas, clique em Aplicar correção.

O VPC Service Controls provisiona automaticamente o novo nível de acesso (se você optou por criar um) e atualiza a configuração do perímetro de serviço.

Medidas corretivas por tipo de violação

A tabela a seguir descreve as ações que o mecanismo de correção propõe com base no tipo de violação:

Tipo de violação Ação de correção sugerida
Violação de entrada
  • Permite selecionar um nível de acesso atual que corresponda ao contexto da solicitação (recomendado) ou provisionar um novo nível de acesso baseado no contexto que corresponda às sub-redes IP, regiões geográficas ou política de dispositivo do autor da chamada.
  • Adiciona uma regra de entrada com escopo para a identidade do chamador, o nível de acesso ou a rede de origem, o serviço de destino, os seletores de método e o recurso.
Violação de saída Adiciona uma regra de saída no escopo da identidade ou do projeto de origem e do serviço de destino, seletores de método e recurso externo.
Serviços acessíveis pelo VPC Adiciona o serviço restrito à lista de permissões de serviços acessíveis por VPC do perímetro ou sugere a atualização das restrições se o serviço não for compatível.

Exemplo: correção de entrada com um nível de acesso

Considere uma negação de acesso em que um analista (analyst@example.com) tenta ler um objeto de um bucket do Cloud Storage no projeto 803311519563 de uma estação de trabalho externa (198.51.100.42).

Para corrigir essa negação de acordo com o privilégio mínimo, o mecanismo de correção propõe duas ações encadeadas:

Ação 1: selecionar um nível de acesso ou criar um nível de acesso com escopo

Para autorizar a estação de trabalho do autor da chamada, reutilize um nível de acesso atual ou crie um novo:

  • Selecione um nível de acesso atual (recomendado): na guia Nível de acesso atual, escolha um nível de acesso que já corresponda ao contexto da solicitação (por exemplo, corp_trusted_workstations). Recomendamos reutilizar um nível de acesso atual para evitar a criação de níveis duplicados e simplificar o gerenciamento de políticas.
  • Criar um nível de acesso: como alternativa, na guia Novo nível de acesso, você pode deixar o mecanismo criar um nível de acesso no escopo da estação de trabalho do autor da chamada:
    • Nome: accessPolicies/POLICY_ID/accessLevels/analyst_secure_workstation
    • Sub-redes de IP: 198.51.100.0/24
    • Regiões: US
    • Política do dispositivo: exige bloqueio de tela, criptografia de disco, status de propriedade da empresa e aprovação do administrador.

Ação 2: adicionar uma regra de entrada com escopo ao perímetro

O mecanismo anexa uma regra de entrada de escopo restrito ao perímetro de serviço que faz referência ao nível de acesso selecionado ou ao nível de acesso recém-criado:

  • Identidades: user:analyst@example.com
  • Fontes: seu nível de acesso selecionado (por exemplo, corp_trusted_workstations) ou o novo nível de acesso analyst_secure_workstation
  • Serviço: storage.googleapis.com
  • Seletores de método: google.storage.objects.get
  • Recursos: projects/803311519563

Quando você clica em Aplicar correção, o VPC Service Controls aplica o nível de acesso selecionado (ou cria um novo) e atualiza o perímetro de serviço em sequência.

Limitações

  • Descarte de dados sensíveis:
    • Os endereços IP internos redigidos não podem ser usados para gerar níveis de acesso específicos.
    • Se as identidades do autor da chamada forem editadas ou não estiverem disponíveis nos registros de auditoria, as sugestões poderão usar identidades genéricas, como ANY_USER_ACCOUNT.
    • Se os métodos de serviço não tiverem suporte granular, as sugestões poderão usar um curinga (*).
    • Se os nomes de rede estiverem inacessíveis, as sugestões vão usar os números do projeto.
  • As sugestões de correção exigem detalhes de negação de acesso dos Registros de auditoria do Cloud. Não é possível analisar eventos mais antigos que o período de armazenamento de registros (30 dias por padrão).
  • As sugestões de correção estão disponíveis apenas no nível da organização no console do Google Cloud .
  • Padrões de serviço e algumas configurações de pool de identidade da força de trabalho de terceiros não são compatíveis com o mecanismo de correção.

A seguir