Salesforce-Protokolle erfassen
In diesem Dokument wird beschrieben, wie Sie Salesforce-Logs erfassen, indem Sie einen Google Security Operations-Feed mit der Third Party API einrichten.
Salesforce ist eine cloudbasierte CRM-Plattform (Customer-Relationship-Management), die Tools für Vertrieb, Kundenservice, Marketing und Analysen bietet. In Salesforce-Protokollen werden Nutzeraktivitäten, Sicherheitsereignisse, Systemänderungen und die API-Nutzung auf der gesamten Plattform erfasst.
Hinweise
Prüfen Sie, ob die folgenden Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz
- Salesforce Enterprise Edition oder höher (API-Zugriff aktiviert)
- Salesforce-Systemadministratorberechtigungen
- OpenSSL ist installiert (für die Zertifikatsgenerierung).
RSA-Schlüsselpaar und ‑Zertifikat generieren
Generieren Sie einen privaten RSA-Schlüssel und ein selbstsigniertes X.509-Zertifikat für die JWT-Signierung.
Privaten Schlüssel generieren
```bash
openssl genrsa -out salesforce_private.key 2048
```
Selbstsigniertes Zertifikat generieren
```bash
openssl req -new -x509 -key salesforce_private.key -out salesforce_certificate.crt -days 365
```
Geben Sie bei Aufforderung die Zertifikatsdetails ein:
- Country Name (Name des Landes): Geben Sie den aus zwei Buchstaben bestehenden Ländercode ein, z. B.
US. - Name des Bundeslandes oder der Provinz: Geben Sie Ihr Bundesland ein (z. B.
California). - Ortsname: Geben Sie Ihre Stadt ein, z. B.
San Francisco. - Name der Organisation: Geben Sie den Namen Ihrer Organisation ein (z. B.
Acme Corp). - Name der Organisationseinheit: Geben Sie die Abteilung ein, z. B.
IT Security. - Allgemeiner Name: Geben Sie einen aussagekräftigen Namen ein, z. B.
Chronicle Integration. - E-Mail-Adresse: Geben Sie die Kontakt-E-Mail-Adresse ein.
Externe Salesforce-Client-App erstellen
Externe Client-Apps sind die empfohlene Methode für die OAuth-Authentifizierung in Salesforce (Spring 26 und höher).
- Melden Sie sich bei Salesforce an.
- Rufen Sie die Einrichtung auf (Zahnradsymbol oben rechts).
- Geben Sie im Feld Schnellsuche
External Client Appsein. - Klicken Sie auf External Client App Manager (Manager für externe Client-Apps).
- Klicken Sie auf Neue externe Client-App.
Grundlegende Informationen konfigurieren
- Geben Sie die folgenden Konfigurationsdetails an:
- Name der externen Client-App: Geben Sie einen aussagekräftigen Namen ein, z. B.
Google SecOps Integration. - API-Name: Wird automatisch basierend auf dem App-Namen ausgefüllt. Sie können die Standardeinstellung beibehalten oder die Nachricht anpassen.
- Kontakt-E-Mail-Adresse: Geben Sie Ihre E-Mail-Adresse ein.
- Distribution State (Bereitstellungsstatus): Wählen Sie Local (Lokal) aus.
- Name der externen Client-App: Geben Sie einen aussagekräftigen Namen ein, z. B.
- Klicken Sie auf Weiter.
OAuth-Einstellungen aktivieren
- Markieren Sie das Kästchen Enable OAuth (OAuth aktivieren).
- Geben Sie die folgenden Konfigurationsdetails an:
- Callback-URL: Geben Sie
https://login.salesforce.com/services/oauth2/callbackein.
- Callback-URL: Geben Sie
- Verschieben Sie im Abschnitt OAuth-Bereiche die folgenden Bereiche von Verfügbare OAuth-Bereiche nach Ausgewählte OAuth-Bereiche:
- Nutzerdaten über APIs verwalten (api)
- Anfragen jederzeit in Ihrem Namen ausführen (refresh_token, offline_access)
JWT-Bearer-Flow aktivieren und Zertifikat hochladen
- Markieren Sie im Bereich Flow Enablement (Ablaufaktivierung) das Kästchen Enable JWT Bearer Flow (JWT-Inhaberablauf aktivieren).
- Der Abschnitt Zertifikats-Upload wird angezeigt.
- Klicken Sie auf Dateien hochladen oder ziehen Sie die Zertifikatsdatei per Drag-and-drop in das Fenster.
- Wählen Sie die zuvor generierte
salesforce_certificate.crt-Datei aus. - Warten Sie, bis der Upload abgeschlossen ist. Der Dateiname des Zertifikats sollte unter der Schaltfläche „Hochladen“ angezeigt werden.
OAuth-Richtlinien konfigurieren
- Im Abschnitt OAuth-Richtlinien:
- Berechtigte Nutzer: Wählen Sie Vom Administrator genehmigte Nutzer sind vorautorisiert aus.
- Klicken Sie auf Speichern.
Consumer-Key abrufen
Nachdem Sie die externe Client-App erstellt haben, rufen Sie den Verbraucherschlüssel für die Chronicle-Konfiguration ab.
- Klicken Sie im External Client App Manager (Manager für externe Client-Apps) auf den Namen Ihrer App (z. B.
Google SecOps Integration). - Rufen Sie den Tab Einstellungen auf.
- Klicken Sie im Bereich OAuth-Einstellungen auf Consumer-Key und ‑Secret.
- Kopieren und speichern Sie den Wert für Consumer Key (Consumer-Schlüssel).
Beispiel für das Consumer-Key-Format:
```
3MVG9IKcPoNiNVBIPjdw4z.pcfRjTFBp7xC8x9k4U8jZ0HlLQdPqX5bKjR8yNzQ9_YvY.8xD3F2W6nXb5YgNx
```
Externe Client-App vorab autorisieren
Salesforce erfordert eine Vorautorisierung für den JWT-Inhaberablauf. Sie können den Zugriff vorab autorisieren, indem Sie die externe Client-App einem Nutzer über einen Berechtigungssatz zuweisen.
Berechtigungssatz erstellen
- Gehen Sie zu Einrichtung> Nutzer > Berechtigungssätze.
- Klicken Sie auf Neu.
- Geben Sie die folgenden Konfigurationsdetails an:
- Label: Geben Sie z. B.
Chronicle Integration Usersein. - API-Name: Wird automatisch basierend auf dem Label ausgefüllt.
- Label: Geben Sie z. B.
- Klicken Sie auf Speichern.
Berechtigungssatz der externen Client-App zuweisen
- Gehen Sie zu Einrichtung > External Client App Manager.
- Klicken Sie auf Ihre externe Client-App (z. B.
Google SecOps Integration). - Klicken Sie auf den Tab Richtlinien.
- Wählen Sie im Bereich App Policies (App-Richtlinien) unter Select Permission Sets (Berechtigungssätze auswählen) Folgendes aus:
- Verschieben Sie Ihren Berechtigungssatz (z. B.
Chronicle Integration Users) von Available Permission Sets (Verfügbare Berechtigungssätze) nach Selected Permission Sets (Ausgewählte Berechtigungssätze).
- Verschieben Sie Ihren Berechtigungssatz (z. B.
- Klicken Sie auf Speichern.
Nutzer Berechtigungssatz zuweisen
- Klicken Sie auf der Detailseite des Berechtigungssatzes auf Zuweisungen verwalten.
- Klicken Sie auf Zuweisungen hinzufügen.
- Klicken Sie das Kästchen neben dem Nutzerkonto an, das für die Chronicle-Integration verwendet werden soll (z. B.
integration@acme.com). - Klicken Sie auf Zuweisen.
- Klicken Sie auf Fertig.
Feed in Google SecOps konfigurieren, um Salesforce-Logs aufzunehmen
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B.
Salesforce EventLogFile. - Wählen Sie Drittanbieter-API als Quelltyp aus.
- Wählen Sie SALESFORCE als Logtyp aus.
- Klicken Sie auf Weiter.
- Geben Sie Werte für die folgenden Eingabeparameter an:
- API-Hostname: Geben Sie den Hostnamen Ihrer Salesforce-Instanz ein (z. B.
acme.my.salesforce.com).
- API-Hostname: Geben Sie den Hostnamen Ihrer Salesforce-Instanz ein (z. B.
* **OAuth JWT Endpoint**: Enter the OAuth token endpoint URL:
- Production orgs: `https://login.salesforce.com/services/oauth2/token`
- Sandbox orgs: `https://test.salesforce.com/services/oauth2/token`
- My Domain: `https://acme.my.salesforce.com/services/oauth2/token`
* **JWT Claims Issuer**: Enter the Consumer Key from the External Client App.
* **JWT Claims Subject**: Enter the Salesforce username of the pre-authorized user (for example, `integration@acme.com`).
* **JWT Claims Audience**: Enter the authorization server URL:
- Production orgs: `https://login.salesforce.com`
- Sandbox orgs: `https://test.salesforce.com`
- My Domain: `https://acme.my.salesforce.com`
* **RSA Private Key**: Paste the complete private key contents including `-----BEGIN PRIVATE KEY-----` and `-----END PRIVATE KEY-----` markers.
So rufen Sie den Inhalt des privaten Schlüssels ab:
```bash
cat salesforce_private.key
```
Kopieren Sie die gesamte Ausgabe, einschließlich der Kopf- und Fußzeilen.
* **Asset namespace**: The [asset namespace](/chronicle/docs/investigation/asset-namespaces).
* **Ingestion labels**: The label to be applied to the events from this feed.
- Klicken Sie auf Weiter.
- Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
Referenz für Salesforce-Instanztypen
Die OAuth-JWT-Endpunkt- und Zielgruppenwerte hängen von Ihrem Salesforce-Instanztyp ab:
| Instance Type | OAuth JWT Endpoint | JWT Claims Audience | API Hostname Format |
| ------------------- | ------------------------------------------------------- | -------------------------------- | -------------------------------------- |
| **Production** | `https://login.salesforce.com/services/oauth2/token` | `https://login.salesforce.com` | `company.my.salesforce.com` |
| **Sandbox** | `https://test.salesforce.com/services/oauth2/token` | `https://test.salesforce.com` | `company--sandbox.sandbox.my.salesforce.com` |
| **My Domain** | `https://domain.my.salesforce.com/services/oauth2/token`| `https://domain.my.salesforce.com` | `domain.my.salesforce.com` |
Note: "My Domain" is recommended for production deployments. "My Domain" provides a custom, branded login URL and is required for certain Salesforce features.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
Account.Name |
target.resource.name |
Der Wert von Account.Name aus dem Rohlog. |
AccountId |
target.resource.id |
Der Wert von AccountId aus dem Rohlog. |
Action |
security_result.description |
Der Wert von Action aus dem Rohlog. |
AdditionalInfo |
- | Nicht dem IDM-Objekt zugeordnet. |
ApiType |
target.application |
Der Wert von ApiType aus dem Rohlog. |
ApiVersion |
- | Nicht dem IDM-Objekt zugeordnet. |
Application |
principal.application |
Der Wert von Application aus dem Rohlog oder „Browser“ für LoginAsEvent, „Integration JWT Token“ für LoginEvent, „SfdcSiqActivityPlatform“ für LoginHistory mit dem Objekttyp LoginHistory, „N/A“ für ApiEvent oder „Browser“ für LoginAsEventStream. |
attributes.url |
target.url |
Der Wert von attributes.url aus dem Rohlog oder bestimmte URLs für verschiedene Ereignistypen aus dem Rohlog. |
attributes.type |
metadata.product_event_type |
Der Wert von attributes.type aus dem Rohlog. |
AuthSessionId |
network.session_id |
Der Wert von AuthSessionId aus dem Rohlog. |
Browser |
principal.resource.name |
Der Wert von Browser aus dem Rohlog oder „Unbekannt“, wenn Browser im Rohlog nicht verfügbar ist und Application „Insights“ ist, oder „Java (Salesforce.com)“ für LoginHistory mit ApiType als „SOAP Partner“ oder „Unbekannt“ für LoginHistory mit Application als „SfdcSiqActivityPlatform“ oder aus data.properties.Browser.str für LoginAsEventStream. |
Case.Subject |
target.resource.name |
Der Wert von Case.Subject aus dem Rohlog. |
CaseId |
target.resource.id |
Der Wert von CaseId aus dem Rohlog. |
cat |
metadata.product_event_type |
Der Wert von cat aus dem Rohlog. |
City |
principal.location.city |
Der Wert von City aus dem Rohlog oder aus LoginGeo.City für LoginHistory. |
Client |
principal.labels |
Der Wert von Client aus dem Rohlog, als Label formatiert. |
CLIENT_IP |
principal.ip, principal.asset.ip |
Der Wert von CLIENT_IP aus dem Rohlog. |
ClientVersion |
- | Nicht dem IDM-Objekt zugeordnet. |
CipherSuite |
network.tls.cipher |
Der Wert von CipherSuite aus dem Rohlog. |
ColumnHeaders |
principal.labels |
Der Wert von ColumnHeaders aus dem Rohlog, als Label formatiert. |
ConnectedAppId |
principal.labels |
Der Wert von ConnectedAppId aus dem Rohlog, als Label formatiert. |
Contact.Name |
target.resource.name |
Der Wert von Contact.Name aus dem Rohlog. |
ContactId |
target.resource.id |
Der Wert von ContactId aus dem Rohlog. |
Country |
principal.location.country_or_region |
Der Wert von Country aus dem Rohlog oder LoginGeo.Country für LoginHistory. |
CreatedByContext |
principal.user.userid |
Der Wert von CreatedByContext aus dem Rohlog. |
CreatedById |
principal.resource.attribute.labels |
Der Wert von CreatedById aus dem Rohlog, als Label formatiert. |
CreatedDate |
metadata.collected_timestamp |
Der Wert von CreatedDate aus dem Rohlog oder der aktuelle Zeitstempel, falls nicht verfügbar. |
CPU_TIME |
target.resource.attribute.labels |
Der Wert von CPU_TIME aus dem Rohlog, als Label formatiert. |
data |
- | Enthält verschiedene Felder, die einzeln extrahiert und zugeordnet werden. |
DATASET_IDS |
target.resource.name |
Der Wert von DATASET_IDS aus dem Rohlog. |
DelegatedOrganizationId |
target.administrative_domain |
Der Wert von DelegatedOrganizationId aus dem Rohlog. |
DelegatedUsername |
observer.user.userid |
Der Wert von DelegatedUsername aus dem Rohlog. |
Description |
metadata.description |
Der Wert von Description aus dem Rohlog. |
DevicePlatform |
principal.resource.type |
Der Wert von DevicePlatform aus dem Rohlog, der zum Extrahieren des Ressourcentyps geparst wurde. |
Display |
metadata.description |
Der Wert von Display aus dem Rohlog. |
DOWNLOAD_FORMAT |
target.resource.attribute.labels |
Der Wert von DOWNLOAD_FORMAT aus dem Rohlog, als Label formatiert. |
Duration |
target.resource.attribute.labels |
Der Wert von Duration aus dem Rohlog, als Label formatiert. |
ENTITY_NAME |
target.resource.attribute.labels |
Der Wert von ENTITY_NAME aus dem Rohlog, als Label formatiert. |
ErrorCode |
security_result.action |
Der Wert von ErrorCode aus dem Rohlog, der in ALLOW oder BLOCK umgewandelt wurde. |
EventDate |
timestamp |
Der Wert von EventDate aus dem Rohlog oder data.properties.TIMESTAMP_DERIVED.str, falls verfügbar, oder data.properties.TIMESTAMP_DERIVED_FIRST.str, falls verfügbar, oder @timestamp, falls verfügbar, oder created_date, falls verfügbar, oder timestamp, falls verfügbar, oder LoginTime für LoginHistory. |
EventIdentifier |
metadata.product_log_id |
Der Wert von EventIdentifier aus dem Rohlog. |
EventType |
metadata.product_event_type |
Der Wert von EventType aus dem Rohlog. |
Id |
principal.user.userid |
Der Wert von Id aus dem Rohprotokoll oder metadata.product_log_id für SetupAuditTrail und andere Ereignisse. |
IdentityUsed |
principal.user.email_addresses |
Der Wert von IdentityUsed aus dem Rohlog. |
Lead.Name |
target.resource.name |
Der Wert von Lead.Name aus dem Rohlog. |
LeadId |
target.resource.id |
Der Wert von LeadId aus dem Rohlog. |
LoginAsCategory |
- | Nicht dem IDM-Objekt zugeordnet. |
LoginGeo.Country |
principal.location.country_or_region |
Der Wert von LoginGeo.Country aus dem Rohlog. |
LoginHistoryId |
- | Nicht dem IDM-Objekt zugeordnet. |
LoginKey |
principal.user.userid, network.session_id |
Der Wert von LoginKey aus dem Rohlog oder CreatedByContext für SetupAuditTrail. |
LoginTime |
timestamp |
Der Wert von LoginTime aus dem Rohlog. |
LoginType |
security_result.description |
Der Wert von LoginType aus dem Rohprotokoll oder „Other Apex API“ für LoginHistory mit ApiType als „SOAP Partner“ oder „Remote Access 2.0“ für LoginHistory mit Application als „SfdcSiqActivityPlatform“. |
LoginUrl |
target.url, principal.url |
Der Wert von LoginUrl aus dem Rohlog. |
LogFile |
principal.resource.attribute.labels |
Der Wert von LogFile aus dem Rohlog, als Label formatiert. |
LogFileContentType |
principal.resource.attribute.labels |
Der Wert von LogFileContentType aus dem Rohlog, als Label formatiert. |
LogFileLength |
principal.resource.attribute.labels |
Der Wert von LogFileLength aus dem Rohlog, als Label formatiert. |
Message |
- | Nicht dem IDM-Objekt zugeordnet. |
METHOD |
network.http.method |
Der Wert von METHOD aus dem Rohlog. |
Name |
target.application |
Der Wert von Name aus dem Rohlog. |
NewValue |
- | Wird in Verbindung mit OldValue verwendet, um security_result.summary zu generieren. |
NUMBER_FIELDS |
target.resource.attribute.labels |
Der Wert von NUMBER_FIELDS aus dem Rohlog, als Label formatiert. |
OldValue |
- | Wird in Verbindung mit NewValue verwendet, um security_result.summary zu generieren. |
Operation |
security_result.description, target.resource.attribute.labels |
Der Wert von Operation aus dem Rohlog oder Display für SetupAuditTrail. |
OperationStatus |
security_result.action |
Der Wert von OperationStatus aus dem Rohlog, der in ALLOW oder BLOCK umgewandelt wurde. |
ORGANIZATION_ID |
target.administrative_domain |
Der Wert von ORGANIZATION_ID aus dem Rohlog. |
OsName |
principal.platform |
Der Wert von OsName aus dem Rohlog. |
OsVersion |
principal.platform_version |
Der Wert von OsVersion aus dem Rohlog. |
Platform |
principal.platform |
Der Wert von Platform aus dem Rohlog oder aus data.properties.OsName.str für LightningUriEventStream oder aus data.properties.OsName.str für LoginEventStream. |
QueriedEntities |
target.resource.name, principal.labels |
Der Wert von QueriedEntities aus dem Rohlog oder component_name für UriEvent und ApiEvent. |
Query |
target.process.command_line, principal.labels |
Der Wert von Query aus dem Rohlog. |
RecordId |
target.resource.id |
Der Wert von RecordId aus dem Rohlog. |
Records |
principal.labels |
Der Wert von Records aus dem Rohlog, als Label formatiert. |
REQUEST_ID |
metadata.product_log_id, target.resource.product_object_id |
Der Wert von REQUEST_ID aus dem Rohlog. |
REQUEST_SIZE |
network.sent_bytes |
Der Wert von REQUEST_SIZE aus dem Rohlog. |
REQUEST_STATUS |
security_result.summary |
Der Wert von REQUEST_STATUS aus dem Rohlog. |
RESPONSE_SIZE |
network.received_bytes |
Der Wert von RESPONSE_SIZE aus dem Rohlog. |
RowsProcessed |
target.resource.attribute.labels |
Der Wert von RowsProcessed aus dem Rohlog, als Label formatiert. |
RUN_TIME |
target.resource.attribute.labels |
Der Wert von RUN_TIME aus dem Rohlog, als Label formatiert. |
SamlEntityUrl |
- | Nicht dem IDM-Objekt zugeordnet. |
SdkAppType |
- | Nicht dem IDM-Objekt zugeordnet. |
SdkAppVersion |
- | Nicht dem IDM-Objekt zugeordnet. |
SdkVersion |
- | Nicht dem IDM-Objekt zugeordnet. |
Section |
security_result.summary |
Der Wert von Section aus dem Rohlog. |
SessionKey |
network.session_id |
Der Wert von SessionKey aus dem Rohlog. |
SessionLevel |
target.resource.attribute.labels |
Der Wert von SessionLevel aus dem Rohlog, als Label formatiert. |
SourceIp |
principal.ip, principal.asset.ip |
Der Wert von SourceIp aus dem Rohlog. |
src |
principal.ip, principal.asset.ip |
Der Wert von src aus dem Rohlog. |
SsoType |
target.resource.attribute.labels |
Der Wert von SsoType aus dem Rohlog, als Label formatiert. |
STATUS_CODE |
network.http.response_code |
Der Wert von STATUS_CODE aus dem Rohlog. |
Status |
security_result.action, security_result.action_details |
Der Wert von Status aus dem Rohlog, der in ALLOW oder BLOCK umgewandelt oder als Aktionsdetails für LoginEventStream verwendet wird. |
Subject |
target.resource.name |
Der Wert von Subject aus dem Rohlog. |
TargetUrl |
- | Nicht dem IDM-Objekt zugeordnet. |
TIMESTAMP |
metadata.collected_timestamp |
Der Wert von TIMESTAMP aus dem Rohlog. |
TIMESTAMP_DERIVED |
timestamp |
Der Wert von TIMESTAMP_DERIVED aus dem Rohlog. |
TlsProtocol |
network.tls.version_protocol |
Der Wert von TlsProtocol aus dem Rohlog. |
URI |
target.url |
Der Wert von URI aus dem Rohlog. |
USER_AGENT |
network.http.user_agent |
Der Wert von USER_AGENT aus dem Rohlog. |
USER_ID |
principal.user.userid |
Der Wert von USER_ID aus dem Rohlog. |
USER_ID_DERIVED |
principal.user.product_object_id, target.resource.attribute.labels |
Der Wert von USER_ID_DERIVED aus dem Rohlog. |
UserId |
principal.user.userid |
Der Wert von UserId aus dem Rohlog. |
USER_TYPE |
target.resource.attribute.labels |
Der Wert von USER_TYPE aus dem Rohlog, als Label formatiert. |
Username |
principal.user.userid, principal.user.email_addresses, target.user.email_addresses |
Der Wert von Username aus dem Rohlog oder src_email für verschiedene Ereignisse oder IdentityUsed für IdentityProviderEventStore oder data.properties.Email.str für Search und SearchAlert oder data.properties.Username.str für LoginAsEventStream und LoginEventStream. |
UserType |
target.resource.attribute.labels |
Der Wert von UserType aus dem Rohlog, als Label formatiert. |
usrName |
principal.user.userid, principal.user.email_addresses, target.user.email_addresses |
Der Wert von usrName aus dem Rohlog. |
VerificationMethod |
target.resource.attribute.labels |
Der Wert von VerificationMethod aus dem Rohlog, als Label formatiert. |
| Parser-Logik | metadata.event_type |
Abgeleitet aus den Feldern event_id und operation oder auf „USER_LOGIN“ für LoginEventStream, „USER_LOGOUT“ für Logout und LogoutEvent, „USER_RESOURCE_UPDATE_CONTENT“ für verschiedene Ereignisse, „USER_RESOURCE_UPDATE_PERMISSIONS“ für PlatformEncryption, „RESOURCE_READ“ für QueuedExecution, ApexExecution, LightningInteraction, LightningPerformance, LightningPageView, URI, RestApi, API, AuraRequest, ApexCallout, OneCommerceUsage, Sites, MetadataApiOperation, OneCommerceUsage, VisualforceRequest, Dashboard, Search, ListViewEvent, „RESOURCE_CREATION“ für UriEvent und TimeBasedWorkflow mit Operation als „Create“ oder „INSERT“, „RESOURCE_WRITTEN“ für UriEvent und LightningUriEvent mit Operation als „Update“, „RESOURCE_DELETION“ für UriEvent mit Operation als „Delete“ oder „ROLLBACK“, „USER_UNCATEGORIZED“ für SetupAuditTrail und AuditTrail, „USER_CHANGE_PASSWORD“ für SetupAuditTrail mit operation als „namedCredentialEncryptedFieldChange“, „GENERIC_EVENT“ für ApiEventStream und LightningUriEventStream oder basierend auf Netzwerk und Prinzipal. |
| Parser-Logik | metadata.ingestion_labels |
Labels, die die Quelle des Ereignisses angeben, entweder „Event Log File“ (Ereignisprotokolldatei), „Real-Time Event Monitoring“ (Echtzeit-Ereignisüberwachung) oder „SetupAuditTrail“ (Setup-Prüfprotokoll). |
| Parser-Logik | metadata.log_type |
Immer auf „SALESFORCE“ festgelegt. |
| Parser-Logik | metadata.product_name |
Immer auf „SALESFORCE“ festgelegt. |
| Parser-Logik | metadata.vendor_name |
Immer auf „SALESFORCE“ festgelegt. |
| Parser-Logik | metadata.url_back_to_product |
Wird aus verschiedenen Feldern wie LoginUrl, attributes.url, data.properties.PageUrl.str und data.properties.LoginUrl.str erstellt. |
| Parser-Logik | network.application_protocol |
Auf „HTTPS“ festgelegt, wenn das Feld uri mit „http“ beginnt. |
| Parser-Logik | network.http.referral_url |
Wird aus dem Feld user_agent extrahiert, wenn es „Referer=“ enthält. |
| Parser-Logik | network.http.response_code |
Abgeleitet von request_status für verschiedene Ereignisse. |
| Parser-Logik | network.http.user_agent |
Der Wert von user_agent aus dem Rohlog oder von data.properties.UserAgent.str für ApiEventStream und LoginEventStream oder von Sites-Ereignissen oder „User-Agent“ aus Sites-Ereignissen. |
| Parser-Logik | network.session_id |
Der Wert von session_key oder SESSION_KEY aus dem Rohlog oder aus anderen Feldern wie LoginKey oder AuthSessionId. |
| Parser-Logik | network.tls.version |
Der Wert von tls_protocol aus dem Rohlog oder aus data.properties.TlsProtocol.str für LoginEventStream. |
| Parser-Logik | principal.application |
Der Wert von application aus dem Rohprotokoll oder „Salesforce for Outlook“ für „Anmeldung: Erfolgreich“-Ereignisse oder „Insights“ für „Anmeldung: Erfolgreich“-Ereignisse ohne Anwendung oder aus device_platform für Lightning-Ereignisse extrahiert. |
| Parser-Logik | principal.asset.hostname |
Der Wert von client_ip, wenn es sich um einen Hostnamen handelt. |
| Parser-Logik | principal.asset.ip |
Der Wert von client_ip, src_ip, SourceIp oder CLIENT_IP, wenn es sich um eine IP-Adresse handelt. |
| Parser-Logik | principal.hostname |
Der Wert von client_ip, wenn es sich um einen Hostnamen handelt. |
| Parser-Logik | principal.ip |
Der Wert von client_ip, src_ip, SourceIp oder CLIENT_IP, wenn es sich um eine IP-Adresse handelt. |
| Parser-Logik | principal.labels |
Labels, die aus verschiedenen Feldern wie FederationIdentifier, ApiType, OrgId und channel erstellt werden. |
| Parser-Logik | principal.location.city |
Der Wert von geoip_src.city_name, City oder LoginGeo.City aus dem Rohlog. |
| Parser-Logik | principal.location.country_or_region |
Der Wert von geoip_src.country_name, Country, LoginGeo.Country oder client_geo aus dem Rohlog. |
| Parser-Logik | principal.location.region_latitude |
Der Wert von data.properties.LoginLatitude.number aus dem Rohlog. |
| Parser-Logik | principal.location.region_longitude |
Der Wert von data.properties.LoginLongitude.number aus dem Rohlog. |
| Parser-Logik | principal.location.state |
Der Wert von geoip_src.region_name aus dem Rohlog. |
| Parser-Logik | principal.platform |
Der Wert von Platform, OsName oder os_name aus dem Rohlog oder „WINDOWS“ für LoginEventStream mit Platform, das „Windows“ enthält. |
| Parser-Logik | principal.platform_version |
Der Wert von OsVersion oder os_version aus dem Rohlog oder aus Platform für LoginEventStream extrahiert, wenn Platform „Windows“ enthält. |
| Parser-Logik | principal.resource.attribute.labels |
Labels, die aus verschiedenen Feldern wie CreatedById, ApiVersion, LogFile, LogFileContentType, LogFileLength erstellt werden. |
| Parser-Logik | principal.resource.name |
Der Wert von Browser oder browser_name aus dem Rohlog oder „Java (Salesforce.com)“ für LoginHistory mit ApiType als „SOAP Partner“. |
| Parser-Logik | principal.resource.type |
Aus device_platform für Lightning-Ereignisse oder „Browser“ für LoginAsEvent und LoginAsEventStream extrahiert. |
| Parser-Logik | principal.url |
Der Wert von LoginUrl aus dem Rohlog. |
| Parser-Logik | principal.user.email_addresses |
Der Wert von usrName, Username, src_email, IdentityUsed, data.properties.Username.str oder data.properties.Email.str aus dem Rohlog. |
| Parser-Logik | principal.user.product_object_id |
Der Wert von attrs.USER_ID_DERIVED oder data.properties.USER_ID_DERIVED.str aus dem Rohlog. |
| Parser-Logik | principal.user.userid |
Der Wert von usrName oder Username oder user_id oder UserId oder USER_ID oder Id oder LoginKey oder CreatedByContext oder data.properties.Username.str oder data.properties.USER_ID.str oder data.properties.LoginKey.str aus dem Rohlog. |
| Parser-Logik | security_result.action |
Abgeleitet von Status, OperationStatus, ErrorCode, action oder operation_status aus dem Rohlog, umgewandelt in ALLOW oder BLOCK. |
| Parser-Logik | security_result.action_details |
Der Wert von Status aus dem Rohlog für LoginEventStream. |
| Parser-Logik | security_result.description |
Der Wert von LoginType, logintype, Operation, Action oder Display aus dem Rohlog. |
| Parser-Logik | security_result.rule_name |
Der Wert von Policy oder rule_name aus dem Rohlog. |
| Parser-Logik | security_result.summary |
Aus NewValue und OldValue oder REQUEST_STATUS oder Section oder forecastcategory aus dem Rohlog erstellt. |
| Parser-Logik | target.administrative_domain |
Der Wert von ORGANIZATION_ID, DelegatedOrganizationId, organization_id oder data.properties.OrgName.str aus dem Rohlog. |
| Parser-Logik | target.application |
Der Wert von Application, app_name, ApiType, Name oder data.properties.Application.str aus dem Rohlog. |
| Parser-Logik | target.asset.hostname |
Der Wert von target_hostname, der aus dem Feld uri extrahiert wurde. |
| Parser-Logik | target.asset.ip |
Der Wert von data.properties.CLIENT_IP.str aus dem Rohlog. |
| Parser-Logik | target.asset_id |
Erstellt aus Inhalten von device_id oder REQUEST_ID. |
| Parser-Logik | target.file.mime_type |
Der Wert von file_type aus dem Rohlog. |
| Parser-Logik | target.file.size |
Der Wert von size_bytes aus dem Rohlog. |
| Parser-Logik | target.hostname |
Der Wert von target_hostname, der aus dem Feld uri extrahiert wurde. |
| Parser-Logik | target.process.command_line |
Der Wert von query_exec, Query oder data.properties.Query.str aus dem Rohlog. |
| Parser-Logik | target.process.pid |
Der Wert von job_id aus dem Rohlog. |
| Parser-Logik | target.resource.attribute.labels |
Labels, die aus verschiedenen Feldern wie CPU_TIME, RUN_TIME, USER_TYPE, DB_TOTAL_TIME, MEDIA_TYPE, ROWS_PROCESSED, NUMBER_FIELDS, DB_BLOCKS, DB_CPU_TIME, ENTITY_NAME, EXCEPTION_MESSAGE, USER_ID_DERIVED, DOWNLOAD_FORMAT, USER_TYPE, CPU_TIME, RUN_TIME, WAVE_SESSION_ID, SessionLevel, verification_method, cpu_time, run_time, db_total_time, db_cpu_time, exec_time, callout_time, number_soql_queries, duration, user_type, entry_point, operation, session_level, rows_processed, sso_type, dashboard_type, Operation, SessionLevel, werden erstellt. |
| Parser-Logik | target.resource.id |
Der Wert von REQUEST_ID, RecordId, caseid, leadid, contactid, opportunityid oder accountid aus dem Rohlog. |
| Parser-Logik | target.resource.name |
Der Wert von QueriedEntities, resource_name, component_name, DATASET_IDS, field, StageName oder Subject aus dem Rohlog. |
| Parser-Logik | target.resource.product_object_id |
Der Wert von REQUEST_ID aus dem Rohlog. |
| Parser-Logik | target.resource.resource_type |
Auf „ACCESS_POLICY“ für ApexCallout und PlatformEncryption, „DATABASE“ für ApexTrigger, „FILE“ für ContentTransfer oder „TABLE“ für ApiEvent festgelegt. |
| Parser-Logik | target.resource.type |
Auf „BATCH“ für QueuedExecution und ApexExecution, „FILE“ für ContentTransfer, „DATABASE_TRIGGER“ für ApexTrigger oder „Case“, „Lead“, „Contact“, „Opportunity“, „Account“ basierend auf dem Vorhandensein der entsprechenden ID-Felder festgelegt. |
| Parser-Logik | target.url |
Der Wert von LoginUrl, URI, attributes.url, login_url oder uri aus dem Rohlog. |
| Parser-Logik | target.user.email_addresses |
Der Wert von Username, attrs.usrName oder email_address aus dem Rohlog. |
| Parser-Logik | target.user.user_display_name |
Der Wert von target_user_display_name, user_name oder username aus dem Rohlog. |
| Parser-Logik | target.user.userid |
Der Wert von target_user_name, data.properties.UserId.str oder data.properties.CreatedById.str aus dem Rohlog. |
| Parser-Logik | extensions.auth.auth_details |
Wird auf „ACTIVE“ gesetzt, wenn Status nicht „Success“ ist. Andernfalls wird „UNKNOWN_AUTHENTICATION_STATUS“ festgelegt. |
| Parser-Logik | extensions.auth.mechanism |
Auf „REMOTE“ für „Login: Success“- und „Login“-Ereignisse mit logintype, die „Remote“ enthalten, oder „USERNAME_PASSWORD“ für „LoginEventStream“ oder „MECHANISM_OTHER“ für Ereignisse mit login_url oder „AUTHTYPE_UNSPECIFIED“ für „Login: Success“- und „Logout“-Ereignisse festgelegt. |
| Parser-Logik | extensions.auth.type |
Auf „SSO“ für Login, Logout, LogoutEvent, LoginAs, IdentityProviderEventStore, LoginHistory, LoginAsEvent mit LoginType als „SAML Sfdc Initiated SSO“ oder „AUTHTYPE_UNSPECIFIED“ für Login: Success, Logout, LoginAsEvent mit LoginType als „Application“ festgelegt. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten