Integrar o Recomendador ao Google SecOps
Versão da integração: 7.0
Este documento explica como integrar o Recomendador ao Google Security Operations.
Antes de começar
Antes de configurar a integração do Recommender na plataforma Google SecOps, verifique se você tem o seguinte:
Papel personalizado do Identity and Access Management: um papel que contém as permissões específicas necessárias para visualizar e atualizar recomendações em projetos ou organizações.
Método de autenticação: escolha entre o método recomendado de identidade da carga de trabalho (sem chave) ou uma chave JSON da conta de serviço.
Raízes de serviço da API: acesso aos endpoints da API Recommender e da API Cloud Resource Manager.
Permissões de papéis personalizados do IAM
Crie um papel personalizado no console Google Cloud e atribua a ele as permissões necessárias para que a integração funcione corretamente.
No console do Google Cloud , acesse a página IAM e administrador > Papéis.
Clique em Criar papel.
Insira um Título, uma Descrição e um ID exclusivo para a função.
Defina o Estágio de lançamento do papel como
General Availability.Clique em Adicionar permissões e adicione o seguinte:
API Recommender:
recommender.iamPolicyInsights.getrecommender.iamPolicyInsights.listrecommender.iamPolicyRecommendations.getrecommender.iamPolicyRecommendations.listrecommender.iamPolicyRecommendations.update
API Cloud Resource Manager:
resourcemanager.projects.getresourcemanager.projects.listresourcemanager.projects.getIamPolicyresourcemanager.projects.setIamPolicy
Acesso à localização:
recommender.locations.getrecommender.locations.list
Acesso a outros recursos:
resourcemanager.folders.getresourcemanager.folders.getIamPolicyresourcemanager.folders.setIamPolicyresourcemanager.organizations.getresourcemanager.organizations.getIamPolicyresourcemanager.organizations.setIamPolicy
Clique em Criar.
Configuração da autenticação
O Google SecOps oferece suporte a dois caminhos de autenticação. Configure um dos seguintes métodos:
Opção 1: Identidade da carga de trabalho (recomendado): esse é o método recomendado porque oferece uma postura de segurança superior ao eliminar a necessidade de gerenciar e alternar chaves JSON de longa duração.
Opção 2: chave JSON da conta de serviço: usa um arquivo de chave JSON padrão para autenticação. Use esse método somente se a identidade da carga de trabalho não estiver disponível no seu ambiente.
Autenticar usando a Identidade da carga de trabalho (recomendado)
Esse método usa a representação de conta de serviço para permitir que a plataforma acesse seus recursos de forma segura.
Crie uma conta de serviço de destino:
Antes que a integração possa acessar seus recursos do Google Cloud , crie uma conta de serviço dedicada no seu projeto e atribua a ela as permissões necessárias.
- No console Google Cloud , acesse IAM e administrador > Contas de serviço.
- Clique em Criar conta de serviço.
- Forneça um nome e um ID e clique em Criar e continuar.
- Em Conceder acesso a essa conta de serviço ao projeto, selecione o papel personalizado do IAM criado na seção anterior.
- Clique em Concluído.
- Copie o endereço de e-mail da conta de serviço.
Identifique a identidade da sua instância do Google SecOps:
Para ativar a representação segura, primeiro identifique a identidade exclusiva da conta de serviço usada pela sua instância específica do Google SecOps.
- No Google SecOps, acesse Central de conteúdo > Integrações de resposta.
- Pesquise e selecione a integração do Recommender.
- Cole o e-mail da conta de serviço de destino em
Workload Identity Email. - Clique em Salvar e em Testar. O teste deve falhar.
- Clique em close_small à direita de Testar e pesquise a mensagem de erro por um endereço de e-mail que comece com
gke-init-python@ousoar-python@. Copie esse e-mail exclusivo.
Conceda permissões de representação:
A etapa final é conceder à identidade da instância a permissão para agir como sua conta de serviço de destino, permitindo que ela execute ações sem exigir um arquivo de chave estática.
- Volte para IAM e administrador > Contas de serviço no console doGoogle Cloud .
- Selecione o nome da conta de serviço de destino que você criou.
- Navegue até a guia Permissões e clique em Conceder acesso.
- No campo Novos principais, cole o endereço de e-mail.
- No campo Selecionar um papel, escolha Criador de token da conta de serviço
(
roles/iam.serviceAccountTokenCreator). - Clique em Salvar. Pode levar alguns minutos para que essa permissão seja propagada antes que o teste de conexão seja concluído.
Autenticar usando uma chave JSON da conta de serviço
Use esse método somente se a Identidade da carga de trabalho não estiver disponível no seu ambiente.
Crie uma conta de serviço:
Para usar a autenticação baseada em chaves, primeiro crie uma conta de serviço no seu projeto doGoogle Cloud para atuar como a identidade da integração.
- No console Google Cloud , acesse IAM e administrador > Contas de serviço.
- Clique em Criar conta de serviço.
- Forneça um nome e um ID e clique em Criar e continuar.
- Em Conceder acesso a essa conta de serviço ao projeto, selecione o papel personalizado do IAM que você criou.
- Clique em Concluído.
Gere e salve uma chave JSON:
Depois de criar a conta de serviço, gere um arquivo de chave privada JSON que contenha as credenciais necessárias para fazer login no Google SecOps.
- Em IAM e administrador > Contas de serviço, selecione a conta de serviço que você criou.
- Acesse a guia Chaves.
- Clique em Adicionar chave > Criar nova chave.
- Selecione
JSONcomo o tipo de chave e clique em Criar. O download do arquivo JSON é feito no computador. - Copie todo o conteúdo desse arquivo e cole em
User's Service Accountdurante a configuração da integração.
Parâmetros de integração
A integração do Recommender exige os seguintes parâmetros:
| Parâmetro | Descrição |
|---|---|
API Root |
Obrigatório. A raiz da API do serviço Recommender. O valor padrão é |
Resource Manager API Root |
Obrigatório. A raiz da API para o serviço Resource Manager usado para gerenciar recursos de projeto e organização. O valor padrão é |
Organization ID |
Opcional. O identificador exclusivo da organização Google Cloud a ser usado com a integração. |
Project ID |
Opcional. O ID do projeto Google Cloud a ser usado para recuperar recomendações. |
Quota Project ID |
Opcional. O ID do projeto usado para fins de faturamento e cota. Se nenhum valor for fornecido, o projeto associado às credenciais da conta de serviço será usado. |
Workload Identity Email |
Opcional. O endereço de e-mail do cliente da conta de serviço usada para a personificação da Identidade da carga de trabalho. |
User's Service Account |
Opcional. Todo o conteúdo do arquivo de chave JSON da conta de serviço. |
Verify SSL |
Opcional. Se selecionada, a integração valida o certificado SSL ao se conectar ao servidor do Recommender. Ativado por padrão. |
Para instruções sobre como configurar uma integração no Google SecOps, consulte Configurar integrações.
É possível fazer mudanças mais tarde, se necessário. Depois de configurar uma instância de integração, você pode usá-la em playbooks. Para mais informações sobre como configurar e oferecer suporte a várias instâncias, consulte Suporte a várias instâncias.
Ações
Aplicar recomendações do IAM
Aplique as recomendações do IAM com base na entrada fornecida.
Essa ação só funciona com as recomendações google.iam.policy.Recommender.
Entidades
A ação não é executada em entidades.
Entradas de ação
Para configurar a ação, use os seguintes parâmetros:
| Parâmetros | |
|---|---|
IAM Recommendations JSON |
Obrigatório. O resultado JSON da recomendação. O resultado JSON pode ser fornecido como um marcador de posição das ações Listar recomendações ou Receber recomendação. |
Saídas de ação
| Tipo de saída da ação | |
|---|---|
| Anexo do Painel de Casos | N/A |
| Link do Painel de Casos | N/A |
| Tabela do painel de casos | N/A |
| Tabela de enriquecimento | N/A |
| Insight de entidade | N/A |
| Insight | N/A |
| Resultado JSON | Disponível |
| Widget OOTB | N/A |
| Resultado do script | Disponível |
Resultado do script
| Nome do resultado do script | Valor |
|---|---|
| is_success | Verdadeiro/falso |
Resultado JSON
{
"applied_recommendations": [
{
"name": "projects/PROJECT_ID/locations/global/recommenders/google.iam.policy.Recommender/recommendations/217d3019-bae5-4a52-9968-787fdd546a53",
"description": "Replace the current role with a smaller role to cover the permissions needed.",
"lastRefreshTime": "2023-07-28T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 610
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "add",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/-",
"value": "USER_ID@example.com",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/compute.instanceAdmin"
}
},
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "USER_ID@example.com",
"/iamPolicy/bindings/*/role": "roles/compute.admin"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"member": "user:USER_ID@example.com",
"removedRole": "roles/compute.admin",
"addedRoles": [
"roles/compute.instanceAdmin"
],
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "SUCCEEDED",
"stateMetadata": {
"applied_by": "bulk_apply_by_automated_script-2023-08-11"
}
},
"etag": "\"892d57ee41baa03e\"",
"recommenderSubtype": "REPLACE_ROLE",
"associatedInsights": [
{
"insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID"
}
],
"priority": "P4"
},
{
"name": "projects/PROJECT_ID/locations/global/recommenders/google.iam.policy.Recommender/recommendations/RECOMMENDATION_ID",
"description": "Replace the current role with a smaller role to cover the permissions needed.",
"lastRefreshTime": "2023-07-28T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 19
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "add",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/-",
"value": "user:USER_ID@example.com",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/storage.objectAdmin"
}
},
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:USER_ID@example.com",
"/iamPolicy/bindings/*/role": "roles/storage.admin"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"member": "user:USER_ID@example.com",
"removedRole": "roles/storage.admin",
"addedRoles": [
"roles/storage.objectAdmin"
],
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "SUCCEEDED",
"stateMetadata": {
"applied_by": "bulk_apply_by_automated_script-2023-08-11"
}
},
"etag": "\"af7635ffeb512998\"",
"recommenderSubtype": "REPLACE_ROLE",
"associatedInsights": [
{
"insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID"
}
],
"priority": "P4"
}
],
"failed_recommendations": []
}
Painel de casos
A ação fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully applied provided IAM recommendations. |
A ação foi concluída. |
Successfully applied provided IAM recommendation, but some of the
recommendations were not applied. |
A ação foi concluída. |
No provided IAM recommendations were applied. |
Falha na recomendação. |
Error executing action ACTION_NAME. |
A ação retornou um erro. |
Receber recomendação
Receba uma recomendação específica do serviço Recommender.
Entidades
A ação não é executada em entidades.
Entradas de ação
Para configurar a ação, use os seguintes parâmetros:
| Parâmetros | |
|---|---|
Recommendation name |
Obrigatório. Especifica o nome da recomendação a ser retornada. A ação aceita vários valores como uma string separada por vírgulas. Exemplo da entrada esperada:
projects/projectname/locations/global/recommenders/google.iam.policy.Recommender/recommendations/0f262740-bf4a-4c3d-9573-0da3345cf3f7
|
Saídas de ação
| Tipo de saída da ação | |
|---|---|
| Anexo do Painel de Casos | N/A |
| Link do Painel de Casos | N/A |
| Tabela do painel de casos | N/A |
| Tabela de enriquecimento | N/A |
| Insight de entidade | N/A |
| Insight | N/A |
| Resultado JSON | Disponível |
| Widget OOTB | N/A |
| Resultado do script | Disponível |
Resultado do script
| Nome do resultado do script | Valor |
|---|---|
| is_success | Verdadeiro/falso |
Resultado JSON
[
{
"name": "name",
"description": "This role has not been used during the observation window.",
"lastRefreshTime": "2023-07-28T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 68
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com",
"/iamPolicy/bindings/*/role": "roles/monitoring.admin"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"member": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com",
"removedRole": "roles/monitoring.admin",
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "",
"recommenderSubtype": "REMOVE_ROLE",
"associatedInsights": [
{
"insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/"
}
],
"priority": "P4"
}
]
Painel de casos
A ação fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully found recommendation in the Google Cloud Recommender
service. |
A ação foi concluída. |
No recommendations were found in the Google Cloud Recommender
service.
|
Os dados não estão disponíveis. |
Error executing action ACTION_NAME. |
A ação retornou um erro. |
Listar recomendações
Liste as recomendações disponíveis no serviço Recommender.
Entidades
A ação não é executada em entidades.
Entradas de ação
Para configurar a ação, use os seguintes parâmetros:
| Parâmetros | |
|---|---|
Recommendation Filter |
Opcional. Especifica o filtro para buscar as recomendações. O parâmetro precisa ser uma string em um dos seguintes formatos:
Se nenhum valor for fornecido, a ação vai buscar o ID do projeto na conta de serviço configurada. |
Recommendation Location |
Obrigatório. Especifica o Google Cloud local para buscar recomendações. O padrão é |
Recommendation State |
Opcional. Especifica o estado da recomendação a ser retornado. O padrão é Os valores possíveis são:
|
Recommendation Priority |
Opcional. Especifica a prioridade de uma recomendação a ser retornada. É possível especificar vários valores como uma string separada por vírgulas. |
Recommender Subtype |
Opcional. Especifica o subtipo de recomendador retornado. O padrão é Os valores possíveis são:
|
Max Records To Return |
Opcional. Especifica quantos registros serão retornados. Se nenhum valor for fornecido, a ação vai retornar 50 registros por padrão. |
Saídas de ação
| Tipo de saída da ação | |
|---|---|
| Anexo do Painel de Casos | N/A |
| Link do Painel de Casos | N/A |
| Tabela do painel de casos | Disponível |
| Tabela de enriquecimento | N/A |
| Insight de entidade | N/A |
| Insight | N/A |
| Resultado JSON | Disponível |
| Widget OOTB | N/A |
| Resultado do script | Disponível |
Resultado do script
| Nome do resultado do script | Valor |
|---|---|
| is_success | Verdadeiro/falso |
Resultado JSON
[
{
"name": "name",
"description": "This role has not been used during the observation window.",
"lastRefreshTime": "2023-07-27T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 68
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "serviceAccount:SERVICE_ACCOUNT_ID",
"/iamPolicy/bindings/*/role": "roles/monitoring.admin"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/",
"member": "serviceAccount:SERVICE_ACCOUNT_ID",
"removedRole": "roles/monitoring.admin",
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "",
"recommenderSubtype": "REMOVE_ROLE",
"associatedInsights": [
{
"insight": "projects/i/locations/global/insightTypes/"
}
],
"priority": "P4"
},
{
"name": "name",
"description": "This role has not been used during the observation window.",
"lastRefreshTime": "2023-07-27T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 5
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:USER_ID@example.com",
"/iamPolicy/bindings/*/role": "roles/chroniclesm.admin"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects",
"member": "user:USER_ID@example.com",
"removedRole": "roles/chroniclesm.admin",
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "",
"recommenderSubtype": "REMOVE_ROLE",
"associatedInsights": [
{
"insight": "projects"
}
],
"priority": "P4"
}
]
Painel de casos
A ação fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully found recommendations for the provided criteria in
the Google Cloud Recommender service. |
A ação foi concluída. |
No recommendations were found for the provided criteria in the
Google Cloud Recommender service. |
Não há dados disponíveis. |
Error executing action ACTION_NAME. |
A ação retornou um erro. |
A ação fornece a seguinte tabela de casos:
| Recomendações disponíveis | |
|---|---|
| Colunas |
|
Ping
Teste a conectividade com o serviço do Recomendador usando os parâmetros fornecidos na página de configuração da integração na guia "Marketplace do Google SecOps".
Entidades
A ação não é executada em entidades.
Entradas de ação
N/A
Saídas de ação
| Tipo de saída da ação | |
|---|---|
| Anexo do Painel de Casos | N/A |
| Link do Painel de Casos | N/A |
| Tabela do painel de casos | N/A |
| Tabela de enriquecimento | N/A |
| Insight de entidade | N/A |
| Insight | N/A |
| Resultado JSON | N/A |
| Widget OOTB | N/A |
| Resultado do script | Disponível |
Resultado do script
| Nome do resultado do script | Valor |
|---|---|
| is_success | Verdadeiro/falso |
Painel de casos
A ação fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully connected to the Google Cloud Recommender service
with the provided connection parameters! |
A ação foi concluída. |
Failed to connect to the Google Cloud Recommender service!
|
A ação retornou um erro. |
Recomendação de atualização
Atualize a recomendação no serviço Recommender.
Entidades
A ação não é executada em entidades.
Entradas de ação
Use os seguintes parâmetros para configurar a ação:
| Parâmetros | |
|---|---|
Recommendation name |
Obrigatório. Especifica o nome da recomendação a ser atualizada. A ação aceita vários valores como uma string separada por vírgulas. Exemplo de entrada esperada:
|
Recommendation State |
Opcional. Especifica o estado para o qual a recomendação vai mudar. O padrão é Os valores possíveis são:
|
Recommendation Result |
Opcional. Especifica o resultado para o qual a recomendação será alterada. O padrão é Os valores possíveis são:
|
Saídas de ação
| Tipo de saída da ação | |
|---|---|
| Anexo do Painel de Casos | N/A |
| Link do Painel de Casos | N/A |
| Tabela do painel de casos | N/A |
| Tabela de enriquecimento | N/A |
| Insight de entidade | N/A |
| Insight | N/A |
| Resultado JSON | Disponível |
| Widget OOTB | N/A |
| Resultado do script | Disponível |
Resultado do script
| Nome do resultado do script | Valor |
|---|---|
| is_success | Verdadeiro/falso |
Resultado JSON
[
{
"name": "name",
"description": "This role has not been used during the observation window.",
"lastRefreshTime": "2023-07-28T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 68
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com",
"/iamPolicy/bindings/*/role": "roles/monitoring.admin"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
"member": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com",
"removedRole": "roles/monitoring.admin",
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "",
"recommenderSubtype": "REMOVE_ROLE",
"associatedInsights": [
{
"insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/"
}
],
"priority": "P4"
}
]
Painel de casos
A ação fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully updated recommendation in the Google Cloud
Recommender service. |
A ação foi concluída. |
No recommendations were found in the Google Cloud Recommender
service.
|
Os dados não estão disponíveis. |
Error executing action ACTION_NAME. |
A ação retornou um erro. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.