AWS EC2-Instanzprotokolle erfassen
In diesem Dokument wird beschrieben, wie Sie AWS EC2-Instanzprotokolle für das Monitoring und die Analyse in Google Security Operations konfigurieren. Der Parser extrahiert Daten aus JSON-Logs zur Instanzreservierung, strukturiert und benennt Felder so um, dass sie dem UDM entsprechen, verarbeitet verschiedene Datentypen und verschachtelte Strukturen, einschließlich Netzwerkschnittstellen, Gruppen und Tags, und generiert gleichzeitig Asset-Beziehungen und Metadaten. Außerdem wird die Fehlerbehandlung durchgeführt und fehlerhaft formatierte JSON-Nachrichten werden verworfen.
Hinweise
- Sie benötigen eine Google SecOps-Instanz.
- Sie benötigen erhöhte Zugriffsrechte für AWS.
AWS IAM und S3 konfigurieren
- Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu der Anleitung unter Bucket erstellen.
- Speichern Sie den Namen und die Region des Buckets für später.
- Erstellen Sie einen Nutzer gemäß der Anleitung IAM-Nutzer erstellen.
- Wählen Sie den erstellten Nutzer aus.
- Wählen Sie den Tab Sicherheitsanmeldedaten aus.
- Klicken Sie im Bereich Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
- Wählen Sie als Anwendungsfall Drittanbieterdienst aus.
- Klicken Sie auf Weiter.
- Optional: Fügen Sie ein Beschreibungs-Tag hinzu.
- Klicken Sie auf Zugriffsschlüssel erstellen.
- Klicken Sie auf CSV-Datei herunterladen, um den Zugriffsschlüssel und den Secret Access Key zur späteren Verwendung zu speichern.
- Klicken Sie auf Fertig.
- Wählen Sie den Tab Berechtigungen aus.
- Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
- Wählen Sie Berechtigungen hinzufügen aus.
- Wählen Sie Richtlinien direkt anhängen aus.
- Suchen Sie nach der Richtlinie AmazonS3FullAccess und wählen Sie sie aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Berechtigungen hinzufügen.
EC2 so konfigurieren, dass Protokolle an CloudWatch-Protokolle gesendet werden
Stellen Sie mit SSH eine Verbindung zu Ihrer EC2-Instanz her und geben Sie Ihr Schlüsselpaar für die Authentifizierung an.
ssh -i your-key.pem ec2-user@your-ec2-public-ip
CloudWatch Logs-Agent installieren:
- Verwenden Sie den folgenden Befehl, um den CloudWatch Logs-Agent unter Amazon Linux zu installieren:
sudo yum install -y awslogs
- Verwenden Sie den folgenden Befehl, um den CloudWatch Logs-Agent unter Ubuntu zu installieren:
sudo apt-get install -y awslogs
Öffnen Sie die Konfigurationsdatei für CloudWatch Logs:
sudo vi /etc/awslogs/awslogs.conf
Erstellen Sie ein Script, das diese Metadaten für die Protokollinstanz abruft und in eine Datei schreibt:
#!/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
Speichern Sie das Script als
/etc/init.d/metadata_script.sh
und führen Sie es beim Starten der Instanz mit crontab oderrc.local
aus.Öffnen Sie die Konfigurationsdatei für den CloudWatch Logs-Agenten:
sudo vi /etc/awslogs/awslogs.conf
Fügen Sie der Konfigurationsdatei den folgenden Abschnitt hinzu:
[/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}
Speichern Sie die Konfiguration und beenden Sie den Editor.
Starten Sie den CloudWatch Logs-Agent:
- Unter Amazon Linux:
sudo service awslogs start
- Unter Ubuntu:
sudo service awslogs start
Prüfen Sie, ob der Agent ausgeführt wird:
sudo service awslogs status
IAM-Berechtigungen für Lambda und S3 konfigurieren
Erstellen Sie in der AWS IAM-Konsole eine neue IAM-Rolle mit den folgenden Berechtigungen:
logs:PutSubscriptionFilter
logs:DescribeLogGroups
logs:GetLogEvents
s3:PutObject
Verknüpfen Sie diese Rolle mit Ihrer Lambda-Funktion, die die Protokolle nach S3 exportiert.
Lambda für den Export von Protokollen in S3 konfigurieren
Rufen Sie die Lambda Console auf und erstellen Sie eine neue Funktion.
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 ) ```
- Ersetzen Sie
your-s3-bucket-name
durch den tatsächlichen Namen Ihres S3-Buckets.
- Ersetzen Sie
Verknüpfen Sie die IAM-Rolle mit der zuvor erstellten Lambda-Funktion.
Rufen Sie in der CloudWatch-Konsole den Bereich Protokolle auf.
Wählen Sie die Protokollgruppe aus, z. B.
/ec2/system/logs
.Klicken Sie auf Aktionen > Abofilter erstellen.
Legen Sie als Ziel die zuvor erstellte Lambda-Funktion fest.
Feed in Google SecOps für die Aufnahme von AWS EC2-Instanzprotokollen konfigurieren
- Gehen Sie zu SIEM-Einstellungen > Feeds.
- Klicken Sie auf Neu hinzufügen.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. AWS EC2-Instanzprotokolle.
- Wählen Sie als Quelltyp Amazon S3 aus.
- Wählen Sie AWS EC2-Instanz als Logtyp aus.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- Region: die Region, in der sich der Amazon S3-Bucket befindet.
- S3-URI: der Bucket-URI.
s3://your-log-bucket-name/
- Ersetzen Sie
your-log-bucket-name
durch den tatsächlichen Namen des Buckets.
- Ersetzen Sie
- URI ist ein: Wählen Sie Verzeichnis oder Verzeichnis mit Unterverzeichnissen aus.
Optionen zum Löschen der Quelle: Wählen Sie die gewünschte Löschoption aus.
Access Key ID: Der Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket.
Secret Access Key: Der geheime Schlüssel des Nutzers mit Zugriff auf den S3-Bucket.
Asset-Namespace: der Asset-Namespace.
Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll.
Klicken Sie auf Weiter.
Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
Architecture |
entity.entity.asset.attribute.labels.key=instances_set_architecture , entity.entity.asset.attribute.labels.value |
Der Wert wird direkt aus dem Feld Instances.Architecture im Rohprotokoll übernommen. |
AmiLaunchIndex |
entity.entity.asset.attribute.labels.key=instances_set_ami_launch_index , entity.entity.asset.attribute.labels.value |
Der Wert wird direkt aus dem Feld Instances.AmiLaunchIndex im Rohprotokoll übernommen. |
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 |
Der Wert wird aus Instances.BlockDeviceMapping.Ebs.AttachTime übernommen. |
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 |
Der Wert wird aus Instances.BlockDeviceMapping.Ebs.DeleteOnTermination übernommen. |
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 |
Der Wert wird aus Instances.BlockDeviceMapping.Ebs.Status übernommen. |
BlockDeviceMapping.Ebs.VolumeID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=VOLUME |
Der Wert wird aus Instances.BlockDeviceMapping.Ebs.VolumeID übernommen. |
BlockDeviceMapping.Name |
entity.entity.resource_ancestors.attribute.labels.key=instances_set_block_device_mapping_device_name , entity.entity.resource_ancestors.attribute.labels.value |
Der Wert wird aus Instances.BlockDeviceMapping.Name übernommen. |
BootMode |
entity.entity.asset.attribute.labels.key=instances_set_boot_mode , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.BootMode übernommen. |
CapacityReservationID |
entity.entity.asset.attribute.labels.key=instances_set_capacity_reservation_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.CapacityReservationID übernommen. |
CapacityReservationSpecification.CapacityReservationPreference |
entity.entity.asset.attribute.labels.key=instances_set_capacity_reservation_specification_capacity_reservation_preference , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.CapacityReservationSpecification.CapacityReservationPreference übernommen. |
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 |
Der Wert wird aus Instances.CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationID übernommen. |
CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationResourceGroupArn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=Capacity Reservation Arn |
Der Wert wird aus Instances.CapacityReservationSpecification.CapacityReservationTarget.CapacityReservationResourceGroupArn übernommen. |
ClientToken |
entity.entity.asset.attribute.labels.key=instances_set_client_token , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ClientToken übernommen. |
CPU.AmdSevSnp |
entity.entity.asset.attribute.labels.key=instances_set_cpu_options_amd_sev_snp , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.CPU.AmdSevSnp übernommen. |
CPU.CoreCount |
entity.entity.asset.hardware.cpu_number_cores |
Der Wert wird aus Instances.CPU.CoreCount übernommen. |
CPU.ThreadsPerCore |
entity.entity.asset.attribute.labels.key=instances_set_cpu_options_threads_per_core , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.CPU.ThreadsPerCore übernommen. |
CurrentInstanceBootMode |
entity.entity.asset.attribute.labels.key=instances_set_current_instance_boot_mode , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.CurrentInstanceBootMode übernommen. |
DNSName |
entity.entity.network.dns_domain |
Der Wert wird aus Instances.DNSName übernommen. |
EbsOptimized |
entity.entity.asset.attribute.labels.key=instances_set_ebs_optimized , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.EbsOptimized übernommen. |
ElasticGpuAssociationSet.ElasticGpuAssociationID |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_association_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ElasticGpuAssociationSet.ElasticGpuAssociationID übernommen. |
ElasticGpuAssociationSet.ElasticGpuAssociationState |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_association_state , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ElasticGpuAssociationSet.ElasticGpuAssociationState übernommen. |
ElasticGpuAssociationSet.ElasticGpuAssociationTime |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_association_time , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ElasticGpuAssociationSet.ElasticGpuAssociationTime übernommen. |
ElasticGpuAssociationSet.ElasticGpuID |
entity.entity.asset.attribute.labels.key=instances_set_elastic_gpu_association_set_elastic_gpu_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ElasticGpuAssociationSet.ElasticGpuID übernommen. |
ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorArn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=Elastic Interface Accelerator Arn |
Der Wert wird aus Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorArn übernommen. |
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 |
Der Wert wird aus Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationID übernommen. |
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 |
Der Wert wird aus Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationState übernommen. |
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 |
Der Wert wird aus Instances.ElasticInferenceAcceleratorAssociationSet.ElasticInferenceAcceleratorAssociationTime übernommen. |
EnaSupport |
entity.entity.asset.attribute.labels.key=instances_set_ena_support , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.EnaSupport übernommen. |
EnclaveOptions.Enabled |
entity.entity.asset.attribute.labels.key=instances_set_enclave_options_enabled , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.EnclaveOptions.Enabled übernommen. |
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 |
Der Wert wird aus GroupSet.GroupID übernommen. Die erste GroupID im Array ist entity.entity.group.product_object_id zugeordnet. Nachfolgende GroupID -Werte werden als Labels zugeordnet. |
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 |
Der Wert wird aus GroupSet.GroupName übernommen. Die erste GroupName im Array ist entity.entity.group.group_display_name zugeordnet. Nachfolgende GroupName -Werte werden als Labels zugeordnet. |
HibernationOptions |
entity.entity.asset.attribute.labels.key=instances_set_hibernation_options , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.HibernationOptions übernommen. |
HibernationOptions.Configured |
entity.entity.asset.attribute.labels.key=instances_set_hibernation_options_configured , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.HibernationOptions.Configured übernommen. |
Hypervisor |
entity.entity.asset.attribute.labels.key=instances_set_hypervisor , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Hypervisor übernommen. |
IamInstanceProfile.Arn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=Instance Profile Arn |
Der Wert wird aus Instances.IamInstanceProfile.Arn übernommen. |
IamInstanceProfile.ID |
entity.entity.resource_ancestors.product_object_id |
Der Wert wird aus Instances.IamInstanceProfile.ID übernommen. |
ImageID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=IMAGE |
Der Wert wird aus Instances.ImageID übernommen. |
InstanceID |
entity.metadata.product_entity_id , entity.entity.asset.asset_id |
Der Wert wird aus Instances.InstanceID übernommen. |
InstanceLifecycle |
entity.entity.asset.attribute.labels.key=instances_set_instance_lifecycle , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.InstanceLifecycle übernommen. |
InstanceState.Code |
entity.entity.asset.attribute.labels.key=instances_set_instance_state_code , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.InstanceState.Code übernommen. |
InstanceState.Name |
entity.entity.asset.deployment_status |
Der Wert wird aus Instances.InstanceState.Name abgeleitet. Wenn der Wert running ist, wird das UDM-Feld auf ACTIVE gesetzt. Wenn der Wert shutting-down oder stopping ist, wird das UDM-Feld auf PENDING_DECOMMISSION gesetzt. Wenn der Wert stopped oder terminated ist, wird das UDM-Feld auf DECOMMISSIONED gesetzt. |
InstanceType |
entity.entity.asset.category |
Der Wert wird aus Instances.InstanceType übernommen. |
IPAddress |
entity.entity.asset.ip |
Der Wert wird aus Instances.IPAddress übernommen. |
Ipv6Address |
entity.entity.asset.ip |
Der Wert wird aus Instances.Ipv6Address übernommen. |
KernelID |
entity.entity.asset.attribute.labels.key=instances_set_kernel_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.KernelID übernommen. |
KeyName |
entity.entity.asset.attribute.labels.key=instances_set_key_name , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.KeyName übernommen. |
LaunchTime |
entity.metadata.creation_timestamp |
Der Wert wird aus Instances.LaunchTime übernommen. |
LicenseSet.LicenseConfigurationArn |
entity.entity.resource_ancestors.name , entity.entity.resource_ancestors.resource_subtype=License Configuration Arn |
Der Wert wird aus Instances.LicenseSet.LicenseConfigurationArn übernommen. |
MaintenanceOptions |
entity.entity.asset.attribute.labels.key=instances_set_maintenance_options_auto_recovery , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MaintenanceOptions übernommen. |
MetadataOptions.HTTPEndpoint |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_endpoint , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MetadataOptions.HTTPEndpoint übernommen. |
MetadataOptions.HTTPProtocolIpv6 |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_protocol_ipv6 , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MetadataOptions.HTTPProtocolIpv6 übernommen. |
MetadataOptions.HTTPPutResponseHopLimit |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_put_response_hop_limit , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MetadataOptions.HTTPPutResponseHopLimit übernommen. |
MetadataOptions.HTTPTokens |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_http_tokens , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MetadataOptions.HTTPTokens übernommen. |
MetadataOptions.InstanceMetadataTags |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_instance_metadata_tags , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MetadataOptions.InstanceMetadataTags übernommen. |
MetadataOptions.State |
entity.entity.asset.attribute.labels.key=instances_set_metadata_options_state , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.MetadataOptions.State übernommen. |
Monitoring.State |
entity.entity.asset.attribute.labels.key=instances_set_monitoring_state , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Monitoring.State übernommen. |
NetworkInterfaceSet.Association.CarrierIP |
entity.entity.asset.nat_ip |
Der Wert wird aus Instances.NetworkInterfaceSet.Association.CarrierIP übernommen. |
NetworkInterfaceSet.Association.CustomerOwnedIP |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_association_customer_owned_ip , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Association.CustomerOwnedIP übernommen. |
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 |
Der Wert wird aus Instances.NetworkInterfaceSet.Association.IPOwnerID übernommen. |
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 |
Der Wert wird aus Instances.NetworkInterfaceSet.Association.PublicDNSName übernommen. |
NetworkInterfaceSet.Association.PublicIP |
entity.entity.asset.ip |
Der Wert wird aus Instances.NetworkInterfaceSet.Association.PublicIP übernommen. |
NetworkInterfaceSet.Attachment.AttachTime |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_attach_time , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Attachment.AttachTime übernommen. |
NetworkInterfaceSet.Attachment.AttachmentID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_attachment_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Attachment.AttachmentID übernommen. |
NetworkInterfaceSet.Attachment.DeleteOnTermination |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_delete_on_termination , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Attachment.DeleteOnTermination übernommen. |
NetworkInterfaceSet.Attachment.DeviceIndex |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_device_index , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Attachment.DeviceIndex übernommen. |
NetworkInterfaceSet.Attachment.NetworkCardIndex |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_network_card_index , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Attachment.NetworkCardIndex übernommen. |
NetworkInterfaceSet.Attachment.Status |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_attachment_status , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Attachment.Status übernommen. |
NetworkInterfaceSet.Description |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_description , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Description übernommen. |
NetworkInterfaceSet.GroupSet.GroupID |
entity.entity.group.attribute.labels.key=instances_set_network_interface_set_group_set_group_id , entity.entity.group.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.GroupSet.GroupID übernommen. |
NetworkInterfaceSet.GroupSet.GroupName |
entity.entity.group.attribute.labels.key=instances_set_network_interface_set_group_set_group_name , entity.entity.group.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.GroupSet.GroupName übernommen. |
NetworkInterfaceSet.InterfaceType |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_interface_type , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.InterfaceType übernommen. |
NetworkInterfaceSet.Ipv6AddressesSet.Ipv6Address |
entity.entity.asset.ip |
Der Wert wird aus Instances.NetworkInterfaceSet.Ipv6AddressesSet.Ipv6Address übernommen. |
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 |
Der Wert wird aus Instances.NetworkInterfaceSet.Ipv6AddressesSet.IsPrimaryIpv6 übernommen. |
NetworkInterfaceSet.MacAddress |
entity.entity.asset.mac |
Der Wert wird aus Instances.NetworkInterfaceSet.MacAddress übernommen. |
NetworkInterfaceSet.NetworkInterfaceID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_network_interface_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.NetworkInterfaceID übernommen. |
NetworkInterfaceSet.OwnerID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_owner_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.OwnerID übernommen. |
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 |
Der Wert wird aus Instances.NetworkInterfaceSet.PrivateDNSName übernommen. |
NetworkInterfaceSet.PrivateIPAddress |
entity.entity.asset.ip |
Der Wert wird aus Instances.NetworkInterfaceSet.PrivateIPAddress übernommen. |
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 |
Der Wert wird aus Instances.NetworkInterfaceSet.PrivateIPAddressesSet.Primary übernommen. |
NetworkInterfaceSet.PrivateIPAddressesSet.PrivateIPAddress |
entity.entity.asset.ip |
Der Wert wird aus Instances.NetworkInterfaceSet.PrivateIPAddressesSet.PrivateIPAddress übernommen. |
NetworkInterfaceSet.SourceDestCheck |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_source_dest_check , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.SourceDestCheck übernommen. |
NetworkInterfaceSet.Status |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_status , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.Status übernommen. |
NetworkInterfaceSet.SubnetID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_subnet_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.SubnetID übernommen. |
NetworkInterfaceSet.VpcID |
entity.entity.asset.attribute.labels.key=instances_set_network_interface_set_vpc_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.NetworkInterfaceSet.VpcID übernommen. |
OutpostArn |
entity.relations.entity.asset.product_object_id |
Der Wert wird aus Instances.OutpostArn übernommen. |
Placement.Affinity |
entity.entity.asset.attribute.labels.key=instances_set_placement_affinity , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Placement.Affinity übernommen. |
Placement.AvailabilityZone |
entity.entity.asset.attribute.cloud.availability_zone |
Der Wert wird aus Instances.Placement.AvailabilityZone übernommen. |
Placement.GroupID |
entity.entity.group.attribute.labels.key=instances_set_placement_group_id , entity.entity.group.attribute.labels.value |
Der Wert wird aus Instances.Placement.GroupID übernommen. |
Placement.GroupName |
entity.entity.group.attribute.labels.key=instances_set_placement_group_name , entity.entity.group.attribute.labels.value |
Der Wert wird aus Instances.Placement.GroupName übernommen. |
Placement.HostID |
entity.relations.entity.asset.asset_id |
Der Wert wird aus Instances.Placement.HostID übernommen. |
Placement.HostResourceGroupArn |
entity.relations.entity.asset.attribute.labels.key=instances_set_placement_host_resource_group_arn , entity.relations.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Placement.HostResourceGroupArn übernommen. |
Placement.PartitionNumber |
entity.entity.asset.attribute.labels.key=instances_set_placement_partition_number , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Placement.PartitionNumber übernommen. |
Placement.SpreadDomain |
entity.entity.asset.attribute.labels.key=instances_set_placement_spread_domain , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Placement.SpreadDomain übernommen. |
Placement.Tenancy |
entity.entity.asset.attribute.labels.key=instances_set_placement_tenancy , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Placement.Tenancy übernommen. |
PlatformDetails |
entity.entity.asset.attribute.labels.key=instances_set_platform_details , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.PlatformDetails übernommen. |
PrivateDNSName |
entity.entity.network.dns.questions.name |
Der Wert wird aus Instances.PrivateDNSName übernommen. |
PrivateDNSNameOptions.EnableResourceNameDnsAAAARecord |
entity.entity.network.dns.questions.type |
Wenn der Wert true ist, wird das UDM-Feld auf 28 gesetzt. |
PrivateDNSNameOptions.EnableResourceNameDnsARecord |
entity.entity.network.dns.questions.type |
Wenn der Wert true ist, wird das UDM-Feld auf „1“ gesetzt. |
PrivateDNSNameOptions.HostnameType |
entity.entity.asset.attribute.labels.key=instances_set_private_dns_name_options_hostname_type , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.PrivateDNSNameOptions.HostnameType übernommen. |
PrivateIPAddress |
entity.entity.asset.ip |
Der Wert wird aus Instances.PrivateIPAddress übernommen. |
ProductCodes.ProductCode |
entity.entity.asset.attribute.labels.key=instances_set_product_codes_product_code , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ProductCodes.ProductCode übernommen. |
ProductCodes.Type |
entity.entity.asset.attribute.labels.key=instances_set_product_codes_type , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.ProductCodes.Type übernommen. |
RamdiskID |
entity.entity.asset.attribute.labels.key=instances_set_ramdisk_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.RamdiskID übernommen. |
Reason |
entity.entity.asset.attribute.labels.key=instances_set_reason , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.Reason übernommen. |
ReservationID |
entity.additional.fields.key=reservation_id , entity.additional.fields.value.string_value |
Der Wert wird aus ReservationID übernommen. |
RequesterID |
entity.additional.fields.key=requester_id , entity.additional.fields.value.string_value |
Der Wert wird aus RequesterID übernommen. |
RootDeviceName |
entity.entity.asset.attribute.labels.key=instances_set_root_device_name , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.RootDeviceName übernommen. |
RootDeviceType |
entity.entity.asset.attribute.labels.key=instances_set_root_device_type , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.RootDeviceType übernommen. |
SourceDestCheck |
entity.entity.asset.attribute.labels.key=instances_set_source_dest_check , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.SourceDestCheck übernommen. |
SpotInstanceRequestID |
entity.entity.asset.attribute.labels.key=instances_set_spot_instance_request_id , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.SpotInstanceRequestID übernommen. |
SriovNetSupport |
entity.entity.asset.attribute.labels.key=instances_set_sriov_net_support , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.SriovNetSupport übernommen. |
StateReason |
entity.entity.asset.attribute.labels.key=instances_set_state_reason_code , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.StateReason übernommen. |
StateReason.Code |
entity.entity.asset.attribute.labels.key=instances_set_state_reason_code , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.StateReason.Code übernommen. |
StateReason.Message |
entity.entity.asset.attribute.labels.key=instances_set_state_reason_message , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.StateReason.Message übernommen. |
SubnetID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=SUBNET |
Der Wert wird aus Instances.SubnetID übernommen. |
TagSet.Key |
entity.entity.asset.attribute.labels.key |
Der Wert wird aus Instances.TagSet.Key übernommen. |
TagSet.Value |
entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.TagSet.Value übernommen. |
TpmSupport |
entity.entity.asset.attribute.labels.key=instances_set_tpm_support , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.TpmSupport übernommen. |
UsageOperation |
entity.entity.asset.attribute.labels.key=instances_set_usage_operation , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.UsageOperation übernommen. |
UsageOperationUpdateTime |
entity.entity.asset.attribute.labels.key=instances_set_usage_operation_update_time , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.UsageOperationUpdateTime übernommen. |
VirtualizationType |
entity.entity.asset.attribute.labels.key=instances_set_virtualization_type , entity.entity.asset.attribute.labels.value |
Der Wert wird aus Instances.VirtualizationType übernommen. |
VpcID |
entity.entity.resource_ancestors.product_object_id , entity.entity.resource_ancestors.resource_type=VPC_NETWORK |
Der Wert wird aus Instances.VpcID übernommen. |
collection_time |
entity.metadata.collected_timestamp |
Der Wert wird direkt aus dem Feld collection_time im Rohprotokoll übernommen. Hartcodiert auf AMAZON_WEB_SERVICES . Für die Ressourcentypen IMAGE, VOLUME, SUBNET, VPC_NETWORK, Instance Profile Arn, Capacity Reservation Arn, Elastic Interface Accelerator Arn und License Configuration Arn ist AMAZON_WEB_SERVICES hartcodiert. Hartcodiert auf SERVER . Hartcodiert auf Amazon EC2 . Hartcodiert auf AWS . Hartcodiert auf ASSET , wenn Instances.Placement.HostID vorhanden und nicht leer ist. Hartcodiert auf EXECUTES , wenn Instances.Placement.HostID vorhanden und nicht leer ist. Hartcodiert in ASSET. |
Änderungen
2024-01-31
- Unterstützung für neues Schema hinzugefügt.
2023-12-14
- Neu erstellter Parser.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten