Coletar registros do F5 AFM
Versão do analisador:23.0
Este documento explica como ingerir registros do F5 Advanced Firewall Management (AFM) no Google Security Operations usando o agente Bindplane.
O F5 BIG-IP AFM é um módulo de firewall de rede que gera mensagens syslog para ações de regras de firewall (aceitar, descartar, rejeitar), eventos de inteligência de IP e erros de TCP. O analisador extrai campos de registros formatados em CSV ou syslog e os mapeia para o modelo de dados unificado (UDM).
Antes de começar
Verifique se você tem os pré-requisitos a seguir:
- Uma instância do Google SecOps
- Windows Server 2016 ou mais recente ou host Linux com
systemd - Conectividade de rede entre o agente do Bindplane e o dispositivo F5 BIG-IP
- Se você estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas de acordo com os requisitos do agente do Bindplane.
- Acesso privilegiado ao F5 BIG-IP e ao F5 Advanced Firewall Management
Receber o arquivo de autenticação de ingestão do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Agentes de coleta.
- Baixe o arquivo de autenticação de ingestão.
Salve o arquivo com segurança no sistema em que o agente do Bindplane será instalado.
Receber o ID de cliente do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
Copie e salve o ID do cliente na seção Detalhes da organização.
Instalar o agente do BindPlane
Instale o agente do Bindplane no seu sistema operacional Windows ou Linux de acordo com as instruções a seguir.
Instalação do Windows
- Abra o prompt de comando ou o PowerShell como administrador.
Execute este comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietAguarde a conclusão da instalação.
Execute o seguinte comando para confirmar a instalação:
sc query observiq-otel-collectorO serviço vai aparecer como EM EXECUÇÃO.
Instalação do Linux
- Abra um terminal com privilégios de root ou sudo.
Execute este comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shAguarde a conclusão da instalação.
Execute o seguinte comando para confirmar a instalação:
sudo systemctl status observiq-otel-collectorO serviço vai aparecer como ativo (em execução).
Outros recursos de instalação
Para mais opções de instalação e solução de problemas, consulte o guia de instalação do agente do Bindplane.
Configurar o agente do Bindplane para ingerir syslog e enviar ao Google SecOps
Localizar o arquivo de configuração
Linux:
sudo nano /etc/bindplane-agent/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Editar o arquivo de configuração
Substitua todo o conteúdo de
config.yamlpela seguinte configuração:receivers: tcplog: listen_address: "0.0.0.0:5145" exporters: chronicle/f5_afm: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: F5_AFM raw_log_field: body service: pipelines: logs/f5_afm_to_chronicle: receivers: - tcplog exporters: - chronicle/f5_afm
Parâmetros de configuração
Substitua os seguintes marcadores de posição:
Configuração do receptor:
listen_address: endereço IP e porta a serem detectados:0.0.0.0para ouvir em todas as interfaces (recomendado)- A porta
5145é usada para geração de registros de alta velocidade do F5 AFM. Ajuste para corresponder à sua configuração do F5.
Configuração do exportador:
creds_file_path: caminho completo para o arquivo de autenticação de ingestão:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id: ID do cliente copiado do console do Google SecOpsendpoint: URL do endpoint regional:- EUA:
malachiteingestion-pa.googleapis.com - Europa:
europe-malachiteingestion-pa.googleapis.com - Ásia:
asia-southeast1-malachiteingestion-pa.googleapis.com - Consulte a lista completa em Endpoints regionais.
- EUA:
Salvar o arquivo de configuração
- Depois de editar, salve o arquivo:
- Linux: pressione
Ctrl+O,EntereCtrl+X. - Windows: clique em Arquivo > Salvar.
- Linux: pressione
Reinicie o agente do Bindplane para aplicar as mudanças.
Para reiniciar o agente do Bindplane no Linux, execute o seguinte comando:
sudo systemctl restart observiq-otel-collectorVerifique se o serviço está em execução:
sudo systemctl status observiq-otel-collectorVerifique se há erros nos registros:
sudo journalctl -u observiq-otel-collector -f
Para reiniciar o agente do Bindplane em Windows, escolha uma das seguintes opções:
Prompt de comando ou PowerShell como administrador:
net stop observiq-otel-collector && net start observiq-otel-collectorConsole de serviços:
- Pressione
Win+R, digiteservices.msce pressione Enter. - Localize o Coletor do OpenTelemetry da observIQ.
- Clique com o botão direito do mouse e selecione Reiniciar.
Verifique se o serviço está em execução:
sc query observiq-otel-collectorVerifique se há erros nos registros:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Pressione
Ativar o F5 BIG-IP Advanced Firewall Manager
- Faça login no console de gerenciamento do dispositivo BIG-IP.
- Acesse Sistema > Licença.
- Verifique se o Advanced Firewall Manager está licenciado e ativado.
- Para ativar o Gerenciador avançado de firewall, acesse Sistema > Recurso > Provisionamento.
- Marque a caixa de seleção na coluna Provisionamento e selecione Nominal na lista.
- Clique em Enviar.
Configurar o pool de geração de registros no F5 AFM
- Acesse Tráfego local > Pools.
- Clique em Criar.
- Informe os seguintes detalhes de configuração:
- Nome: insira um nome para o pool de registros (por exemplo, logging_pool).
- Monitor de integridade: na lista Disponível, selecione TCP e clique em <<.
- Na guia Recurso, selecione o Pool de registros que você criou antes na lista Nome do nó.
- No campo Endereço, insira o endereço IP do agente do Bindplane.
- No campo Porta do serviço, insira
5145ou outra porta conforme definido no agente do Bindplane. - Clique em Adicionar.
- Clique em Concluir.
Configurar o destino do registro formatado no F5 AFM
- Acesse Sistema > Registros > Configuração > Destinos de registro.
- Clique em Criar.
- Informe os seguintes detalhes de configuração:
- Nome: insira um nome para o destino do formato de geração de registros (por exemplo,
Logging_Format_Destination). - Descrição: digite uma descrição.
- Tipo: selecione Syslog remoto.
- Formato Syslog: selecione Syslog.
- Destino de registro de alta velocidade: selecione o destino de registro de alta velocidade (por exemplo,
Logging_HSL_Destination).
- Nome: insira um nome para o destino do formato de geração de registros (por exemplo,
- Clique em Concluído.
Configurar o editor de registros no F5 AFM
- Acesse Sistema > Registros > Configuração > Editores de registros.
- Clique em Criar.
- Informe os seguintes detalhes de configuração:
- Nome: insira um nome para o publisher (por exemplo,
Log_Publisher). - Descrição: digite uma descrição.
- Destinos: selecione o nome do destino de registro que você criou na etapa Configurar o pool de registros no F5 AFM e clique em << para adicionar itens à lista Selecionado.
- Nome: insira um nome para o publisher (por exemplo,
Configurar o perfil de geração de registros no F5 AFM
- Acesse Segurança > Registros de eventos > Perfil de geração de registros.
- Clique em Criar.
- Informe os seguintes detalhes de configuração:
- Nome: insira um nome para o perfil de registro (por exemplo, Logging_Profile).
- Firewall de rede: marque a caixa de seleção Ativado.
- Editor: selecione o editor de registros que você configurou antes (por exemplo,
Log_Publisher). - Correspondências de regra de registro: marque as caixas de seleção Aceitar, Descartar e Rejeitar.
- Registrar erros de IP: marque a caixa de seleção Ativado.
- Registrar erros de TCP: marque a caixa de seleção Ativado.
- Registrar eventos TCP: marque a caixa de seleção Ativado.
- Formato de armazenamento: selecione Lista de campos.
- Delimitador: insira
,(vírgula) como o delimitador de eventos. - Opções de armazenamento: selecione todas as opções na lista Itens disponíveis e clique em <<.
- Na guia Inteligência de IP, selecione o editor de registros que você configurou (por exemplo,
Log_Publisher).
- Clique em Concluído.
Configurar a associação de perfil de servidor virtual no F5 AFM
- Acesse Tráfego local > Servidores virtuais.
- Selecione o servidor virtual que você quer modificar.
- Acesse a guia Segurança > Políticas.
- Na lista Perfil de registro, selecione Ativado.
- No campo Perfil, selecione Logging_Profile e clique em <<.
- Clique em Atualizar.
Tabela de mapeamento de UDM
| Campo de registro | Mapeamento de UDM | Lógica |
|---|---|---|
| acl_policy_name | security_result.detection_fields.acl_policy_name | Valor de column22 se o formato de registro for SYSLOG. Caso contrário, valor de column13. |
| acl_policy_type | security_result.detection_fields.acl_policy_type | Valor de column21 se o formato de registro for SYSLOG. Caso contrário, valor de column18. |
| acl_rule_name | security_result.rule_name | Valor de column23 se o formato de registro for SYSLOG. Caso contrário, valor de column11. |
| acl_rule_uuid | security_result.rule_id | Valor do campo "acl_rule_uuid" do padrão grok. |
| ação | security_result.action | Se o valor de column25 for Drop, Reject ou Block, então BLOCK. Caso contrário, se o valor de column25 for Accept, Accept decisively, Established ou Allow, então ALLOW. |
| attackID | security_result.detection_fields.attackID | Valor de "column12" se o formato de registro for CSV sem src_ip |
| bigip_hostname | intermediary.hostname | Valor de column2 se o formato de registro for SYSLOG, caso contrário, valor de column3 |
| bigip_ip | intermediary.ip | Valor de column2 se o formato de registro for SYSLOG. Caso contrário, valor de column1. |
| context_name | additional.fields.context_name.string_value | Valor de column4 se o formato de registro for SYSLOG. Caso contrário, valor de column10 se houver src_ip. Caso contrário, valor de column5. |
| context_type | additional.fields.context_type.string_value | Valor de column3 se o formato de registro for SYSLOG. Caso contrário, valor de column4 se houver src_ip. Caso contrário, valor de column4. |
| dest_fqdn | additional.fields.dest_fqdn.string_value | Valor de column7 se o formato de registro for SYSLOG, caso contrário, valor de column13 |
| dest_geo | additional.fields.dest_geo.string_value | Valor de column14 |
| dest_ip | target.asset.ip, target.ip | Valor de column8 se o formato de registro for SYSLOG. Caso contrário, valor de column6 se houver src_ip. Caso contrário, valor de column6. |
| dest_port | target.port | Valor de column10 se o formato de registro for SYSLOG. Caso contrário, valor de column8 se houver src_ip. Caso contrário, valor de column8. |
| drop_reason | security_result.summary | Valor de column26 se o formato de registro for SYSLOG. Caso contrário, valor de column19. |
| eventId | additional.fields.eventId.string_value | Valor capturado no padrão grok |
| flow_id | additional.fields.flow_id.string_value | Valor de column29 se o formato de registro for SYSLOG. Caso contrário, valor de column17. |
| loglevel | security_result.severity | Se o valor do campo "loglevel" do padrão grok for warning, debug ou notice, será "MEDIUM". Se o valor for info ou informational, será "INFORMATIONAL". Se o valor for err ou error, será "HIGH". Se o valor for alert, crit ou emer, será "CRITICAL". |
| packetsReceived | network.received_packets | Valor de column15 se o formato de registro for CSV sem src_ip |
| difusão reversa que restaura | target.application | Valor do campo de processo do padrão grok |
| protocol_number_src | network.ip_protocol | Valor de "column12" se o formato do registro for SYSLOG. Caso contrário, o valor extraído da variável "ip_protocol_out". |
| route_domain | additional.fields.route_domain.string_value | Valor de column13 se o formato de registro for SYSLOG. Caso contrário, valor de column9. |
| source_fqdn | additional.fields.source_fqdn.string_value | Valor de column5 se o formato de registro for SYSLOG, caso contrário, valor de column7 |
| src_geo | additional.fields.src_geo.string_value | Valor de column8 |
| src_ip | principal.asset.ip, principal.ip | Valor de column6 se o formato de registro for SYSLOG. Caso contrário, valor de column9 se o formato de registro for CSV sem src_ip. Caso contrário, valor de column5. |
| src_port | principal.port | Valor de column9 se o formato de registro for SYSLOG. Caso contrário, valor de column7 se o formato de registro for CSV sem src_ip. Caso contrário, valor de column7. |
| ts | metadata.event_timestamp | Valor do campo "ts" do padrão grok |
| vlan | additional.fields.vlan.string_value | Valor de column11 se o formato de registro for SYSLOG. Caso contrário, valor de column21. |
| metadata.event_type | Se src_ip e dest_ip existirem, NETWORK_CONNECTION. Se apenas src_ip existir, STATUS_UPDATE. Caso contrário, GENERIC_EVENT. | |
| metadata.log_type | F5_AFM | |
| metadata.product_name | Gerenciamento avançado de firewall | |
| metadata.vendor_name | F5 | |
partition |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
level |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
tty |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
attempts |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
start |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
end |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
prin_ip |
event.idm.read_only_udm.principal.ip e event.idm.read_only_udm.principal.asset.ip |
Mapeado do registro de mudanças |
internal_tag |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
src_zone |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
dest_zone |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
translated_dest_ip |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
translated_dest_port |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
translated_source_ip |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
translated_source_port |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
syslog_reporter_host |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
sa_translation_pool |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
sa_translation_type |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
translated_route_domain |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
send_to_vs |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
src_zone |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
dest_zone |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
acl_policy_name |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
acl_policy_type |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
chronicle_log_type |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
chronicle_namespace |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
flow_id |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
vlan |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
route_domain |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
partition_name |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
source_ipint_categories |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
src_geo |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
source_fqdn |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
dest_ipint_categories |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
dst_geo |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
dest_fqdn |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
acl_rule_name |
event.idm.read_only_udm.security_result.rule_name |
Mapeado do registro de mudanças |
acl_rule_id |
event.idm.read_only_udm.security_result.rule_id |
Mapeado do registro de mudanças |
action |
event.idm.read_only_udm.security_result.action |
Mapeado do registro de mudanças |
bigip_mgmt_ip |
event.idm.read_only_udm.intermediary.ip |
Mapeado do registro de mudanças |
context_name |
event.idm.read_only_udm.target.resource.name |
Mapeado do registro de mudanças |
context_type |
event.idm.read_only_udm.target.resource.type |
Mapeado do registro de mudanças |
date_time |
event.idm.read_only_udm.metadata.event_timestamp |
Mapeado do registro de mudanças |
dest_ip |
event.idm.read_only_udm.target.ip e event.idm.read_only_udm.target.asset.ip |
Mapeado do registro de mudanças |
net.peer.ip |
event.idm.read_only_udm.target.ip e event.idm.read_only_udm.target.asset.ip |
Mapeado do registro de mudanças |
dest_port |
event.idm.read_only_udm.target.port |
Mapeado do registro de mudanças |
net.peer.port |
event.idm.read_only_udm.target.port |
Mapeado do registro de mudanças |
device_version |
event.idm.read_only_udm.metadata.product_version |
Mapeado do registro de mudanças |
drop_reason |
event.idm.read_only_udm.security_result.summary |
Mapeado do registro de mudanças |
hostname |
event.idm.read_only_udm.principal.hostname e event.idm.read_only_udm.principal.asset.hostname |
Mapeado do registro de mudanças |
ip_protocol |
event.idm.read_only_udm.network.ip_protocol |
Mapeado do registro de mudanças |
source_ip |
event.idm.read_only_udm.principal.ip e event.idm.read_only_udm.principal.asset.ip |
Mapeado do registro de mudanças |
net.host.ip |
event.idm.read_only_udm.principal.ip e event.idm.read_only_udm.principal.asset.ip |
Mapeado do registro de mudanças |
source_port |
event.idm.read_only_udm.principal.port |
Mapeado do registro de mudanças |
net.host.port |
event.idm.read_only_udm.principal.port |
Mapeado do registro de mudanças |
errdefs_msg_name |
event.idm.read_only_udm.metadata.product_event_type |
Mapeado do registro de mudanças |
errdefs_msgno |
event.idm.read_only_udm.metadata.product_log_id |
Mapeado do registro de mudanças |
source_user |
event.idm.read_only_udm.principal.user.userid |
Mapeado do registro de mudanças |
source_user_group |
event.idm.read_only_udm.principal.user.group_identifiers |
Mapeado do registro de mudanças |
severity |
event.idm.read_only_udm.security_result.severity_details |
Mapeado do registro de mudanças |
dvchost |
event.idm.read_only_udm.intermediary.hostname e event.idm.read_only_udm.intermediary.asset.hostname |
Mapeado do registro de mudanças |
dvc |
event.idm.read_only_udm.intermediary.ip e event.idm.read_only_udm.intermediary.asset.ip |
Mapeado do registro de mudanças |
c6a2 |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
F5SrcZone |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
F5SrcFqdn |
event.idm.read_only_udm.principal.resource.attribute.labels |
Mapeado do registro de mudanças |
F5SrcUser |
event.idm.read_only_udm.principal.user.attribute.labels |
Mapeado do registro de mudanças |
c6a3 |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
F5DstZone |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
F5DstVlan |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
F5DstFqdn |
event.idm.read_only_udm.target.resource.attribute.labels |
Mapeado do registro de mudanças |
F5SendToVs |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
F5SrcIpiCategories |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
F5DstIpiCategories |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
module |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
tid |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
cpu |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
cmd_line |
event.idm.read_only_udm.target.process.command_line |
Mapeado do registro de mudanças |
msg_data |
event.idm.read_only_udm.security_result.summary |
Mapeado do registro de mudanças |
pid |
event.idm.read_only_udm.principal.process.pid |
Mapeado do registro de mudanças |
user |
event.idm.read_only_udm.principal.user.userid |
Mapeado do registro de mudanças |
folder_path |
event.idm.read_only_udm.principal.file.full_path |
Mapeado do registro de mudanças |
status |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
cmd_data |
event.idm.read_only_udm.additional.fields |
Mapeado do registro de mudanças |
target_ip |
event.idm.read_only_udm.target.ip e event.idm.read_only_udm.target.asset.ip |
Mapeado do registro de mudanças |
desc |
metadata.description |
Mapeado do registro de mudanças |
prin_port |
principal.port |
Mapeado do registro de mudanças |
target_port |
target.port |
Mapeado do registro de mudanças |
ts2 |
metadata.event_timestamp |
Mapeado do registro de mudanças |
tls_ver |
network.tls.version |
Mapeado do registro de mudanças |
cipher |
network.tls.cipher |
Mapeado do registro de mudanças |
prod_event_type |
metadata.product_event_type |
Mapeado do registro de mudanças |
path |
target.url |
Mapeado do registro de mudanças |
response_size |
network.sent_bytes |
Mapeado do registro de mudanças |
received_size |
network.received_bytes |
Mapeado do registro de mudanças |
usr |
principal.user.userid |
Mapeado do registro de mudanças |
schema_version |
target.resource.attribute.labels |
Mapeado do registro de mudanças |
severity_info |
security_result.severity_details |
Mapeado do registro de mudanças |
target_pid |
target.process.pid |
Mapeado do registro de mudanças |
additional1 |
additional.fields |
Mapeado do registro de mudanças |
dvc |
intermediary.hostname |
Mapeado do registro de mudanças |
metadata.event_type |
USER_UNCATEGORIZED |
Mapeado do registro de mudanças |
prin_ip |
principal.ip |
Mapeado do registro de mudanças |
F5FlowID |
additional.fields |
Mapeado do registro de mudanças |
F5TranslatedVlan |
additional.fields |
Mapeado do registro de mudanças |
F5SrcTranslationType |
additional.fields |
Mapeado do registro de mudanças |
F5SrcTranslationPool |
additional.fields |
Mapeado do registro de mudanças |
F5SrcGeo |
additional.fields |
Mapeado do registro de mudanças |
F5DstGeo |
additional.fields |
Mapeado do registro de mudanças |
F5RouteDomain |
additional.fields |
Mapeado do registro de mudanças |
Column12 |
security_result.detection_fields |
Mapeado do registro de mudanças |
Column14 |
security_result.action |
Mapeado do registro de mudanças |
Registro de alterações
Ver o registro de alterações deste analisador
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.