收集 Zscaler ZPA 稽核記錄
本文說明如何設定 Bindplane 代理程式,匯出 Zscaler ZPA 稽核記錄,以及如何將記錄欄位對應至 Google SecOps 統一資料模型 (UDM) 欄位。
詳情請參閱「將資料匯入 Google SecOps 總覽」。
一般部署作業包括 Zscaler ZPA Audit 和 Bindplane 代理程式,並設定將記錄傳送至 Google Security Operations。每個客戶的部署作業可能有所不同,且可能更為複雜。
部署作業包含下列元件:
Zscaler ZPA Audit:您收集記錄檔的平台。
Bindplane 代理程式:Bindplane 代理程式會從 Zscaler ZPA Audit 擷取記錄,並將記錄傳送至 Google Security Operations。
Google SecOps:保留並分析記錄檔。
擷取標籤可識別剖析器,將原始記錄資料正規化為具結構性的 UDM 格式。本文中的資訊適用於標示為 ZSCALER_ZPA_AUDIT
的剖析器。
事前準備
- 請確認您使用的是 Zscaler ZPA Audit 2024 以上版本。
- 確認您可以存取 Zscaler Private Access 主控台。詳情請參閱安全私人存取 (ZPA) 說明。
- 請確認部署架構中的所有系統都已設定世界標準時間。
在 Zscaler Private Access 中設定 Log Receiver
請按照下列步驟在 Zscaler Private Access 中設定及管理 Log Receiver:
新增記錄接收器
- 依序選取「Configuration & Control」>「Private Infrastructure」>「Log Streaming Service」>「Log Receivers」,然後按一下「Add Log Receiver」。
- 在「Log Receiver」分頁中執行下列操作:
- 在「Name」 欄位中輸入記錄接收器的名稱。
- 在「Description」欄位輸入說明。
- 在「網域或 IP 位址」欄位中,輸入記錄接收器的完整網域名稱 (FQDN) 或 IP 位址。
- 在「TCP Port」欄位中,輸入記錄接收器使用的 TCP 通訊埠編號。
- 在「TLS 加密」中選取加密類型,即可啟用或停用應用程式連接器與記錄接收器之間的流量加密功能。這項設定預設為停用。
- 在「App Connector groups」清單中,選擇可將記錄轉送至接收器的 App Connector 群組,然後按一下「Done」。
- 點按「Next」。
在「Log Stream」分頁中,執行下列操作:
- 從選單中選取「Log Type」。
- 從選單中選取「記錄範本」。
複製貼上「Log Stream Content」,然後新增欄位。請確認鍵名稱與實際欄位名稱相符。
以下是稽核記錄類型的預設「記錄串流內容」:
{"ModifiedTime":%j{modifiedTime:iso8601},"CreationTime":%j{creationTime:iso8601},"ModifiedBy":%d{modifiedBy},"RequestID":%j{requestId},"SessionID":%j{sessionId},"AuditOldValue":%j{auditOldValue},"AuditNewValue":%j{auditNewValue},"AuditOperationType":%j{auditOperationType},"ObjectType":%j{objectType},"ObjectName":%j{objectName},"ObjectID":%d{objectId},"CustomerID":%d{customerId},"User":%j{modifiedByUser},"ClientAuditUpdate":%d{clientAuditUpdate}}\n
在「SAML 屬性」中,按一下「選取 IdP」,然後選取要納入政策中的 IdP 設定。
在「應用程式區隔」選單中,選取要納入的應用程式區隔,然後按一下「完成」。
在「區隔群組」選單中,選取要納入的區隔群組,然後按一下「完成」。
在「Client Types」選單中,選取要納入的用戶端類型,然後按一下「Done」。
在「工作階段狀態」選單中,選取要排除的工作階段狀態代碼,然後按一下「完成」。
點按「Next」。
在「查看」分頁中查看記錄接收器設定,然後按一下「儲存」。
注意:ZSCALER_ZPA_AUDIT
Gold 剖析器僅支援 JSON 記錄格式,因此請務必在設定記錄串流時,從選單中選取「JSON」做為「記錄範本」。
複製記錄接收器
- 依序選取「Control」>「Private Infrastructure」>「Log Streaming Service」>「Log Receivers」。
- 在表格中找出要修改的記錄接收器,然後按一下「複製」。
- 在「Add Log Receiver」視窗中,視需要修改欄位。如要進一步瞭解各個欄位,請參閱「新增記錄接收器」一節中的程序。
- 按一下 [儲存]。
編輯記錄接收器
- 依序選取「Control」>「Private Infrastructure」>「Log Streaming Service」>「Log Receivers」。
- 在表格中找出要修改的記錄接收器,然後按一下「編輯」。
- 在「Edit Log Receiver」視窗中,視需要修改欄位。如要進一步瞭解各個欄位,請參閱「新增記錄接收器」一節中的程序。
- 按一下 [儲存]。
刪除記錄接收器
- 依序選取「Control」>「Private Infrastructure」>「Log Streaming Service」>「Log Receivers」。
- 在表格中找出要修改的記錄接收器,然後按一下「刪除」。
- 在「確認」視窗中,按一下「刪除」。
使用 Bindplane 代理程式將記錄轉送至 Google SecOps
- 安裝並設定 Linux 虛擬機器。
- 在 Linux 上安裝及設定 Bindplane 代理程式,將記錄轉送至 Google SecOps。如要進一步瞭解如何安裝及設定 Bindplane 代理程式,請參閱 Bindplane 代理程式安裝和設定操作說明。
如果在建立動態饋給時遇到問題,請與 Google SecOps 支援團隊聯絡。
支援的 Zscaler ZPA 稽核記錄格式
Zscaler ZPA Audit 剖析器支援 JSON 格式的記錄。
支援的 Zscaler ZPA 稽核範例記錄
JSON:
{ "ModifiedTime": "", "CreationTime": "2024-06-29T05:06:34.000Z", "ModifiedBy": 216193796315021769, "RequestID": "ed500dfb-c66d-4ec2-b97e-ec2018c811f4", "SessionID": "v2t27ixe6qs21cffpzy6jx1zv", "AuditOldValue": "", "AuditNewValue": "{\\"loginAttempt\\":\\"2024-06-29 05: 06: 34 UTC\\",\\"remoteIP\\":\\"198.51.100.0\\"}", "AuditOperationType": "Sign In", "ObjectType": "Authentication", "ObjectName": "", "ObjectID": 0, "CustomerID": dummy_customer_id, "User": "abc.xyz.com", "ClientAuditUpdate": 0 }
UDM 對應表
欄位對應參考資料:ZSCALER_ZPA_AUDIT
下表列出 ZSCALER_ZPA_AUDIT
記錄類型的記錄欄位,以及對應的 UDM 欄位。
Log field | UDM mapping | Logic |
---|---|---|
|
metadata.product_name |
The metadata.product_name UDM field is set to ZPA Audit . |
|
metadata.vendor_name |
The metadata.vendor_name UDM field is set to Zscaler . |
CreationTime |
metadata.event_timestamp |
|
RequestID |
metadata.product_log_id |
|
SessionID |
network.session_id |
|
|
metadata.event_type |
If the AuditOperationType log field value is not empty, then if the AuditOperationType log field value is equal to Create , then the metadata.event_type UDM field is set to RESOURCE_CREATION .Else, if the AuditOperationType log field value is equal to Client Session Revoked , then the metadata.event_type UDM field is set to USER_LOGOUT .Else, if the AuditOperationType log field value is equal to Delete , then the metadata.event_type UDM field is set to RESOURCE_DELETION .Else, if the AuditOperationType log field value is equal to Download , then the metadata.event_type UDM field is set to USER_RESOURCE_ACCESS .Else, if the AuditOperationType log field value is equal to Sign In , then the metadata.event_type UDM field is set to USER_LOGIN .Else, if the AuditOperationType log field value is equal to Sign In Failure , then the metadata.event_type UDM field is set to USER_LOGIN .Else, if the AuditOperationType log field value is equal to Sign Out , then the metadata.event_type UDM field is set to USER_LOGOUT .Else, if the AuditOperationType log field value is equal to Update , then the metadata.event_type UDM field is set to USER_RESOURCE_UPDATE_CONTENT . |
|
metadata.product_event_type |
If the AuditOperationType log field value is not empty, then if the AuditOperationType log field value is equal to Create , then the metadata.product_event_type UDM field is set to create .Else, if the AuditOperationType log field value is equal to Client Session Revoked , then the metadata.product_event_type UDM field is set to client session revoked .Else, if the AuditOperationType log field value is equal to Delete , then the metadata.product_event_type UDM field is set to delete .Else, if the AuditOperationType log field value is equal to Download , then the metadata.product_event_type UDM field is set to download .Else, if the AuditOperationType log field value is equal to Sign In , then the metadata.product_event_type UDM field is set to user_login .Else, if the AuditOperationType log field value is equal to Sign In Failure , then the metadata.product_event_type UDM field is set to user_login_fail .Else, if the AuditOperationType log field value is equal to Sign Out , then the metadata.product_event_type UDM field is set to user_logout .Else, if the AuditOperationType log field value is equal to Update , then the metadata.product_event_type UDM field is set to update . |
|
security_result.action |
If the AuditOperationType log field value is not empty, then if the AuditOperationType log field value is equal to Client Session Revoked , then the security_result.action UDM field is set to BLOCK .Else, if the AuditOperationType log field value is equal to Sign In , then the security_result.action UDM field is set to ALLOW .Else, if the AuditOperationType log field value is equal to Sign In Failure , then the security_result.action UDM field is set to FAIL . |
ObjectType |
target.resource.resource_subtype |
|
ObjectID |
target.resource.product_object_id |
|
ObjectName |
target.resource.name |
|
ModifiedTime |
target.resource.attribute.labels[ModifiedTime] |
|
ModifiedBy |
principal.user.userid |
|
User |
principal.user.email_addresses |
|
AuditOldValue |
additional.fields[AuditOldValue] |
Iterate through AuditOldValue object: The AuditOldValue object key is mapped to the additional.fields.key UDM field and AuditOldValue object value is mapped to the additional.fields.value UDM field. |
AuditNewValue |
additional.fields[AuditNewValue] |
Iterate through AuditNewValue object: The AuditNewValue object key is set to the additional.fields.key UDM field and AuditNewValue object value is mapped to the additional.fields.value UDM field. |
CustomerID |
target.user.userid |
|
ClientAuditUpdate |
additional.fields[ClientAuditUpdate] |
還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。