Coletar registros de instâncias do AWS EC2
Neste documento, explicamos como configurar os registros de instâncias do AWS EC2 no Google Security Operations para monitoramento e análise. O analisador extrai dados dos registros JSON de reserva de instâncias, reestrutura e renomeia campos para se conformar ao UDM, processando vários tipos de dados e estruturas aninhadas, incluindo interfaces de rede, grupos e tags, além de gerar relacionamentos de recursos e metadados. Ele também realiza o tratamento de erros e descarta mensagens JSON malformadas.
Antes de começar
- Verifique se você tem uma instância do Google SecOps.
- Verifique se você tem acesso privilegiado à AWS.
Configurar o AWS IAM e o S3
- Crie um bucket do Amazon S3 seguindo este guia do usuário: Criar um bucket.
- Salve o Nome e a Região do bucket para uso futuro.
- Crie um usuário seguindo este guia: Como criar um usuário do IAM.
- Selecione o Usuário criado.
- Selecione a guia Credenciais de segurança.
- Clique em Criar chave de acesso na seção Chaves de acesso.
- Selecione Serviço de terceiros como o caso de uso.
- Clique em Próxima.
- Opcional: adicione uma tag de descrição.
- Clique em Criar chave de acesso.
- Clique em Fazer o download do arquivo CSV para salvar a chave de acesso e a chave de acesso secreta para uso futuro.
- Clique em Concluído.
- Selecione a guia Permissões.
- Clique em Adicionar permissões na seção Políticas de permissões.
- Selecione Adicionar permissões.
- Selecione Anexar políticas diretamente.
- Pesquise e selecione a política AmazonS3FullAccess.
- Clique em Próxima.
- Clique em Adicionar permissões
Configurar o EC2 para enviar registros aos Logs do CloudWatch
Use o SSH para se conectar à instância do EC2, fornecendo seu par de chaves para autenticação.
ssh -i your-key.pem ec2-user@your-ec2-public-ip
Instale o agente do CloudWatch Logs:
- Para instalar o agente do CloudWatch Logs no Amazon Linux, use este comando:
sudo yum install -y awslogs
- Para instalar o agente do CloudWatch Logs no Ubuntu, use o seguinte comando:
sudo apt-get install -y awslogs
Abra o arquivo de configuração dos Logs do CloudWatch:
sudo vi /etc/awslogs/awslogs.conf
Crie um script que extrai esses metadados da instância de registro e os grava em um arquivo:
#!/bin/bash echo "Architecture: $(curl -s http://169.254.169.254/latest/meta-data/architecture)" >> /var/log/instance_metadata.log echo "AmiLaunchIndex: $(curl -s http://169.254.169.254/latest/meta-data/ami-launch-index)" >> /var/log/instance_metadata.log echo "BootMode: $(curl -s http://169.254.169.254/latest/meta-data/boot-mode)" >> /var/log/instance_metadata.log
Salve o script como
/etc/init.d/metadata_script.sh
e execute-o na inicialização da instância usando crontab ourc.local
.Abra o arquivo de configuração do agente do CloudWatch Logs:
sudo vi /etc/awslogs/awslogs.conf
Adicione o código abaixo ao arquivo de configuração:
[/var/log/messages] file = /var/log/messages log_group_name = /ec2/system/logs log_stream_name = {instance_id} [/var/log/secure] file = /var/log/secure log_group_name = /ec2/security/logs log_stream_name = {instance_id} [/var/log/auth.log] file = /var/log/auth.log log_group_name = /ec2/auth/logs log_stream_name = {instance_id} [/var/log/httpd/access_log] file = /var/log/httpd/access_log log_group_name = /ec2/application/apache/access_logs log_stream_name = {instance_id} [/var/log/httpd/error_log] file = /var/log/httpd/error_log log_group_name = /ec2/application/apache/error_logs log_stream_name = {instance_id}
Salve a configuração e saia do editor.
Inicie o agente do CloudWatch Logs:
- No Amazon Linux:
sudo service awslogs start
- No Ubuntu:
sudo service awslogs start
Verificar se o agente está em execução:
sudo service awslogs status
Configurar as permissões do IAM para Lambda e S3
No console do AWS IAM, crie um novo papel do IAM com as seguintes permissões:
logs:PutSubscriptionFilter
logs:DescribeLogGroups
logs:GetLogEvents
s3:PutObject
Anexe essa função à sua função Lambda, que vai exportar os registros para o S3.
Configurar o Lambda para exportar registros para o S3
Acesse o console da Lambda e crie uma nova função.
import boto3 import gzip from io import BytesIO s3 = boto3.client('s3') logs = boto3.client('logs') def lambda_handler(event, context): log_group = event['logGroup'] log_stream = event['logStream'] log_events = logs.get_log_events( logGroupName=log_group, logStreamName=log_stream, startFromHead=True ) log_data = "\n".join([event['message'] for event in log_events['events']]) # Compress and upload to S3 compressed_data = gzip.compress(log_data.encode('utf-8')) s3.put_object( Bucket='your-s3-bucket-name', Key='logs/ec2-log.gz', Body=compressed_data ) ```
- Substitua
your-s3-bucket-name
pelo nome real do seu bucket do S3.
- Substitua
Anexe o papel do IAM à função Lambda criada anteriormente.
No console do CloudWatch, acesse a seção de registros.
Selecione o grupo de registro, por exemplo,
/ec2/system/logs
.Clique em Ações > Criar filtro de assinatura.
Defina o destino como a função Lambda criada anteriormente.
Configurar um feed no Google SecOps para processar registros de instâncias do EC2 da AWS
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo.
- No campo Nome do feed, insira um nome para o feed, por exemplo, AWS EC2 Instance Logs.
- Selecione Amazon S3 como o Tipo de origem.
- Selecione Instância do AWS EC2 como o Tipo de registro.
- Clique em Próxima.
Especifique valores para os seguintes parâmetros de entrada:
- Região: a região em que o bucket do Amazon S3 está localizado.
- URI do S3: o URI do bucket.
s3://your-log-bucket-name/
- Substitua
your-log-bucket-name
pelo nome real do bucket.
- Substitua
- O URI é: selecione Diretório ou Diretório que inclui subdiretórios.
Opções de exclusão de origem: selecione a opção de exclusão de acordo com sua preferência.
ID da chave de acesso: a chave de acesso do usuário com acesso ao bucket do S3.
Chave de acesso secreta: a chave secreta do usuário com acesso ao bucket do S3.
Namespace do recurso: o namespace do recurso.
Rótulos de ingestão: o rótulo a ser aplicado aos eventos desse feed.
Clique em Próxima.
Revise a configuração do novo feed na tela Finalizar e clique em Enviar.
Tabela de mapeamento do UDM
Campo de registro | Mapeamento do UDM | Lógica |
---|---|---|
Architecture |
entity.entity.asset.attribute.labels.key=instances_set_architecture , entity.entity.asset.attribute.labels.value |
O valor é extraído diretamente do campo Instances.Architecture no registro bruto. |
AmiLaunchIndex |
entity.entity.asset.attribute.labels.key=instances_set_ami_launch_index , entity.entity.asset.attribute.labels.value |
O valor é extraído diretamente do campo Instances.AmiLaunchIndex no registro bruto. |
BlockDeviceMapping.Ebs.AttachTime |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_block_device_mapping_ebs_attach_time , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.BlockDeviceMapping.Ebs.AttachTime . |
BlockDeviceMapping.Ebs.DeleteOnTermination |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_block_device_mapping_ebs_delete_on_termination , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.BlockDeviceMapping.Ebs.DeleteOnTermination . |
BlockDeviceMapping.Ebs.Status |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_block_device_mapping_ebs_volume_status , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.BlockDeviceMapping.Ebs.Status . |
BlockDeviceMapping.Ebs.VolumeID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=VOLUME |
O valor é extraído de Instances.BlockDeviceMapping.Ebs.VolumeID . |
BlockDeviceMapping.Name |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_block_device_mapping_device_name , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.BlockDeviceMapping.Name . |
BootMode |
entity.entity.asset.attribute.labels.key=instances_set_boot_mode , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.BootMode . |
CapacityReservationID |
entity.entity.asset.attribute.labels.key=instances_set_capacity_reservation_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.CapacityReservationID . |
CapacityReservationSpecification.CapacityReservationPreference |
entity.entity.asset.attribute.labels.key=instances_set_capacity_reservation_specification_capacity_reservation_preference , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.CapacityReservationSpecification.CapacityReservationPreference . |
CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationID |
entity.entity.asset.attribute.labels.key=instances_set_capacity_reservation_specification_capacity_reservation_target_capacity_reservation_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationID . |
CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationResourceGroupArn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=Capacity Reservation Arn |
O valor é extraído de Instances.CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationResourceGroupArn . |
ClientToken |
entity.entity.asset.attribute.labels.key=instances_set_client_token , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ClientToken . |
CPU.AmdSevSnp |
entity.entity.asset.attribute.labels.key=instances_set_cpu_options_amd_sev_snp , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.CPU.AmdSevSnp . |
CPU.CoreCount |
entity.entity.asset.hardware.cpu_number_cores |
O valor é extraído de Instances.CPU.CoreCount . |
CPU.ThreadsPerCore |
entity.entity.asset.attribute.labels.key=instances_set_cpu_options_threads_per_core , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.CPU.ThreadsPerCore . |
CurrentInstanceBootMode |
entity.entity.asset.attribute.labels.key=instances_set_current_instance_boot_mode , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.CurrentInstanceBootMode . |
DNSName |
entity.entity.network.dns_domain |
O valor é extraído de Instances.DNSName . |
EbsOptimized |
entity.entity.asset.attribute.labels.key=instances_set_ebs_optimized , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.EbsOptimized . |
ElasticGpuAssociationSet.ElasticGpuAssociationID |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_association_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ElasticGpuAssociationSet.ElasticGpuAssociationID . |
ElasticGpuAssociationSet.ElasticGpuAssociationState |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_association_state , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ElasticGpuAssociationSet.ElasticGpuAssociationState . |
ElasticGpuAssociationSet.ElasticGpuAssociationTime |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_association_time , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ElasticGpuAssociationSet.ElasticGpuAssociationTime . |
ElasticGpuAssociationSet.ElasticGpuID |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ElasticGpuAssociationSet.ElasticGpuID . |
ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorArn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=Elastic Interface Accelerator Arn |
O valor é extraído de Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorArn . |
ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationID |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_elastic_inference_accelerator_association_set_elastic_inference_accelerator_association_id , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationID . |
ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationState |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_elastic_inference_accelerator_association_set_elastic_inference_accelerator_association_state , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationState . |
ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationTime |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_elastic_inference_accelerator_association_set_elastic_inference_accelerator_association_time , entity.entity.resource_ancestors.attribute.labels.value |
O valor é extraído de Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationTime . |
EnaSupport |
entity.entity.asset.attribute.labels.key=instances_set_ena_support , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.EnaSupport . |
EnclaveOptions.Enabled |
entity.entity.asset.attribute.labels.key=instances_set_enclave_options_enabled , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.EnclaveOptions.Enabled . |
GroupSet.GroupID |
entity.entity.group.product_object_id , entity.entity.group.attribute.labels.key=group_set_group_id , entity.entity.group.attribute.labels.value , entity.entity.group.attribute.labels.key=instances_set_group_set_group_id , entity.entity.group.attribute.labels.value , entity.entity.group.attribute.labels.key=instances_set_network_interface_set_group_set_group_id , entity.entity.group.attribute.labels.value |
O valor é extraído de GroupSet.GroupID . O primeiro GroupID na matriz é mapeado para entity.entity.group.product_object_id . Os valores de GroupID subsequentes são mapeados como rótulos. |
GroupSet.GroupName |
entity.entity.group.group_display_name , entity.entity.group.attribute.labels.key=group_set_group_name , entity.entity.group.attribute.labels.value , entity.entity.group.attribute.labels.key=instances_set_group_set_group_name , entity.entity.group.attribute.labels.value , entity.entity.group.attribute.labels.key=instances_set_network_interface_set_group_set_group_name , entity.entity.group.attribute.labels.value |
O valor é extraído de GroupSet.GroupName . O primeiro GroupName na matriz é mapeado para entity.entity.group.group_display_name . Os valores GroupName subsequentes são mapeados como rótulos. |
HibernationOptions |
entity.entity.asset.attribute.labels.key=instances_set_hibernation_options , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.HibernationOptions . |
HibernationOptions.Configured |
entity.entity.asset.attribute.labels.key=instances_set_hibernation_options_configured , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.HibernationOptions.Configured . |
Hypervisor |
entity.entity.asset.attribute.labels.key=instances_set_hypervisor , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Hypervisor . |
IamInstanceProfile.Arn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=Instance Profile Arn |
O valor é extraído de Instances.IamInstanceProfile.Arn . |
IamInstanceProfile.ID |
entity.entity.resource_ancestors.product_object_id |
O valor é extraído de Instances.IamInstanceProfile.ID . |
ImageID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=IMAGE |
O valor é extraído de Instances.ImageID . |
InstanceID |
entity.metadata.product_entity_id , entity.entity.asset.asset_id |
O valor é extraído de Instances.InstanceID . |
InstanceLifecycle |
entity.entity.asset.attribute.labels.key=instances_set_instance_lifecycle , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.InstanceLifecycle . |
InstanceState.Code |
entity.entity.asset.attribute.labels.key=instances_set_instance_state_code , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.InstanceState.Code . |
InstanceState.Name |
entity.entity.asset.deployment_status |
O valor é derivado de Instances.InstanceState.Name . Se o valor for running , o campo UDM será definido como ACTIVE . Se o valor for shutting-down ou stopping , o campo do UDM será definido como PENDING_DECOMMISSION . Se o valor for stopped ou terminated , o campo do UDM será definido como DECOMMISSIONED . |
InstanceType |
entity.entity.asset.category |
O valor é extraído de Instances.InstanceType . |
IPAddress |
entity.entity.asset.ip |
O valor é extraído de Instances.IPAddress . |
Ipv6Address |
entity.entity.asset.ip |
O valor é extraído de Instances.Ipv6Address . |
KernelID |
entity.entity.asset.attribute.labels.key=instances_set_kernel_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.KernelID . |
KeyName |
entity.entity.asset.attribute.labels.key=instances_set_key_name , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.KeyName . |
LaunchTime |
entity.metadata.creation_timestamp |
O valor é extraído de Instances.LaunchTime . |
LicenseSet.LicenseConfigurationArn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=License Configuration Arn |
O valor é extraído de Instances.LicenseSet.LicenseConfigurationArn . |
MaintenanceOptions |
entity.entity.asset.attribute.labels.key=instances_set_maintenance_options_auto_recovery , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MaintenanceOptions . |
MetadataOptions.HTTPEndpoint |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_endpoint , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MetadataOptions.HTTPEndpoint . |
MetadataOptions.HTTPProtocolIpv6 |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_protocol_ipv6 , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MetadataOptions.HTTPProtocolIpv6 . |
MetadataOptions.HTTPPutResponseHopLimit |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_put_response_hop_limit , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MetadataOptions.HTTPPutResponseHopLimit . |
MetadataOptions.HTTPTokens |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_tokens , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MetadataOptions.HTTPTokens . |
MetadataOptions.InstanceMetadataTags |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_instance_metadata_tags , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MetadataOptions.InstanceMetadataTags . |
MetadataOptions.State |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_state , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.MetadataOptions.State . |
Monitoring.State |
entity.entity.asset.attribute.labels.key=instances_set_monitoring_state , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Monitoring.State . |
NetworkInterfaceSet.Association.CarrierIP |
entity.entity.asset.nat_ip |
O valor é extraído de Instances.NetworkInterfaceSet.Association.CarrierIP . |
NetworkInterfaceSet.Association.CustomerOwnedIP |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_association_customer_owned_ip , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Association.CustomerOwnedIP . |
NetworkInterfaceSet.Association.IPOwnerID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_association_ip_owner_id , entity.entity.asset.attribute.labels.value , entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_private_ip_addresses_set_association_ip_owner_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Association.IPOwnerID . |
NetworkInterfaceSet.Association.PublicDNSName |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_association_public_dns_name , entity.entity.asset.attribute.labels.value , entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_private_ip_addresses_set_association_public_dns_name , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Association.PublicDNSName . |
NetworkInterfaceSet.Association.PublicIP |
entity.entity.asset.ip |
O valor é extraído de Instances.NetworkInterfaceSet.Association.PublicIP . |
NetworkInterfaceSet.Attachment.AttachTime |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_attach_time , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Attachment.AttachTime . |
NetworkInterfaceSet.Attachment.AttachmentID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_attachment_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Attachment.AttachmentID . |
NetworkInterfaceSet.Attachment.DeleteOnTermination |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_delete_on_termination , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Attachment.DeleteOnTermination . |
NetworkInterfaceSet.Attachment.DeviceIndex |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_device_index , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Attachment.DeviceIndex . |
NetworkInterfaceSet.Attachment.NetworkCardIndex |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_network_card_index , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Attachment.NetworkCardIndex . |
NetworkInterfaceSet.Attachment.Status |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_status , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Attachment.Status . |
NetworkInterfaceSet.Description |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_description , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Description . |
NetworkInterfaceSet.GroupSet.GroupID |
entity.entity.group.attribute.labels.key=instances_set_network_interface_set_group_set_group_id , entity.entity.group.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.GroupSet.GroupID . |
NetworkInterfaceSet.GroupSet.GroupName |
entity.entity.group.attribute.labels.key=instances_set_network_interface_set_group_set_group_name , entity.entity.group.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.GroupSet.GroupName . |
NetworkInterfaceSet.InterfaceType |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_interface_type , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.InterfaceType . |
NetworkInterfaceSet.Ipv6AddressesSet.Ipv6Address |
entity.entity.asset.ip |
O valor é extraído de Instances.NetworkInterfaceSet.Ipv6AddressesSet.Ipv6Address . |
NetworkInterfaceSet.Ipv6AddressesSet.IsPrimaryIpv6 |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_ipv6_addresses_set_is_primary_ipv6 , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Ipv6AddressesSet.IsPrimaryIpv6 . |
NetworkInterfaceSet.MacAddress |
entity.entity.asset.mac |
O valor é extraído de Instances.NetworkInterfaceSet.MacAddress . |
NetworkInterfaceSet.NetworkInterfaceID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_network_interface_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.NetworkInterfaceID . |
NetworkInterfaceSet.OwnerID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_owner_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.OwnerID . |
NetworkInterfaceSet.PrivateDNSName |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_private_dns_name , entity.entity.asset.attribute.labels.value , entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_private_ip_addresses_set_private_dns_name , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.PrivateDNSName . |
NetworkInterfaceSet.PrivateIPAddress |
entity.entity.asset.ip |
O valor é extraído de Instances.NetworkInterfaceSet.PrivateIPAddress . |
NetworkInterfaceSet.PrivateIPAddressesSet.Primary |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_private_ip_addresses_set_primary , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.PrivateIPAddressesSet.Primary . |
NetworkInterfaceSet.PrivateIPAddressesSet.PrivateIPAddress |
entity.entity.asset.ip |
O valor é extraído de Instances.NetworkInterfaceSet.PrivateIPAddressesSet.PrivateIPAddress . |
NetworkInterfaceSet.SourceDestCheck |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_source_dest_check , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.SourceDestCheck . |
NetworkInterfaceSet.Status |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_status , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.Status . |
NetworkInterfaceSet.SubnetID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_subnet_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.SubnetID . |
NetworkInterfaceSet.VpcID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_vpc_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.NetworkInterfaceSet.VpcID . |
OutpostArn |
entity.relations.entity.asset.product_object_id |
O valor é extraído de Instances.OutpostArn . |
Placement.Affinity |
entity.entity.asset.attribute.labels.key=instances_set_placement_affinity , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Placement.Affinity . |
Placement.AvailabilityZone |
entity.entity.asset.attribute.cloud.availability_zone |
O valor é extraído de Instances.Placement.AvailabilityZone . |
Placement.GroupID |
entity.entity.group.attribute.labels.key=instances_set_placement_group_id , entity.entity.group.attribute.labels.value |
O valor é extraído de Instances.Placement.GroupID . |
Placement.GroupName |
entity.entity.group.attribute.labels.key=instances_set_placement_group_name , entity.entity.group.attribute.labels.value |
O valor é extraído de Instances.Placement.GroupName . |
Placement.HostID |
entity.relations.entity.asset.asset_id |
O valor é extraído de Instances.Placement.HostID . |
Placement.HostResourceGroupArn |
entity.relations.entity.asset.attribute.labels.key=instances_set_placement_host_resource_group_arn , entity.relations.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Placement.HostResourceGroupArn . |
Placement.PartitionNumber |
entity.entity.asset.attribute.labels.key=instances_set_placement_partition_number , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Placement.PartitionNumber . |
Placement.SpreadDomain |
entity.entity.asset.attribute.labels.key=instances_set_placement_spread_domain , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Placement.SpreadDomain . |
Placement.Tenancy |
entity.entity.asset.attribute.labels.key=instances_set_placement_tenancy , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Placement.Tenancy . |
PlatformDetails |
entity.entity.asset.attribute.labels.key=instances_set_platform_details , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.PlatformDetails . |
PrivateDNSName |
entity.entity.network.dns.questions.name |
O valor é extraído de Instances.PrivateDNSName . |
PrivateDNSNameOptions.EnableResourceNameDnsAAAARecord |
entity.entity.network.dns.questions.type |
Se o valor for true , o campo UDM será definido como 28. |
PrivateDNSNameOptions.EnableResourceNameDnsARecord |
entity.entity.network.dns.questions.type |
Se o valor for true , o campo da UDM será definido como 1. |
PrivateDNSNameOptions.HostnameType |
entity.entity.asset.attribute.labels.key=instances_set_private_dns_name_options_hostname_type , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.PrivateDNSNameOptions.HostnameType . |
PrivateIPAddress |
entity.entity.asset.ip |
O valor é extraído de Instances.PrivateIPAddress . |
ProductCodes.ProductCode |
entity.entity.asset.attribute.labels.key=instances_set_product_codes_product_code , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ProductCodes.ProductCode . |
ProductCodes.Type |
entity.entity.asset.attribute.labels.key=instances_set_product_codes_type , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.ProductCodes.Type . |
RamdiskID |
entity.entity.asset.attribute.labels.key=instances_set_ramdisk_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.RamdiskID . |
Reason |
entity.entity.asset.attribute.labels.key=instances_set_reason , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.Reason . |
ReservationID |
entity.additional.fields.key=reservation_id , entity.additional.fields.value.string_value |
O valor é extraído de ReservationID . |
RequesterID |
entity.additional.fields.key=requester_id , entity.additional.fields.value.string_value |
O valor é extraído de RequesterID . |
RootDeviceName |
entity.entity.asset.attribute.labels.key=instances_set_root_device_name , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.RootDeviceName . |
RootDeviceType |
entity.entity.asset.attribute.labels.key=instances_set_root_device_type , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.RootDeviceType . |
SourceDestCheck |
entity.entity.asset.attribute.labels.key=instances_set_source_dest_check , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.SourceDestCheck . |
SpotInstanceRequestID |
entity.entity.asset.attribute.labels.key=instances_set_spot_instance_request_id , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.SpotInstanceRequestID . |
SriovNetSupport |
entity.entity.asset.attribute.labels.key=instances_set_sriov_net_support , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.SriovNetSupport . |
StateReason |
entity.entity.asset.attribute.labels.key=instances_set_state_reason_code , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.StateReason . |
StateReason.Code |
entity.entity.asset.attribute.labels.key=instances_set_state_reason_code , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.StateReason.Code . |
StateReason.Message |
entity.entity.asset.attribute.labels.key=instances_set_state_reason_message , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.StateReason.Message . |
SubnetID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=SUBNET |
O valor é extraído de Instances.SubnetID . |
TagSet.Key |
entity.entity.asset.attribute.labels.key |
O valor é extraído de Instances.TagSet.Key . |
TagSet.Value |
entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.TagSet.Value . |
TpmSupport |
entity.entity.asset.attribute.labels.key=instances_set_tpm_support , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.TpmSupport . |
UsageOperation |
entity.entity.asset.attribute.labels.key=instances_set_usage_operation , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.UsageOperation . |
UsageOperationUpdateTime |
entity.entity.asset.attribute.labels.key=instances_set_usage_operation_update_time , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.UsageOperationUpdateTime . |
VirtualizationType |
entity.entity.asset.attribute.labels.key=instances_set_virtualization_type , entity.entity.asset.attribute.labels.value |
O valor é extraído de Instances.VirtualizationType . |
VpcID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=VPC_NETWORK |
O valor é extraído de Instances.VpcID . |
collection_time |
entity.metadata.collected_timestamp |
O valor é extraído diretamente do campo collection_time no registro bruto. Fixado em AMAZON_WEB_SERVICES . Fixado em AMAZON_WEB_SERVICES para os tipos de recurso IMAGE, VOLUME, SUBNET, VPC_NETWORK, Arn do perfil de instância, Arn da reserva de capacidade, Arn do acelerador de interface elástica e Arn da configuração da licença. Fixado em SERVER . Fixado em Amazon EC2 . Fixado em AWS . Fixado em ASSET se Instances.Placement.HostID estiver presente e não estiver vazio. Fixado em EXECUTES se Instances.Placement.HostID estiver presente e não estiver vazio. Fixado em ASSET. |
Alterações
2024-01-31
- Adição de suporte ao novo esquema.
2023-12-14
- Parser recém-criado.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.