Gerenciar uma postura de segurança

Esta página descreve como configurar e usar o serviço de postura de segurança depois de ativar o Security Command Center. Para começar, crie uma postura que inclua suas políticas organizadas em conjuntos de políticas e, em seguida, implante a postura usando uma implantação de postura. Depois que uma postura é implantada, você pode monitorar a deriva e refinar ainda mais a postura ao longo do tempo.

Antes de começar

Conclua estas tarefas antes de concluir as demais tarefas desta página.

Ativar o nível Premium ou Enterprise do Security Command Center

Verifique se o nível Premium ou Enterprise do Security Command Center está ativado no nível da organização.

Se você quiser usar os detectores do Security Health Analytics como políticas, selecione o serviço do Security Health Analytics durante o processo de ativação.

Configurar permissões

Para receber as permissões necessárias para usar a postura, peça ao administrador para conceder a você o papel do IAM de Administrador de postura de segurança (roles/securityposture.admin). Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

Para mais informações sobre papéis e permissões de postura de segurança, consulte IAM para ativações no nível da organização.

Configurar a Google Cloud CLI

É necessário usar a Google Cloud CLI versão 461.0.0 ou mais recente.

In the Google Cloud console, activate Cloud Shell.

Activate Cloud Shell

At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

Para configurar a CLI da gcloud para usar a representação da conta de serviço para autenticação nas APIs do Google, em vez de suas credenciais de usuário, execute o seguinte comando:

gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL

Para mais informações, consulte Identidade temporária de conta de serviço.

Ativar APIs

Ative o serviço de política da organização e as APIs do serviço de postura de segurança:

gcloud services enable orgpolicy.googleapis.com  securityposture.googleapis.com

Configurar a conexão com a AWS

Para usar detectores integrados do Security Health Analytics específicos da AWS, é necessário ativar o Security Command Center Enterprise e se conectar à AWS para a detecção de vulnerabilidades.

Criar e implantar uma postura

Para começar a usar uma postura de segurança, faça o seguinte:

  • Crie um arquivo YAML de postura que defina as políticas aplicáveis à sua postura de segurança.
  • Crie uma postura no Google Cloud com base no arquivo YAML de postura.
  • Implante a postura.

As seções a seguir fornecem instruções detalhadas.

Criar um arquivo YAML de postura

Uma postura consiste em um ou mais conjuntos de políticas que você implanta juntos. Esses conjuntos de políticas incluem todas as políticas preventivas e de detecção que você quer incluir na postura.

Para criar sua postura, faça o seguinte:

Para detalhes sobre os campos que podem ser usados em uma postura, consulte a referência Posture e a referência PolicySet.

Criar um arquivo de postura a partir de um modelo predefinido

Você pode usar um modelo de postura predefinido para criar um arquivo de postura.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Modelos, clique no modelo que você quer usar.

  4. Na página Detalhes do modelo, clique em Criar postura.

  5. Dê um nome exclusivo à postura e clique em Criar. A página Detalhes da postura é aberta.

  6. Conclua uma das seguintes ações:

gcloud

  1. Revise os modelos de postura predefinidos para determinar quais deles se aplicam ao seu ambiente. É possível aplicar algumas delas sem fazer mudanças, mas outras exigem que você personalize as políticas para corresponder ao seu ambiente.
  2. Use um dos seguintes métodos para copiar os arquivos YAML no seu próprio editor de texto:

    • Copie o arquivo YAML do conteúdo de referência em modelos de postura predefinidos.
    • Execute o comando gcloud scc posture-templates describe para copiar o arquivo YAML.
    gcloud scc posture-templates describe \
        organizations/ORGANIZATION_ID/locations/LOCATION/postureTemplates/POSTURE_TEMPLATE \
        --revision-id=REVISION_ID
    
    gcloud scc posture-templates describe \
    organizations/ORGANIZATION_ID/locations/global/postureTemplates/POSTURE_TEMPLATE \
    --revision-id=REVISION_ID

    Substitua os seguintes valores:

    • ORGANIZATION_ID é a organização em que você ativou o nível Premium ou Enterprise do Security Command Center.
    • LOCATION é o local em que você quer implantar e armazenar a postura. O único local compatível é global.
    • POSTURE_TEMPLATE é o nome do modelo da postura predefinida, conforme descrito em Modelos de postura predefinidos.
    • REVISION_ID é a versão de revisão da postura predefinida. Se você não incluir o ID da revisão, a versão mais recente da postura predefinida será exibida.

    Por exemplo, para conferir a IA segura, confira a postura predefinida de elementos essenciais na organização 3589215982, execute o seguinte:

    gcloud scc posture-templates describe \
        organizations/3589215982/locations/global/postureTemplates/secure_ai_essential \
        --revision-id=v.1.0
    
  3. Conclua uma das seguintes ações:

    • Se você puder usar a postura sem fazer nenhuma mudança (por exemplo, se você usou um dos modelos _essentials), crie a postura. Para instruções, consulte Criar uma postura.
    • Se você precisar modificar qualquer um dos conjuntos ou políticas, siga as instruções em Modificar um arquivo YAML de postura.

Criar um arquivo de postura extraindo políticas de um ambiente

É possível extrair as políticas (políticas da organização, incluindo políticas personalizadas e todos os detectores do Security Health Analytics, incluindo detectores personalizados) que você configurou em um projeto, uma pasta ou uma organização para criar um arquivo de postura. Não é possível extrair políticas de uma organização, pasta ou projeto que já tenha uma postura aplicada.

Esse comando extrai apenas as políticas que você configurou anteriormente para a organização, pasta ou projeto e não extrai políticas de pastas ou organizações pai.

Se você conectou o Security Command Center Enterprise à AWS, esse comando também extrai os detectores específicos da AWS (pré-lançamento).

  1. Execute o comando gcloud scc postures extract para extrair as políticas da organização e os detectores do Security Health Analytics no seu ambiente.

    gcloud scc postures extract POSTURE_NAME \
      --workload=WORKLOAD
    

    Substitua os seguintes valores:

    • POSTURE_NAME é o nome do recurso relativo da postura. Por exemplo, organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_ID.

      • POSTURE_ID é um nome alfanumérico para sua postura que é exclusivo da sua organização. POSTURE_ID é limitado a 63 caracteres.
    • WORKLOAD é o projeto, a pasta ou a organização de onde você está extraindo as políticas. A carga de trabalho é uma das seguintes:

    • projects/PROJECT_NUMBER

    • folder/FOLDER_ID

    • organizations/ORGANIZATION_ID

    Por exemplo, para extrair políticas da pasta 3589215982 na organização 6589215984, execute o seguinte:

    gcloud scc postures extract \
      organizations/6589215984/locations/global/postures/myStagingPosture \
      workload=folder/3589215982 > posture.yaml
    
  2. Abra o arquivo posture.yaml resultante para edição.

  3. Conclua uma das seguintes ações:

    • Se você puder usar a postura sem fazer nenhuma mudança (por exemplo, se você usou um dos modelos _essentials), crie a postura. Para instruções, consulte Criar uma postura.
    • Se você precisar modificar qualquer um dos conjuntos ou políticas, siga as instruções em Modificar um arquivo YAML de postura.

Criar um recurso do Terraform com definições de política

É possível criar uma configuração do Terraform para criar um recurso de postura.

Por exemplo, é possível criar um recurso de postura que inclua restrições de política da organização integradas e personalizadas e detectores integrados e personalizados do Security Health Analytics. O suporte ao gerenciamento de postura para detectores integrados da Análise de integridade da segurança específicos para a AWS está em Pré-lançamento.

resource "google_securityposture_posture" "posture_example" {
  posture_id  = "<POSTURE_ID>"
  parent      = "organizations/<ORGANIZATION_ID>"
  location    = "global"
  state       = "ACTIVE"
  description = "a new posture"
  policy_sets {
    policy_set_id = "org_policy_set"
    description   = "set of org policies"
    policies {
      policy_id = "canned_org_policy"
      constraint {
        org_policy_constraint {
          canned_constraint_id = "storage.uniformBucketLevelAccess"
          policy_rules {
            enforce = true
          }
        }
      }
    }
    policies {
      policy_id = "canned_org_policy_for_service"
      constraint {
        org_policy_constraint {
          canned_constraint_id = "run.allowedVPCEgress"
          policy_rules {
            allow_all: true
            condition {
              expression: "!(parameters.denyAll or resource.location in parameters.deniedLocations) && (parameters.allowAll or resource.location in parameters.allowedLocations)"
            }
            parameters {
              fields {
                key: "denyAll"
                value {
                  bool_value: false
                }
              }
              fields {
                key: "allowAll"
                value {
                  bool_value: false
                }
              }
              fields {
                key: "deniedLocations"
                value {
                  null_value: NULL_VALUE
                }
              }
              fields {
                key: "allowedLocations"
                value {
                  string_value: "allowedLocations.all(location, location in [\342\200\230US\342\200\231, \342\200\230EU\342\200\231])"
                }
              }
            }
            resource_types {
              included: "run.googleapis.com/Service"
            }
          }
        }
      }
    }
  }
  policy_sets {
    policy_set_id = "sha_policy_set"
    description   = "set of sha policies"
    policies {
      policy_id = "sha_builtin_module"
      constraint {
        security_health_analytics_module {
          module_name             = "BIGQUERY_TABLE_CMEK_DISABLED"
          module_enablement_state = "ENABLED"
        }
      }
      description = "enable BIGQUERY_TABLE_CMEK_DISABLED"
    }
    policies {
      policy_id = "aws_sha_builtin_module"
      constraint {
        security_health_analytics_module {
          module_name             = "S3_BUCKET_LOGGING_ENABLED"
          module_enablement_state = "ENABLED"
        }
      }
      description = "enable S3_BUCKET_LOGGING_ENABLED"
    }
    policies {
      policy_id = "sha_custom_module"
      constraint {
        security_health_analytics_custom_module {
          display_name = "custom_SHA_policy"
          config {
            predicate {
              expression = "resource.rotationPeriod > duration('2592000s')"
            }
            custom_output {
              properties {
                name = "duration"
                value_expression {
                  expression = "resource.rotationPeriod"
                }
              }
            }
            resource_selector {
              resource_types = ["cloudkms.googleapis.com/CryptoKey"]
            }
            severity       = "LOW"
            description    = "Custom Module"
            recommendation = "Testing custom modules"
          }
          module_enablement_state = "ENABLED"
        }
      }
    }
  }
}

Para mais informações, consulte google_securityposture_posture.

Modificar um arquivo YAML de postura

Siga estas etapas para modificar um arquivo YAML de postura:

  1. Abra o arquivo YAML de postura em um editor de texto.
  2. Verifique o name, description e state no início do arquivo.

  3. Verifique name, description e state no início do arquivo.

    name: organizations/ORGANIZATION_ID/locations/global/posture/POSTURE_ID
    description: DESCRIPTION
    state: STATE
    

    Para detalhes sobre esses campos, consulte a referência do Posture.

    Exemplo:

    name: organizations/3589215982/locations/global/posture/stagingAIPosture
    description: This posture applies to staging environments for Vertex AI.
    state: ACTIVE
    
  4. Personalize as políticas no arquivo para atender aos seus requisitos.

    Para detalhes sobre os campos que podem ser usados, consulte a referência PolicySet.

    1. Revise as políticas atuais e os valores delas. Para políticas que exigem informações específicas do seu ambiente, defina os valores adequadamente. Por exemplo, para a política ainotebooks.accessMode na IA segura, postura predefinida estendida, adicione os modos de acesso permitidos em policy_rules:

      - policy_id: Define access mode for Vertex AI Workbench notebooks and instances
        compliance_standards:
        - standard: NIST SP 800-53
          control: AC-3(3)
        - standard: NIST SP 800-53
          control: AC-6(1)
        constraint:
          org_policy_constraint:
            canned_constraint_id: ainotebooks.accessMode
            policy_rules:
            - values:
                allowed_values: service-account
        description: This list constraint defines the modes of access allowed to Vertex AI Workbench notebooks and instances where enforced. The allow or deny list can specify multiple users with the service-account mode or single-user access with the single-user mode. The access mode to be allowed or denied must be listed explicitly.
      
    2. Adicione outras restrições de política da organização, conforme documentado em Restrições de política da organização. Se você estiver definindo uma política de organização personalizada, verifique se o arquivo YAML inclui a definição de restrição personalizada. Não é possível usar uma restrição personalizada criada usando outros métodos (por exemplo, o console do Google Cloud).

      Por exemplo, você pode definir a restrição compute.trustedImageProjects para definir que os projetos podem ser usados para armazenamento de imagens e instanciação de disco. Se você copiar este exemplo, substitua allowed_values pela lista adequada de projetos:

      - policy_id: Define projects with trusted images.
        compliance_standards:
        - standard:
          control:
        constraint:
          org_policy_constraint:
            canned_constraint_id: compute.trustedImageProjects
            policy_rules:
            - values:
                allowed_values:
                - project1
                - project2
                - projectN
        description: This is a complete list of projects from which images can be used.
      
    3. Adicione outros detectores da Análise de integridade da segurança, como os documentados em Descobertas da Análise de integridade da segurança. Por exemplo, adicione um detector do Security Health Analytics para criar uma descoberta se um projeto não estiver usando uma chave de API para autenticação:

      - policy_id: API Key Exists
        constraint:
          securityHealthAnalyticsModule:
            moduleEnablementState: ENABLED
            moduleName: API_KEY_EXISTS
      

      Como outro exemplo, adicione um módulo personalizado da Análise de integridade da segurança para detectar se os conjuntos de dados da Vertex AI estão criptografados:

      - policy_id: CMEK key is use for Vertex AI DataSet
        compliance_standards:
        - standard: NIST SP 800-53
          control: SC-12
        - standard: NIST SP 800-53
          control: SC-13
        constraint:
          security_health_analytics_custom_module:
            display_name: "vertexAIDatasetCMEKDisabled"
            config:
              customOutput: {}
              predicate:
                expression: "!has(resource.encryptionSpec)"
              resource_selector:
                resource_types:
                - aiplatform.googleapis.com/Dataset
              severity: CRITICAL
              description: "When enforced, this detector finds whether a dataset is not encrypted using CMEK."
              recommendation: "Restore the SHA module. See https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview."
            module_enablement_state: ENABLED
      

      Como outro exemplo, no Security Command Center Enterprise, adicione um detector do Security Health Analytics específico para a AWS (pré-lançamento):

      - policy_set_id: AWS policy set
        description:  Policy set containing AWS built-in SHA modules for securing S3 buckets.
        policies:
        - policy_id: S3 bucket replication enabled
          compliance_standards:
          - standard: NIST 800-53 R5
            control: SI-13(5)
          constraint:
            securityHealthAnalyticsModule:
              moduleEnablementState: ENABLED
              moduleName: S3_BUCKET_REPLICATION_ENABLED
          description: This control checks whether an Amazon S3 bucket has Cross-Region Replication enabled. The control fails if the bucket does not have Cross-Region Replication enabled or if Same-Region Replication is also enabled.
      
        - policy_id: S3 bucket logging enabled
          compliance_standards:
          - standard: NIST 800-53 R5
            control: SI-7(8)
          - standard: PCI DSS 3.2.1
            control: 10.3.1
          constraint:
            securityHealthAnalyticsModule:
              moduleEnablementState: ENABLED
              moduleName: S3_BUCKET_LOGGING_ENABLED
          description: AWS S3 Server Access Logging feature records access requests to storage buckets which is useful for security audits. By default, server access logging is not enabled for S3 buckets.
      

      Se você adicionar um detector específico da AWS, será necessário implantar a postura no nível da organização.

  5. Faça upload do arquivo de postura para um repositório de origem controlado por versão para que você possa acompanhar as mudanças feitas nele ao longo do tempo.

Criar uma postura

Conclua esta tarefa para criar um recurso de postura no Security Command Center que possa ser implantado. Se você criou uma postura usando um modelo predefinido no console do Google Cloud, o recurso de postura é criado automaticamente para você.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Clique em Criar postura. Você pode criar uma postura começando com uma postura ou um modelo existente ou usando as políticas aplicadas a um recurso.

    Criar uma postura usando uma postura ou um modelo

    1. Selecione Começar com uma postura ou modelo (navegação de posturas).
    2. Especifique detalhes da postura, como nome e descrição.
    3. Clique em Selecionar postura. É possível criar uma postura com base em uma postura ou em um modelo.
      • Selecione Postura para criar uma postura usando uma postura existente. Selecione uma postura na lista de posturas exibidas e selecione uma ou mais revisões na lista de revisões disponíveis para a postura selecionada.
      • Selecione Modelo para criar uma postura usando um modelo e selecione um ou mais modelos na lista exibida.
    4. Clique em Salvar. Na seção Conjuntos de políticas, você pode conferir a lista de conjuntos de políticas associados à postura selecionada.
    5. Selecione as políticas na lista de conjuntos. Também é possível editar a política e movê-la para um conjunto de políticas diferente nesta página. Não é possível criar uma postura com duas políticas com o mesmo nome no mesmo conjunto de políticas.
    6. Clique em Criar.

    Criar uma postura usando as políticas aplicadas a um recurso

    1. Selecione Comece com uma postura aplicada a um recurso (navegação de recursos).
    2. Especifique detalhes da postura, como nome e descrição.
    3. Clique em Selecionar recursos.
    4. Selecione um recurso na lista exibida e clique em Criar.

    Você será redirecionado para a página Detalhes da postura, que mostra informações sobre a postura que você criou. Você pode conferir os conjuntos de políticas associados a essa postura.

gcloud

  1. Execute o comando gcloud scc postures create para criar uma postura usando o arquivo posture.yaml.

    gcloud scc postures create POSTURE_NAME \
        --posture-from-file=POSTURE_FROM_FILE
    

    Substitua os seguintes valores:

    • POSTURE_NAME é o nome do recurso relativo da postura. Por exemplo, organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_ID.

      • POSTURE_ID é um nome alfanumérico para sua postura que é exclusivo da sua organização. POSTURE_ID é limitado a 63 caracteres.

    Por exemplo, para criar uma postura com o ID posture-example-1 na organização organizations/3589215982, execute o seguinte:

    gcloud scc postures create \
        organizations/3589215982/locations/global/postures/posture-example-1 \
        --posture-from-file=posture.yaml
    

    Se o processo de criação de postura falhar, exclua a postura, resolva o erro e tente novamente.

  2. Para verificar se a postura foi criada, consulte Conferir uma postura.

Para aplicar essa postura ao seu ambiente, é necessário implantar a postura.

Terraform

Se você criou uma configuração do Terraform para o recurso de postura, é necessário provisioná-lo usando o pipeline de infraestrutura como código.

Para mais informações, consulte Terraform no Google Cloud.

Implantar uma postura

Depois de criar uma postura, você a implanta em um projeto, pasta ou organização para aplicar as políticas e as definições a recursos específicos na sua organização e monitorar a deriva. Só é possível implantar uma postura em um projeto, pasta ou organização.

Verifique se o estado da postura é ACTIVE.

Quando você implanta a postura, as seguintes ações ocorrem:

  • As definições das políticas da organização e dos detectores da Análise de integridade da segurança são aplicadas.
  • A restrição personalizada para políticas da organização personalizadas é criada com o ID de restrição para incluir o ID de revisão de postura como um sufixo ao ID de restrição definido na postura.
  • O estado padrão dos módulos personalizados é definido como Ativado.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Postures, clique na postura que você quer implantar.

  4. Na página Detalhes da postura, selecione a revisão da postura. A revisão de postura selecionada precisa estar no estado ativo.

  5. Clique em Aplicar aos recursos.

  6. Clique em Selecionar para escolher a organização, a pasta ou o projeto em que você quer implantar a postura.

  7. Clique em Aplicar postura.

gcloud

Execute o comando gcloud scc posture-deployments create para implantar uma postura em um projeto, uma pasta ou uma organização.

gcloud scc posture-deployments create POSTURE_DEPLOYMENT_NAME \
    --posture-name=POSTURE_NAME \
    --posture-revision-id=POSTURE_REVISION_ID \
    --target-resource=TARGET_RESOURCE

Substitua os seguintes valores:

  • POSTURE_DEPLOYMENT_NAME é o nome do recurso relativo para a implantação de postura. O formato é organizations/ORGANIZATION_ID/locations/global/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • LOCATION é global.

  • POSTURE_ID é um nome alfanumérico para sua postura que é exclusivo da sua organização.

  • --posture-name=POSTURE_NAME é o nome da postura que você está implantando. O formato é organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_ID.

Se a postura incluir um detector específico da AWS, será necessário implantar a postura no nível da organização (Pré-visualização).

Por exemplo, para implantar uma postura, execute o seguinte comando:

gcloud scc posture-deployments create \
  organizations/3589215982/locations/global/postureDeployments/postureDeployment123 \
  --posture-name=organizations/3589215982/locations/global/postures/StagingAIPosture \
  --posture-revision-id=version1 \
  --target-resource=projects/4589215982

Você pode conferir as informações de status à medida que o comando é concluído. Se o processo de criação da implantação de postura falhar, exclua a implantação, resolva o erro e tente novamente.

Terraform

É possível criar um recurso do Terraform para implantar uma postura.

resource "google_securityposture_posture_deployment" "posture_deployment_example" {
  posture_deployment_id          = "<POSTURE_DEPLOYMENT_ID>"
  parent = "organizations/<ORGANIZATION_ID>"
  location = "global"
  description = "a new posture deployment"
  target_resource = "<TARGET_RESOURCE>"
  posture_id = "<POSTURE_NAME>"
  posture_revision_id = "<POSTURE_REVISION_ID>"
}

Para mais informações, consulte google_securityposture_posture_deployment.

Depois de criar o recurso do Terraform, provisione-o usando o pipeline de infraestrutura como código.

Conferir informações sobre a postura e a implantação da postura

É possível conferir informações sobre postura e implantação de postura, como:

  • Quais posturas são implantadas e onde na hierarquia de recursos (organizações, projetos e pastas) elas são aplicadas
  • As revisões e o estado das posturas
  • Os detalhes operacionais de uma implantação de postura

Conferir uma postura

É possível conferir informações sobre uma postura (como o estado e as definições de política).

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Selecione a organização em que você ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Posturas, clique na postura que você quer conferir. Os detalhes da postura aparecem.

gcloud

Execute o comando gcloud scc postures describe para conferir uma postura que você criou.

gcloud scc postures describe POSTURE_NAME \
    --revision-id=REVISION_ID

Substitua os seguintes valores:

  • POSTURE_NAME é o nome do recurso relativo da postura. Por exemplo, organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_ID.

  • LOCATION é global.

  • POSTURE_ID é um nome alfanumérico para sua postura que é exclusivo da sua organização.

  • revision-id=REVISION_ID é uma flag opcional que especifica qual versão da postura será mostrada. Se você não incluir a flag, a versão mais recente será retornada.

Por exemplo, para conferir uma postura com o nome organizations/3589215982/locations/global/postures/posture-example-1 e o ID de revisão abcdefgh, execute o seguinte:

gcloud scc postures describe \
    organizations/3589215982/locations/global/postures/posture-example-1 \
    --revision-id=abcdefgh

Acessar informações sobre uma operação de implantação de postura

Execute o comando gcloud scc posture-operations describe para conferir os detalhes de uma operação de implantação de postura.

gcloud scc posture-operations describe OPERATION_NAME

em que OPERATION_NAME é o nome do recurso relativo para a operação. O formato é organizations/ORGANIZATION_ID/locations/global/operations/OPERATION_ID. É possível conseguir o OPERATION_ID usando o argumento --async ao executar o comando de postura.

Por exemplo, para conferir uma operação de verificação com o nome organizations/3589215982/locations/global/operations/operation-1694515698847-605272e4bcd7c-f93dade6-067467ae, execute o seguinte:

gcloud scc posture-operations describe \
    organizations/3589215982/locations/global/operations/operation-1694515698847-605272e4bcd7c-f93dade6-067467ae

Acessar informações sobre uma implantação de postura

É possível conferir onde uma postura foi implantada e o estado da implantação.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Postures, clique na postura que você implantou.

  4. Acesse a guia Resources para conferir os projetos, as pastas e a organização em que a postura está implantada, além do estado da implantação.

gcloud

Execute o comando gcloud scc posture-deployments describe para conferir informações sobre uma postura implantada.

gcloud scc posture-deployments describe
POSTURE_DEPLOYMENT_NAME

em que POSTURE_DEPLOYMENT_NAME é o nome do recurso relativo para a implantação de postura. O formato é organizations/ORGANIZATION_ID/locations/global/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • LOCATION é global.
  • POSTURE_DEPLOYMENT_ID é um nome exclusivo para a implantação de postura.

Por exemplo, para conferir os detalhes de uma implantação de postura chamada organizations/3589215982/locations/global/postureDeployments/Posture-deployment-example-1, execute o seguinte:

gcloud scc posture-deployments describe \
    organizations/3589215982/locations/global/postureDeployments/Posture-deployment-example-1

Atualizar uma postura e uma implantação de postura

Você pode atualizar o seguinte:

  • O estado da postura.
  • As definições de política em uma postura.
  • A organização, as pastas ou os projetos em que uma postura é implantada.

Atualizar as definições da política em uma postura

Talvez seja necessário atualizar uma postura ao ativar mais serviços do Google Cloud, implantar outros recursos ou exigir políticas adicionais para atender a novos ou requisitos de compliance em mudança. Se você estiver atualizando uma revisão de postura implantada, essa tarefa vai criar uma nova revisão de postura. Caso contrário, a revisão de postura especificada ao executar o comando de atualização será atualizada.

  1. Abra um arquivo YAML em um editor de texto. Adicione os campos que você quer atualizar e os valores deles. Se você estiver atualizando conjuntos de políticas, verifique se o arquivo inclui todos os conjuntos de políticas que você quer incluir na postura, incluindo os que já existem. Para ver instruções, consulte Modificar um arquivo YAML de postura.
  2. Execute o comando gcloud scc postures update para atualizar a postura.

    gcloud scc postures update POSTURE_NAME \
        --posture-from-file=POSTURE_FROM_FILE \
        --revision-id=POSTURE_REVISION_ID \
        --update-mask=UPDATE_MASK
    

    Substitua os seguintes valores:

    • POSTURE_NAME é o nome do recurso relativo da postura. Por exemplo, organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_ID.

      • POSTURE_ID é um nome alfanumérico para sua postura que é exclusivo da sua organização.
    • POSTURE_FROM_FILE é o caminho relativo ou absoluto para o arquivo posture.yaml que inclui suas alterações.

      • LOCATION é global.
      • POSTURE_ID é um nome alfanumérico para sua postura que é exclusivo da sua organização.
    • POSTURE_FROM_FILE é o caminho relativo ou absoluto para o arquivo posture.yaml que inclui suas mudanças.

    • --revision-id=REVISION_ID é a revisão de postura que você quer implantar. Se a postura já estiver implantada, o serviço de postura de segurança vai criar automaticamente uma nova versão da postura com um ID de revisão diferente e incluir o ID de revisão na saída.

    • --update-mask=UPDATE_MASK é a lista de campos que você quer atualizar, no formato separado por vírgulas. Esse argumento é opcional. É possível definir UPDATE_MASK como um dos seguintes valores:

      • * ou não especificado: aplique as mudanças feitas nos conjuntos de políticas e na descrição da postura.
      • policy_sets: aplica apenas as mudanças feitas nos conjuntos de políticas.
      • description: aplique as mudanças que você fez apenas à descrição da postura.
      • policy_sets, description: aplique as mudanças feitas nos conjuntos de políticas e na descrição da postura.
      • state: aplica apenas a mudança de estado.

    Por exemplo, para atualizar uma postura com o nome posture-example-1 na organização organizations/3589215982/locations/global e o ID de revisão definido como abcd1234, execute o seguinte:

    gcloud scc postures update \
        organizations/3589215982/locations/global/posture-example-1 \
        --posture-from-file=posture.yaml --revision-id=abcd1234 --update-mask=policy_sets
    

    Se o processo de atualização de postura falhar, resolva o erro e tente novamente.

  3. Para verificar se a postura foi atualizada, consulte Conferir uma postura.

Mudar o estado de uma postura

O estado de uma postura determina se ela está disponível para implantação em um projeto, pasta ou organização.

Uma postura pode ter os seguintes estados:

  • DRAFT: a revisão de postura não está pronta para implantação. Não é possível implantar uma revisão de postura que esteja no estado DRAFT.
  • ACTIVE: a revisão de postura está disponível para implantação. É possível mudar o estado de ACTIVE para DRAFT ou DEPRECATED..
  • DEPRECATED: uma revisão de postura DEPRECATED não pode ser implantada em um recurso. É necessário excluir todas as implantações de postura atuais da postura antes de descontinuar uma revisão de postura. Se você quiser reimplantar uma revisão de postura descontinuada, mude o estado dela para ACTIVE.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Posturas, clique na postura que você quer atualizar.

  4. Na página Detalhes da postura, clique em Editar.

  5. Selecione o status da postura e clique em Salvar.

gcloud

Para mudar o estado de uma postura, execute o comando gcloud scc postures update. Não é possível atualizar o estado de postura ao mesmo tempo que outros campos. Para instruções sobre como executar o comando gcloud scc postures update, consulte Modificar um arquivo YAML de postura.

Atualizar uma implantação de postura

Atualize uma implantação de postura em um projeto, uma pasta ou uma organização para implantar uma nova postura ou uma nova revisão de uma postura.

Se a revisão de postura que você está atualizando incluir uma restrição de organização personalizada que foi excluída usando o console do Google Cloud, não será possível atualizar a implantação de postura usando o mesmo ID de postura. O serviço de política da organização impede a criação de restrições de organização personalizadas com o mesmo nome. Em vez disso, crie uma nova versão da postura ou use um ID de postura diferente.

Além disso, as descobertas das implantações de políticas excluídas como parte do processo de atualização serão desativadas.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Posturas, clique na postura que você quer atualizar.

  4. Na página Detalhes da postura, selecione a revisão da postura.

  5. Clique em Aplicar aos recursos.

  6. Clique em Selecionar para escolher a organização, a pasta ou o projeto em que você quer implantar a postura. Se uma mensagem informando que a implantação já existe for exibida, exclua a implantação antes de tentar novamente.

gcloud

Execute o comando gcloud scc posture-deployments update para implantar uma postura.

gcloud scc posture-deployments update POSTURE_DEPLOYMENT_NAME \
    --description=DESCRIPTION \
    --update-mask=UPDATE_MASK \
    --posture-id=POSTURE_ID \
    --posture-revision-id=POSTURE_REVISION_ID

Substitua os seguintes valores:

  • POSTURE_DEPLOYMENT_NAME é o nome do recurso relativo para a implantação de postura. O formato é organizations/ORGANIZATION_ID/locations/global/postureDeployments/POSTURE_DEPLOYMENT_ID.

    • POSTURE_DEPLOYMENT_ID é um nome exclusivo para a implantação de postura.
  • --description=DESCRIPTION é a descrição opcional para a postura implantada.

  • --posture-id=POSTURE_ID é o nome da postura exclusivo da sua organização. O formato é organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_NAME.

  • --posture-revision-id=POSTURE_REVISION_ID é a revisão de postura que você quer implantar. Você pode encontrá-lo na resposta que recebe ao criar a postura ou visualizar a postura.

  • --update-mask=UPDATE_MASK é a lista de campos que você quer atualizar, no formato separado por vírgulas. Esse argumento é opcional.

Por exemplo, para atualizar uma implantação de postura com os seguintes critérios:

  • Organização: organizations/3589215982/locations/global
  • ID de implantação da postura: postureDeploymentexample
  • ID da postura: StagingAIPosture
  • Revisão: version2

Execute este comando:

gcloud scc posture-deployments update \
    organizations/3589215982/locations/global/postureDeployments/postureDeploymentexample \
    --posture-id=organizations/3589215982/locations/global/postures/StagingAIPosture \
    --posture-revision-id=version2

Você pode conferir as informações de status à medida que o comando é concluído. Se o processo de atualização da implantação de postura falhar, exclua a implantação, resolva o erro e tente novamente.

Monitorar o deslocamento da postura

É possível monitorar uma postura implantada para desvios das políticas definidas na postura de segurança. O deslocamento é uma mudança em uma política que ocorre fora de uma postura. Por exemplo, o deslocamento ocorre quando um administrador muda uma definição de política no console em vez de atualizar a implantação de postura.

O serviço de postura de segurança cria resultados que podem ser visualizados no console do Google Cloud ou na CLI gcloud sempre que ocorre uma variação.

Console

Se você criou uma postura que se aplica aos workloads da Vertex AI, é possível monitorar a deriva de duas maneiras: na página Findings e na página Overview. Para todas as outras posturas, é possível monitorar a deriva na página Findings.

Para monitorar a deriva na página Descobertas:

  1. No console do Google Cloud, acesse a página Findings.

    Acesse Descobertas

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. No painel Filtros rápidos, selecione a descoberta Violação de postura. Você também pode inserir o seguinte filtro na Visualização da consulta:

    state="ACTIVE" AND NOT mute="MUTED" AND finding_class="POSTURE_VIOLATION"
    
  4. Para conferir os detalhes de uma descoberta, clique nela.

Para monitorar o deslocamento na página Visão geral (somente workloads da Vertex AI): 1. No console do Google Cloud, acesse a página Visão geral.

Ir para Visão geral

1. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center. 1. Revise o painel AI Workload Findings.

  • A guia Vulnerabilidades mostra todas as vulnerabilidades relacionadas a qualquer módulo personalizado do Security Health Analytics que se aplica especificamente a workloads da Vertex AI.
  • A guia Policy Drift mostra qualquer desvio relacionado às políticas da organização do Vertex AI que você aplicou em uma postura.
  • Para conferir os detalhes de uma descoberta, clique nela.

gcloud

Na CLI gcloud, para conferir as descobertas de desvio, execute o seguinte:

gcloud scc findings list ORGANIZATION_ID \
    --filter="category=\"SECURITY_POSTURE_DRIFT\""

em que ORGANIZATION_ID é o ID da organização.

Para mais informações sobre como resolver essas descobertas, consulte Descobertas do serviço de postura de segurança. É possível exportar essas descobertas da mesma forma que você exporta qualquer outra descoberta do Security Command Center. Para mais informações, consulte Opções de integração e Como exportar dados do Security Command Center.

Para desativar uma descoberta de desvio, você pode atualizar a implantação de postura com o mesmo ID e revisão de postura.

Gerar uma descoberta de desvio para fins de teste

Depois de implantar uma postura, você pode monitorar a deriva das suas políticas. Para ver as descobertas de desvio em ação em um ambiente de teste, faça o seguinte:

  1. No console, acesse a página Política da organização.

    Acessar a política da organização

  2. Edite uma das políticas definidas na postura implantada. Por exemplo, se você usar uma postura de IA segura predefinida, poderá editar a política Restringe o acesso de IPs públicos em novas instâncias e notebooks do Vertex AI Workbench.

  3. Depois de mudar a política, clique em Definir política.

  4. Acesse a página Descobertas.

    Acesse Descobertas

  5. No painel Filtros rápidos, na seção Nome de exibição da origem, selecione Postura de segurança. Uma descoberta relacionada à mudança vai aparecer em até cinco minutos.

  6. Para conferir os detalhes da descoberta, clique nela.

Excluir uma implantação de postura

É possível excluir uma implantação de postura se ela não foi implantada corretamente, se você não precisa mais de uma postura específica ou se não quer mais que uma postura seja atribuída a um projeto, pasta ou organização. Para excluir uma implantação de postura, ela precisa estar em um dos seguintes estados:

  • ACTIVE
  • CREATE_FAILED
  • UPDATE_FAILED
  • DELETE_FAILED

Para verificar o estado de uma implantação de postura, consulte Conferir informações sobre uma implantação de postura.

Ao excluir uma implantação de postura, você remove a postura do recurso (organização, pasta ou projeto) atribuído a ela. Além disso, ele desativa as descobertas associadas.

A saída para diferentes tipos de políticas é:

  • Quando você exclui uma implantação de postura que inclui políticas personalizadas da organização, elas são excluídas. No entanto, a restrição personalizada continua existindo.
  • Quando você exclui uma implantação de postura que inclui detectores integrados do Security Health Analytics, o estado final dos módulos do Security Health Analytics depende da organização, pasta ou projeto em que a implantação existia.

    • Se você implantou uma postura em uma pasta ou projeto, os detectores integrados do Security Health Analytics herdam o estado da organização ou pasta pai.
    • Se você implantou uma postura no nível da organização, os detectores integrados da Análise de integridade da segurança são revertidos para o estado padrão. Para uma descrição dos estados padrão, consulte Ativar e desativar detectores.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Postures, clique na postura que você quer remover do recurso atribuído a ela.

  4. Na página Detalhes da postura, selecione a revisão da postura e acesse Recursos.

  5. Na lista de recursos em que a revisão de postura ativa atual é implantada, clique em Remover.

gcloud

Execute o comando gcloud scc posture-deployments delete para excluir uma implantação de postura.

gcloud scc posture-deployments deletePOSTURE_DEPLOYMENT_NAME

POSTURE_DEPLOYMENT_NAME é o nome do recurso relativo para a implantação de postura. O formato é organizations/ORGANIZATION_ID/locations/global/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • POSTURE_DEPLOYMENT_ID é o nome exclusivo da implantação de postura.

Por exemplo, para excluir uma implantação de postura chamada organizations/3589215982/locations/global/postureDeployments/posture-deployment-example-1, execute o seguinte:

gcloud scc posture-deployments delete \
    organizations/3589215982/locations/global/postureDeployments/posture-deployment-example-1

Excluir uma postura

Ao excluir uma postura, você também exclui todas as revisões. Não é possível excluir uma postura se alguma das revisões dela estiver implantada. É necessário excluir todas as implantações de postura antes de concluir esta tarefa.

Console

  1. No console do Google Cloud, acesse a página Gerenciamento de postura.

    Acessar o gerenciamento de postura

  2. Verifique se você está visualizando a organização em que ativou o nível Premium ou Enterprise do Security Command Center.

  3. Na guia Posturas, clique na postura que você quer excluir.

  4. Na página Detalhes da postura, clique em Excluir.

gcloud

Execute o comando gcloud scc postures delete para excluir uma postura.

gcloud scc postures delete POSTURE_NAME

POSTURE_NAME é o nome do recurso relativo da postura. Por exemplo, organizations/ORGANIZATION_ID/locations/global/postures/POSTURE_ID. O ID de postura é um nome alfanumérico exclusivo da sua organização.

Por exemplo, para excluir uma postura chamada organizations/3589215982/locations/global/postures/posture-example-1, execute o seguinte:

gcloud scc postures delete \
    organizations/3589215982/locations/global/postures/posture-example-1

A seguir