Recolha registos de Google Cloud IoT
Este guia explica como exportar Google Cloud registos de IoT para o Google Security Operations através do Cloud Storage. O analisador extrai campos de registos formatados em JSON e, em seguida, mapeia esses campos para os campos correspondentes no esquema UDM do Google SecOps, transformando, em última análise, os dados de registo não processados num formato estruturado adequado para a análise de segurança.
Antes de começar
Certifique-se de que tem os seguintes pré-requisitos:
- Instância do Google SecOps.
- A IoT está configurada e ativa no seu Google Cloud ambiente.
- Acesso privilegiado a Google Cloud.
Crie um contentor do Google Cloud Storage
- Inicie sessão na Google Cloud consola.
Aceda à página Contentores do Cloud Storage.
Clique em Criar.
Na página Criar um depósito, introduza as informações do depósito. Após cada um dos passos seguintes, clique em Continuar para avançar para o passo seguinte:
Na secção Começar, faça o seguinte:
- Introduza um nome exclusivo que cumpra os requisitos de nome do contentor; por exemplo, cloudiot-logs.
Para ativar o espaço de nomes hierárquico, clique na seta de expansão para expandir a secção Otimizar para cargas de trabalho orientadas para ficheiros e com grande volume de dados e, de seguida, selecione Ativar espaço de nomes hierárquico neste contentor.
Para adicionar uma etiqueta de grupo, clique na seta de expansão para expandir a secção Etiquetas.
Clique em Adicionar etiqueta e especifique uma chave e um valor para a etiqueta.
Na secção Escolha onde quer armazenar os seus dados, faça o seguinte:
- Selecione um Tipo de localização.
Use o menu de tipo de localização para selecionar uma Localização onde os dados de objetos no seu contentor vão ser armazenados permanentemente.
Para configurar a replicação entre contentores, expanda a secção Configurar replicação entre contentores.
Na secção Escolha uma classe de armazenamento para os seus dados, selecione uma classe de armazenamento predefinida para o contentor ou selecione Autoclass para a gestão automática da classe de armazenamento dos dados do seu contentor.
Na secção Escolha como controlar o acesso a objetos, selecione não para aplicar a prevenção de acesso público e selecione um modelo de controlo de acesso para os objetos do seu contentor.
Na secção Escolha como proteger os dados de objetos, faça o seguinte:
- Selecione qualquer uma das opções em Proteção de dados que quer definir para o seu contentor.
- Para escolher como os dados de objetos vão ser encriptados, clique na seta de expansão com a etiqueta Encriptação de dados e selecione um Método de encriptação de dados.
Clique em Criar.
Configure a exportação de registos no Google Cloud IoT
- Inicie sessão na conta do Google Cloud com a sua conta privilegiada.
- Pesquise e selecione Registo na barra de pesquisa.
- No Explorador de registos, filtre os registos escolhendo Cloud IoT Core e clique em Aplicar.
- Clique em Mais ações.
- Clique em Criar destino.
- Forneça as seguintes configurações:
- Detalhes do destino: introduza um nome e uma descrição.
- Clicar em Seguinte.
- Destino do fluxo: selecione Contentor do Cloud Storage.
- Contentor do Cloud Storage: selecione o contentor criado anteriormente ou crie um novo.
- Clicar em Seguinte.
- Escolha os registos a incluir no destino: um registo predefinido é preenchido quando seleciona uma opção no contentor do Cloud Storage.
- Clicar em Seguinte.
- Opcional: escolha os registos a filtrar do sink: selecione os registos que não quer sincronizar.
Clique em Criar destino.
Na consola do GCP, aceda a Registo > Router de registos.
Clique em Criar destino.
Configure feeds
Para configurar um feed, siga estes passos:
- Aceda a Definições do SIEM > Feeds.
- Clique em Adicionar novo feed.
- Na página seguinte, clique em Configurar um único feed.
- No campo Nome do feed, introduza um nome para o feed; por exemplo, GCP Cloud IoT Logs.
- Selecione Google Cloud Storage V2 como Tipo de origem.
- Selecione GCP Cloud IoT como o Tipo de registo.
- Clique em Obter conta de serviço como a conta de serviço do Chronicle.
- Clicar em Seguinte.
Especifique valores para os seguintes parâmetros de entrada:
- URI do contentor de armazenamento: Google Cloud URL do contentor de armazenamento no formato
gs://my-bucket/<value>
. Opções de eliminação de origens: selecione a opção de eliminação de acordo com a sua preferência.
Idade máxima do ficheiro: inclui ficheiros modificados no último número de dias. A predefinição é 180 dias
- URI do contentor de armazenamento: Google Cloud URL do contentor de armazenamento no formato
Clicar em Seguinte.
Reveja a nova configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.
Tabela de mapeamento da UDM
Campo de registo | Mapeamento de UDM | Lógica |
---|---|---|
insertId | metadata.product_log_id | Mapeado diretamente a partir do campo insertId . |
jsonPayload.eventType | metadata.product_event_type | Mapeado diretamente a partir do campo jsonPayload.eventType . |
jsonPayload.protocol | network.application_protocol | Mapeado diretamente a partir do campo jsonPayload.protocol . |
jsonPayload.serviceName | target.application | Mapeado diretamente a partir do campo jsonPayload.serviceName . |
jsonPayload.status.description | metadata.description | Mapeado diretamente a partir do campo jsonPayload.status.description . |
jsonPayload.status.message | security_result.description | Mapeado diretamente a partir do campo jsonPayload.status.message . |
labels.device_id | principal.asset_id | O valor é definido como Device ID: concatenado com o valor do campo labels.device_id . |
receiveTimestamp | metadata.event_timestamp | Analisado a partir do campo receiveTimestamp e usado para preencher events.timestamp e metadata.event_timestamp . |
resource.labels.device_num_id | target.resource.product_object_id | Mapeado diretamente a partir do campo resource.labels.device_num_id . |
resource.labels.location | target.location.name | Mapeado diretamente a partir do campo resource.labels.location . |
resource.labels.project_id | target.resource.name | Mapeado diretamente a partir do campo resource.labels.project_id . |
resource.type | target.resource.resource_subtype | Mapeado diretamente a partir do campo resource.type . |
gravidade | security_result.severity | Mapeado a partir do campo severity com base na seguinte lógica:– Se severity for DEFAULT , DEBUG , INFO ou NOTICE , então security_result.severity é definido como INFORMATIONAL .: se severity for WARNING ou ERROR , security_result.severity é definido como MEDIUM .- Se severity for CRITICAL , ALERT ou EMERGENCY , security_result.severity é definido como HIGH . |
N/A | metadata.log_type | Codificado para GCP_CLOUDIOT . |
N/A | metadata.vendor_name | Codificado para Google Cloud Platform . |
N/A | metadata.event_type | Codificado para GENERIC_EVENT . |
N/A | metadata.product_name | Codificado para GCP_CLOUDIOT . |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.