Mengumpulkan log Salesforce
Dokumen ini menjelaskan cara mengumpulkan log Salesforce dengan menyiapkan feed Google Security Operations menggunakan Third Party API.
Salesforce adalah platform pengelolaan hubungan pelanggan (CRM) berbasis cloud yang menyediakan alat untuk penjualan, layanan, pemasaran, dan analisis. Log Salesforce mencatat aktivitas pengguna, peristiwa keamanan, perubahan sistem, dan penggunaan API di seluruh platform.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Salesforce Enterprise Edition atau yang lebih tinggi (akses API diaktifkan)
- Izin Administrator Sistem Salesforce
- OpenSSL diinstal (untuk pembuatan sertifikat)
Buat pasangan kunci dan sertifikat RSA
Buat kunci pribadi RSA dan sertifikat X.509 yang ditandatangani sendiri untuk penandatanganan JWT.
Buat kunci pribadi
```bash
openssl genrsa -out salesforce_private.key 2048
```
Membuat sertifikat yang ditandatangani sendiri
```bash
openssl req -new -x509 -key salesforce_private.key -out salesforce_certificate.crt -days 365
```
Jika diminta, masukkan detail sertifikat:
- Nama Negara: Masukkan kode negara 2 huruf Anda (misalnya,
US). - Nama Negara Bagian atau Provinsi: Masukkan negara bagian Anda (misalnya,
California). - Nama Lokalitas: Masukkan kota Anda (misalnya,
San Francisco). - Nama Organisasi: Masukkan nama organisasi Anda (misalnya,
Acme Corp). - Nama Unit Organisasi: Masukkan departemen (misalnya,
IT Security). - Nama Umum: Masukkan nama deskriptif (misalnya,
Chronicle Integration). - Alamat Email: Masukkan email kontak.
Membuat Aplikasi Klien Eksternal Salesforce
Aplikasi Klien Eksternal adalah metode yang direkomendasikan untuk autentikasi OAuth di Salesforce (Spring '26 dan yang lebih baru).
- Login ke Salesforce.
- Buka Penyiapan (ikon roda gigi di kanan atas).
- Di kotak Quick Find, masukkan
External Client Apps. - Klik External Client App Manager.
- Klik New External Client App.
Mengonfigurasi informasi dasar
- Berikan detail konfigurasi berikut:
- Nama Aplikasi Klien Eksternal: Masukkan nama deskriptif (misalnya,
Google SecOps Integration). - Nama API: Terisi otomatis berdasarkan nama aplikasi. Biarkan sebagai default atau sesuaikan.
- Email Kontak: Masukkan alamat email Anda.
- Status Distribusi: Pilih Lokal.
- Nama Aplikasi Klien Eksternal: Masukkan nama deskriptif (misalnya,
- Klik Lanjutkan.
Aktifkan setelan OAuth
- Centang kotak Aktifkan OAuth.
- Berikan detail konfigurasi berikut:
- URL Panggilan Balik: Masukkan
https://login.salesforce.com/services/oauth2/callback.
- URL Panggilan Balik: Masukkan
- Di bagian Cakupan OAuth, pindahkan cakupan berikut dari Cakupan OAuth yang Tersedia ke Cakupan OAuth yang Dipilih:
- Mengelola data pengguna melalui API (api)
- Menjalankan permintaan atas nama Anda kapan saja (refresh_token, offline_access)
Aktifkan Alur Bearer JWT dan upload sertifikat
- Di bagian Flow Enablement, centang kotak Enable JWT Bearer Flow.
- Bagian Certificate Upload akan muncul.
- Klik Upload File atau tarik lalu lepas file sertifikat Anda.
- Pilih file
salesforce_certificate.crtyang dibuat sebelumnya. - Tunggu hingga upload selesai. Nama file sertifikat akan muncul di bawah tombol upload.
Mengonfigurasi kebijakan OAuth
- Di bagian Kebijakan OAuth:
- Pengguna yang Diizinkan: Pilih Pengguna yang disetujui admin telah diotorisasi.
- Klik Simpan.
Mendapatkan Kunci Pengguna
Setelah membuat Aplikasi Klien Eksternal, ambil Kunci Konsumen untuk konfigurasi Chronicle.
- Di External Client App Manager, klik nama aplikasi Anda (misalnya,
Google SecOps Integration). - Buka tab Setelan.
- Di bagian OAuth Settings, klik Consumer Key and Secret.
- Salin dan simpan nilai Consumer Key.
Contoh format Kunci Konsumen:
```
3MVG9IKcPoNiNVBIPjdw4z.pcfRjTFBp7xC8x9k4U8jZ0HlLQdPqX5bKjR8yNzQ9_YvY.8xD3F2W6nXb5YgNx
```
Memberi otorisasi awal Aplikasi Klien Eksternal
Salesforce memerlukan pra-otorisasi untuk Alur Pembawa JWT. Lakukan pra-otorisasi dengan menetapkan Aplikasi Klien Eksternal kepada pengguna melalui set izin.
Buat set izin
- Buka Penyiapan > Pengguna > Set Izin.
- Klik New.
- Berikan detail konfigurasi berikut:
- Label: Masukkan
Chronicle Integration Users(misalnya). - Nama API: Terisi otomatis berdasarkan label.
- Label: Masukkan
- Klik Simpan.
Menetapkan set izin ke Aplikasi Klien Eksternal
- Buka Penyiapan > Pengelola Aplikasi Klien Eksternal.
- Klik Aplikasi Klien Eksternal Anda (misalnya,
Google SecOps Integration). - Klik tab Kebijakan.
- Di bagian Kebijakan Aplikasi, di bagian Pilih Kumpulan Izin:
- Pindahkan set izin Anda (misalnya,
Chronicle Integration Users) dari Available Permission Sets ke Selected Permission Sets.
- Pindahkan set izin Anda (misalnya,
- Klik Simpan.
Menetapkan set izin kepada pengguna
- Dari halaman detail set izin, klik Kelola Penetapan.
- Klik Add Assignments.
- Centang kotak di samping akun pengguna yang akan digunakan untuk integrasi Chronicle (misalnya,
integration@acme.com). - Klik Tetapkan.
- Klik Done.
Mengonfigurasi feed di Google SecOps untuk memproses log Salesforce
- Buka Setelan SIEM > Feed.
- Klik Tambahkan Feed Baru.
- Di halaman berikutnya, klik Konfigurasi satu feed.
- Di kolom Nama feed, masukkan nama untuk feed (misalnya,
Salesforce EventLogFile). - Pilih Third Party API sebagai Source type.
- Pilih SALESFORCE sebagai Jenis log.
- Klik Berikutnya.
- Tentukan nilai untuk parameter input berikut:
- Nama Host API: Masukkan nama host instance Salesforce Anda (misalnya,
acme.my.salesforce.com).
- Nama Host API: Masukkan nama host instance Salesforce Anda (misalnya,
* **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.
Untuk mendapatkan konten kunci pribadi:
```bash
cat salesforce_private.key
```
Salin seluruh output termasuk baris header dan footer.
* **Asset namespace**: The [asset namespace](/chronicle/docs/investigation/asset-namespaces).
* **Ingestion labels**: The label to be applied to the events from this feed.
- Klik Berikutnya.
- Tinjau konfigurasi feed baru Anda di layar Selesaikan, lalu klik Kirim.
Referensi jenis instance Salesforce
Nilai endpoint dan audiens JWT OAuth bergantung pada jenis instance Salesforce Anda:
| 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.
Tabel pemetaan UDM
| Kolom Log | Pemetaan UDM | Logika |
|---|---|---|
Account.Name |
target.resource.name |
Nilai Account.Name dari log mentah. |
AccountId |
target.resource.id |
Nilai AccountId dari log mentah. |
Action |
security_result.description |
Nilai Action dari log mentah. |
AdditionalInfo |
- | Tidak dipetakan ke objek IDM. |
ApiType |
target.application |
Nilai ApiType dari log mentah. |
ApiVersion |
- | Tidak dipetakan ke objek IDM. |
Application |
principal.application |
Nilai Application dari log mentah, atau "Browser" untuk LoginAsEvent, atau "Integration JWT Token" untuk LoginEvent, atau "SfdcSiqActivityPlatform" untuk LoginHistory dengan objecttype LoginHistory, atau "N/A" untuk ApiEvent, atau "Browser" untuk LoginAsEventStream. |
attributes.url |
target.url |
Nilai attributes.url dari log mentah, atau URL tertentu untuk berbagai jenis peristiwa dari log mentah. |
attributes.type |
metadata.product_event_type |
Nilai attributes.type dari log mentah. |
AuthSessionId |
network.session_id |
Nilai AuthSessionId dari log mentah. |
Browser |
principal.resource.name |
Nilai Browser dari log mentah, atau "Tidak diketahui" jika Browser tidak tersedia di log mentah dan Application adalah "Insights", atau "Java (Salesforce.com)" untuk LoginHistory dengan ApiType sebagai "SOAP Partner", atau "Tidak diketahui" untuk LoginHistory dengan Application sebagai "SfdcSiqActivityPlatform", atau dari data.properties.Browser.str untuk LoginAsEventStream. |
Case.Subject |
target.resource.name |
Nilai Case.Subject dari log mentah. |
CaseId |
target.resource.id |
Nilai CaseId dari log mentah. |
cat |
metadata.product_event_type |
Nilai cat dari log mentah. |
City |
principal.location.city |
Nilai City dari log mentah, atau dari LoginGeo.City untuk LoginHistory. |
Client |
principal.labels |
Nilai Client dari log mentah, yang diformat sebagai label. |
CLIENT_IP |
principal.ip, principal.asset.ip |
Nilai CLIENT_IP dari log mentah. |
ClientVersion |
- | Tidak dipetakan ke objek IDM. |
CipherSuite |
network.tls.cipher |
Nilai CipherSuite dari log mentah. |
ColumnHeaders |
principal.labels |
Nilai ColumnHeaders dari log mentah, yang diformat sebagai label. |
ConnectedAppId |
principal.labels |
Nilai ConnectedAppId dari log mentah, yang diformat sebagai label. |
Contact.Name |
target.resource.name |
Nilai Contact.Name dari log mentah. |
ContactId |
target.resource.id |
Nilai ContactId dari log mentah. |
Country |
principal.location.country_or_region |
Nilai Country dari log mentah, atau LoginGeo.Country untuk LoginHistory. |
CreatedByContext |
principal.user.userid |
Nilai CreatedByContext dari log mentah. |
CreatedById |
principal.resource.attribute.labels |
Nilai CreatedById dari log mentah, yang diformat sebagai label. |
CreatedDate |
metadata.collected_timestamp |
Nilai CreatedDate dari log mentah, atau stempel waktu saat ini jika tidak tersedia. |
CPU_TIME |
target.resource.attribute.labels |
Nilai CPU_TIME dari log mentah, yang diformat sebagai label. |
data |
- | Berisi berbagai kolom yang diekstrak dan dipetakan satu per satu. |
DATASET_IDS |
target.resource.name |
Nilai DATASET_IDS dari log mentah. |
DelegatedOrganizationId |
target.administrative_domain |
Nilai DelegatedOrganizationId dari log mentah. |
DelegatedUsername |
observer.user.userid |
Nilai DelegatedUsername dari log mentah. |
Description |
metadata.description |
Nilai Description dari log mentah. |
DevicePlatform |
principal.resource.type |
Nilai DevicePlatform dari log mentah, diuraikan untuk mengekstrak jenis resource. |
Display |
metadata.description |
Nilai Display dari log mentah. |
DOWNLOAD_FORMAT |
target.resource.attribute.labels |
Nilai DOWNLOAD_FORMAT dari log mentah, yang diformat sebagai label. |
Duration |
target.resource.attribute.labels |
Nilai Duration dari log mentah, yang diformat sebagai label. |
ENTITY_NAME |
target.resource.attribute.labels |
Nilai ENTITY_NAME dari log mentah, yang diformat sebagai label. |
ErrorCode |
security_result.action |
Nilai ErrorCode dari log mentah, diubah menjadi ALLOW atau BLOCK. |
EventDate |
timestamp |
Nilai EventDate dari log mentah, atau data.properties.TIMESTAMP_DERIVED.str jika tersedia, atau data.properties.TIMESTAMP_DERIVED_FIRST.str jika tersedia, atau @timestamp jika tersedia, atau created_date jika tersedia, atau timestamp jika tersedia, atau LoginTime untuk LoginHistory. |
EventIdentifier |
metadata.product_log_id |
Nilai EventIdentifier dari log mentah. |
EventType |
metadata.product_event_type |
Nilai EventType dari log mentah. |
Id |
principal.user.userid |
Nilai Id dari log mentah, atau metadata.product_log_id untuk SetupAuditTrail dan peristiwa lainnya. |
IdentityUsed |
principal.user.email_addresses |
Nilai IdentityUsed dari log mentah. |
Lead.Name |
target.resource.name |
Nilai Lead.Name dari log mentah. |
LeadId |
target.resource.id |
Nilai LeadId dari log mentah. |
LoginAsCategory |
- | Tidak dipetakan ke objek IDM. |
LoginGeo.Country |
principal.location.country_or_region |
Nilai LoginGeo.Country dari log mentah. |
LoginHistoryId |
- | Tidak dipetakan ke objek IDM. |
LoginKey |
principal.user.userid, network.session_id |
Nilai LoginKey dari log mentah, atau CreatedByContext untuk SetupAuditTrail. |
LoginTime |
timestamp |
Nilai LoginTime dari log mentah. |
LoginType |
security_result.description |
Nilai LoginType dari log mentah, atau "Other Apex API" untuk LoginHistory dengan ApiType sebagai "SOAP Partner", atau "Remote Access 2.0" untuk LoginHistory dengan Application sebagai "SfdcSiqActivityPlatform". |
LoginUrl |
target.url, principal.url |
Nilai LoginUrl dari log mentah. |
LogFile |
principal.resource.attribute.labels |
Nilai LogFile dari log mentah, yang diformat sebagai label. |
LogFileContentType |
principal.resource.attribute.labels |
Nilai LogFileContentType dari log mentah, yang diformat sebagai label. |
LogFileLength |
principal.resource.attribute.labels |
Nilai LogFileLength dari log mentah, yang diformat sebagai label. |
Message |
- | Tidak dipetakan ke objek IDM. |
METHOD |
network.http.method |
Nilai METHOD dari log mentah. |
Name |
target.application |
Nilai Name dari log mentah. |
NewValue |
- | Digunakan bersama dengan OldValue untuk menghasilkan security_result.summary. |
NUMBER_FIELDS |
target.resource.attribute.labels |
Nilai NUMBER_FIELDS dari log mentah, yang diformat sebagai label. |
OldValue |
- | Digunakan bersama dengan NewValue untuk menghasilkan security_result.summary. |
Operation |
security_result.description, target.resource.attribute.labels |
Nilai Operation dari log mentah, atau Display untuk SetupAuditTrail. |
OperationStatus |
security_result.action |
Nilai OperationStatus dari log mentah, diubah menjadi ALLOW atau BLOCK. |
ORGANIZATION_ID |
target.administrative_domain |
Nilai ORGANIZATION_ID dari log mentah. |
OsName |
principal.platform |
Nilai OsName dari log mentah. |
OsVersion |
principal.platform_version |
Nilai OsVersion dari log mentah. |
Platform |
principal.platform |
Nilai Platform dari log mentah, atau dari data.properties.OsName.str untuk LightningUriEventStream, atau dari data.properties.OsName.str untuk LoginEventStream. |
QueriedEntities |
target.resource.name, principal.labels |
Nilai QueriedEntities dari log mentah, atau component_name untuk UriEvent dan ApiEvent. |
Query |
target.process.command_line, principal.labels |
Nilai Query dari log mentah. |
RecordId |
target.resource.id |
Nilai RecordId dari log mentah. |
Records |
principal.labels |
Nilai Records dari log mentah, yang diformat sebagai label. |
REQUEST_ID |
metadata.product_log_id, target.resource.product_object_id |
Nilai REQUEST_ID dari log mentah. |
REQUEST_SIZE |
network.sent_bytes |
Nilai REQUEST_SIZE dari log mentah. |
REQUEST_STATUS |
security_result.summary |
Nilai REQUEST_STATUS dari log mentah. |
RESPONSE_SIZE |
network.received_bytes |
Nilai RESPONSE_SIZE dari log mentah. |
RowsProcessed |
target.resource.attribute.labels |
Nilai RowsProcessed dari log mentah, yang diformat sebagai label. |
RUN_TIME |
target.resource.attribute.labels |
Nilai RUN_TIME dari log mentah, yang diformat sebagai label. |
SamlEntityUrl |
- | Tidak dipetakan ke objek IDM. |
SdkAppType |
- | Tidak dipetakan ke objek IDM. |
SdkAppVersion |
- | Tidak dipetakan ke objek IDM. |
SdkVersion |
- | Tidak dipetakan ke objek IDM. |
Section |
security_result.summary |
Nilai Section dari log mentah. |
SessionKey |
network.session_id |
Nilai SessionKey dari log mentah. |
SessionLevel |
target.resource.attribute.labels |
Nilai SessionLevel dari log mentah, yang diformat sebagai label. |
SourceIp |
principal.ip, principal.asset.ip |
Nilai SourceIp dari log mentah. |
src |
principal.ip, principal.asset.ip |
Nilai src dari log mentah. |
SsoType |
target.resource.attribute.labels |
Nilai SsoType dari log mentah, yang diformat sebagai label. |
STATUS_CODE |
network.http.response_code |
Nilai STATUS_CODE dari log mentah. |
Status |
security_result.action, security_result.action_details |
Nilai Status dari log mentah, diubah menjadi ALLOW atau BLOCK, atau digunakan sebagai detail tindakan untuk LoginEventStream. |
Subject |
target.resource.name |
Nilai Subject dari log mentah. |
TargetUrl |
- | Tidak dipetakan ke objek IDM. |
TIMESTAMP |
metadata.collected_timestamp |
Nilai TIMESTAMP dari log mentah. |
TIMESTAMP_DERIVED |
timestamp |
Nilai TIMESTAMP_DERIVED dari log mentah. |
TlsProtocol |
network.tls.version_protocol |
Nilai TlsProtocol dari log mentah. |
URI |
target.url |
Nilai URI dari log mentah. |
USER_AGENT |
network.http.user_agent |
Nilai USER_AGENT dari log mentah. |
USER_ID |
principal.user.userid |
Nilai USER_ID dari log mentah. |
USER_ID_DERIVED |
principal.user.product_object_id, target.resource.attribute.labels |
Nilai USER_ID_DERIVED dari log mentah. |
UserId |
principal.user.userid |
Nilai UserId dari log mentah. |
USER_TYPE |
target.resource.attribute.labels |
Nilai USER_TYPE dari log mentah, yang diformat sebagai label. |
Username |
principal.user.userid, principal.user.email_addresses, target.user.email_addresses |
Nilai Username dari log mentah, atau src_email untuk berbagai peristiwa, atau IdentityUsed untuk IdentityProviderEventStore, atau data.properties.Email.str untuk Search dan SearchAlert, atau data.properties.Username.str untuk LoginAsEventStream dan LoginEventStream. |
UserType |
target.resource.attribute.labels |
Nilai UserType dari log mentah, yang diformat sebagai label. |
usrName |
principal.user.userid, principal.user.email_addresses, target.user.email_addresses |
Nilai usrName dari log mentah. |
VerificationMethod |
target.resource.attribute.labels |
Nilai VerificationMethod dari log mentah, yang diformat sebagai label. |
| Logika Parser | metadata.event_type |
Diperoleh berdasarkan kolom event_id dan operation, atau ditetapkan ke "USER_LOGIN" untuk LoginEventStream, "USER_LOGOUT" untuk Logout dan LogoutEvent, "USER_RESOURCE_UPDATE_CONTENT" untuk berbagai peristiwa, "USER_RESOURCE_UPDATE_PERMISSIONS" untuk PlatformEncryption, "RESOURCE_READ" untuk QueuedExecution, ApexExecution, LightningInteraction, LightningPerformance, LightningPageView, URI, RestApi, API, AuraRequest, ApexCallout, OneCommerceUsage, Sites, MetadataApiOperation, OneCommerceUsage, VisualforceRequest, Dashboard, Search, ListViewEvent, "RESOURCE_CREATION" untuk UriEvent dan TimeBasedWorkflow dengan Operation sebagai "Create" atau "INSERT", "RESOURCE_WRITTEN" untuk UriEvent dan LightningUriEvent dengan Operation sebagai "Update", "RESOURCE_DELETION" untuk UriEvent dengan Operation sebagai "Delete" atau "ROLLBACK", "USER_UNCATEGORIZED" untuk SetupAuditTrail dan AuditTrail, "USER_CHANGE_PASSWORD" untuk SetupAuditTrail dengan operation sebagai "namedCredentialEncryptedFieldChange", "GENERIC_EVENT" untuk ApiEventStream dan LightningUriEventStream, atau berdasarkan kehadiran jaringan dan prinsipal. |
| Logika Parser | metadata.ingestion_labels |
Label yang menunjukkan sumber peristiwa, baik "File Log Peristiwa" atau "Pemantauan Peristiwa Real-Time" atau "SetupAuditTrail". |
| Logika Parser | metadata.log_type |
Selalu ditetapkan ke "SALESFORCE". |
| Logika Parser | metadata.product_name |
Selalu ditetapkan ke "SALESFORCE". |
| Logika Parser | metadata.vendor_name |
Selalu ditetapkan ke "SALESFORCE". |
| Logika Parser | metadata.url_back_to_product |
Dibuat dari berbagai kolom seperti LoginUrl, attributes.url, data.properties.PageUrl.str, data.properties.LoginUrl.str. |
| Logika Parser | network.application_protocol |
Tetapkan ke "HTTPS" jika kolom uri dimulai dengan "http". |
| Logika Parser | network.http.referral_url |
Diekstrak dari kolom user_agent jika berisi "Referer=". |
| Logika Parser | network.http.response_code |
Diperoleh dari request_status untuk berbagai acara. |
| Logika Parser | network.http.user_agent |
Nilai user_agent dari log mentah, atau dari data.properties.UserAgent.str untuk ApiEventStream dan LoginEventStream, atau dari peristiwa Sites, atau "User-Agent" dari peristiwa Sites. |
| Logika Parser | network.session_id |
Nilai session_key atau SESSION_KEY dari log mentah, atau dibuat dari kolom lain seperti LoginKey atau AuthSessionId. |
| Logika Parser | network.tls.version |
Nilai tls_protocol dari log mentah, atau dari data.properties.TlsProtocol.str untuk LoginEventStream. |
| Logika Parser | principal.application |
Nilai application dari log mentah, atau "Salesforce for Outlook" untuk peristiwa Login: Berhasil, atau "Insights" untuk peristiwa Login: Berhasil tanpa Aplikasi, atau diekstrak dari device_platform untuk peristiwa Lightning. |
| Logika Parser | principal.asset.hostname |
Nilai client_ip jika berupa nama host. |
| Logika Parser | principal.asset.ip |
Nilai client_ip atau src_ip atau SourceIp atau CLIENT_IP jika berupa alamat IP. |
| Logika Parser | principal.hostname |
Nilai client_ip jika berupa nama host. |
| Logika Parser | principal.ip |
Nilai client_ip atau src_ip atau SourceIp atau CLIENT_IP jika berupa alamat IP. |
| Logika Parser | principal.labels |
Label dibuat dari berbagai kolom seperti FederationIdentifier, ApiType, OrgId, channel. |
| Logika Parser | principal.location.city |
Nilai geoip_src.city_name atau City atau LoginGeo.City dari log mentah. |
| Logika Parser | principal.location.country_or_region |
Nilai geoip_src.country_name atau Country atau LoginGeo.Country atau client_geo dari log mentah. |
| Logika Parser | principal.location.region_latitude |
Nilai data.properties.LoginLatitude.number dari log mentah. |
| Logika Parser | principal.location.region_longitude |
Nilai data.properties.LoginLongitude.number dari log mentah. |
| Logika Parser | principal.location.state |
Nilai geoip_src.region_name dari log mentah. |
| Logika Parser | principal.platform |
Nilai Platform atau OsName atau os_name dari log mentah, atau "WINDOWS" untuk LoginEventStream dengan Platform yang berisi "Windows". |
| Logika Parser | principal.platform_version |
Nilai OsVersion atau os_version dari log mentah, atau diekstrak dari Platform untuk LoginEventStream dengan Platform yang berisi "Windows". |
| Logika Parser | principal.resource.attribute.labels |
Label dibuat dari berbagai kolom seperti CreatedById, ApiVersion, LogFile, LogFileContentType, LogFileLength. |
| Logika Parser | principal.resource.name |
Nilai Browser atau browser_name dari log mentah, atau "Java (Salesforce.com)" untuk LoginHistory dengan ApiType sebagai "SOAP Partner". |
| Logika Parser | principal.resource.type |
Diekstrak dari device_platform untuk peristiwa Lightning, atau "Browser" untuk LoginAsEvent dan LoginAsEventStream. |
| Logika Parser | principal.url |
Nilai LoginUrl dari log mentah. |
| Logika Parser | principal.user.email_addresses |
Nilai usrName atau Username atau src_email atau IdentityUsed atau data.properties.Username.str atau data.properties.Email.str dari log mentah. |
| Logika Parser | principal.user.product_object_id |
Nilai attrs.USER_ID_DERIVED atau data.properties.USER_ID_DERIVED.str dari log mentah. |
| Logika Parser | principal.user.userid |
Nilai usrName atau Username atau user_id atau UserId atau USER_ID atau Id atau LoginKey atau CreatedByContext atau data.properties.Username.str atau data.properties.USER_ID.str atau data.properties.LoginKey.str dari log mentah. |
| Logika Parser | security_result.action |
Berasal dari Status atau OperationStatus atau ErrorCode atau action atau operation_status dari log mentah, diubah menjadi ALLOW atau BLOCK. |
| Logika Parser | security_result.action_details |
Nilai Status dari log mentah untuk LoginEventStream. |
| Logika Parser | security_result.description |
Nilai LoginType atau logintype atau Operation atau Action atau Display dari log mentah. |
| Logika Parser | security_result.rule_name |
Nilai Policy atau rule_name dari log mentah. |
| Logika Parser | security_result.summary |
Dibuat dari NewValue dan OldValue atau REQUEST_STATUS atau Section atau forecastcategory dari log mentah. |
| Logika Parser | target.administrative_domain |
Nilai ORGANIZATION_ID atau DelegatedOrganizationId atau organization_id atau data.properties.OrgName.str dari log mentah. |
| Logika Parser | target.application |
Nilai Application atau app_name atau ApiType atau Name atau data.properties.Application.str dari log mentah. |
| Logika Parser | target.asset.hostname |
Nilai target_hostname yang diekstrak dari kolom uri. |
| Logika Parser | target.asset.ip |
Nilai data.properties.CLIENT_IP.str dari log mentah. |
| Logika Parser | target.asset_id |
Dibuat dari device_id atau REQUEST_ID. |
| Logika Parser | target.file.mime_type |
Nilai file_type dari log mentah. |
| Logika Parser | target.file.size |
Nilai size_bytes dari log mentah. |
| Logika Parser | target.hostname |
Nilai target_hostname yang diekstrak dari kolom uri. |
| Logika Parser | target.process.command_line |
Nilai query_exec atau Query atau data.properties.Query.str dari log mentah. |
| Logika Parser | target.process.pid |
Nilai job_id dari log mentah. |
| Logika Parser | target.resource.attribute.labels |
Label dibuat dari berbagai kolom seperti 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. |
| Logika Parser | target.resource.id |
Nilai REQUEST_ID atau RecordId atau caseid atau leadid atau contactid atau opportunityid atau accountid dari log mentah. |
| Logika Parser | target.resource.name |
Nilai QueriedEntities atau resource_name atau component_name atau DATASET_IDS atau field atau StageName atau Subject dari log mentah. |
| Logika Parser | target.resource.product_object_id |
Nilai REQUEST_ID dari log mentah. |
| Logika Parser | target.resource.resource_type |
Tetapkan ke "ACCESS_POLICY" untuk ApexCallout dan PlatformEncryption, atau "DATABASE" untuk ApexTrigger, atau "FILE" untuk ContentTransfer, atau "TABLE" untuk ApiEvent. |
| Logika Parser | target.resource.type |
Disetel ke "BATCH" untuk QueuedExecution dan ApexExecution, atau "FILE" untuk ContentTransfer, atau "DATABASE_TRIGGER" untuk ApexTrigger, atau "Case", "Lead", "Contact", "Opportunity", "Account" berdasarkan keberadaan kolom ID yang sesuai. |
| Logika Parser | target.url |
Nilai LoginUrl atau URI atau attributes.url atau login_url atau uri dari log mentah. |
| Logika Parser | target.user.email_addresses |
Nilai Username atau attrs.usrName atau email_address dari log mentah. |
| Logika Parser | target.user.user_display_name |
Nilai target_user_display_name atau user_name atau username dari log mentah. |
| Logika Parser | target.user.userid |
Nilai target_user_name atau data.properties.UserId.str atau data.properties.CreatedById.str dari log mentah. |
| Logika Parser | extensions.auth.auth_details |
Ditetapkan ke "ACTIVE" jika Status bukan "Success", atau ditetapkan ke "UNKNOWN_AUTHENTICATION_STATUS". |
| Logika Parser | extensions.auth.mechanism |
Disetel ke "REMOTE" untuk peristiwa Login: Berhasil dan Login dengan logintype yang berisi "Remote", atau "USERNAME_PASSWORD" untuk LoginEventStream, atau "MECHANISM_OTHER" untuk peristiwa dengan login_url, atau "AUTHTYPE_UNSPECIFIED" untuk peristiwa Login: Berhasil dan Logout. |
| Logika Parser | extensions.auth.type |
Setel ke "SSO" untuk Login, Logout, LogoutEvent, LoginAs, IdentityProviderEventStore, LoginHistory, LoginAsEvent dengan LoginType sebagai "SAML Sfdc Initiated SSO", atau "AUTHTYPE_UNSPECIFIED" untuk Login: Success, Logout, LoginAsEvent dengan LoginType sebagai "Application". |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.