收集 Okta 記錄
支援的國家/地區:
Google SecOps
SIEM
本文說明如何使用 Okta API,將 Okta 記錄擷取至 Google Security Operations。剖析器會擷取系統記錄,並處理 JSON 陣列中的單一事件和批次事件。這項服務會將資料正規化為 UDM 格式、將 Okta 欄位對應至 UDM 對等項目、透過剖析的使用者代理程式、地理資訊和驗證詳細資料擴充資料,並根據結果和風險資訊產生安全性結果事件。
事前準備
- Google SecOps 執行個體
- Okta 的特殊存取權
如何設定 Okta
如要設定 Okta 單一登入,請完成下列工作:
建立具備唯讀權限的 Okta 管理員使用者
- 登入 Okta 管理員控制台。
建立標準使用者。
- 依序點選「目錄」>「使用者」。
- 按一下「新增使用者」,然後填妥必填欄位。
選取「安全性」>「管理員」。
按一下「新增管理員」。
在「管理員指派管理員」欄位中,找出標準使用者。
在「角色」部分,從清單中選取「唯讀管理員」。
登出管理員帳戶。
取得 API 金鑰
- 使用唯讀管理員使用者登入 Okta 管理員控制台。
- 依序前往「安全性」>「API」>「權杖」。
- 按一下「建立權杖」。
- 為權杖提供有意義的名稱。
- 提供 API 的使用 IP 區域 (如果不確定,可以選取「任何 IP」)。
- 按一下「建立權杖」。
- 複製 API 金鑰。
- 按一下「我知道了」。
設定動態饋給
在 Google SecOps 平台中,有兩種不同的進入點可設定動態饋給:
- 「SIEM 設定」>「動態消息」
- 內容中心 > 內容包
依序前往「SIEM 設定」>「動態消息」,設定動態消息
如要為這個產品系列中的不同記錄類型設定多個動態饋給,請參閱「依產品設定動態饋給」。
如要設定單一動態饋給,請按照下列步驟操作:
- 依序前往「SIEM 設定」>「動態饋給」。
- 按一下「新增動態消息」。
- 在下一個頁面中,按一下「設定單一動態饋給」。
- 在「Feed name」(動態消息名稱) 欄位中,輸入動態消息的名稱,例如「Okta Logs」(Okta 記錄)。
- 選取「第三方 API」做為「來源類型」。
- 選取「Okta」做為「記錄類型」。
- 點選「下一步」。
- 指定下列輸入參數的值:
- 驗證 HTTP 標頭:以
Authorization:<API_KEY>
格式輸入 Okta API 金鑰。 - API 主機名稱:指定 Okta 主機的網域名稱 (例如
<your-domain>.okta.com
)。 - 資產命名空間:資產命名空間。
- 擷取標籤:套用至這個動態饋給事件的標籤。
- 驗證 HTTP 標頭:以
- 點選「下一步」。
- 在「Finalize」畫面中檢查動態饋給設定,然後按一下「Submit」。
從內容中心設定動態饋給
為下列欄位指定值:
- 驗證 HTTP 標頭:用於以
key:value
格式向 SentinelOne 警報/威脅和靜態指標 API 進行驗證。 - API 主機名稱:SentinelOne API 的完整網域名稱。
進階選項
- 動態饋給名稱:系統預先填入的值,用於識別動態饋給。
- 來源類型:將記錄收集到 Google SecOps 的方法。
- 資產命名空間:與動態饋給相關聯的命名空間。
- 擷取標籤:套用至這個動態饋給所有事件的標籤。
UDM 對應表
記錄欄位 | UDM 對應 | 邏輯 |
---|---|---|
actor.alternateId |
principal.user.email_addresses |
如果是電子郵件地址,則會從 actor.alternateId 中擷取。如果不是電子郵件地址,則會做為 principal.user.userid 使用。 |
actor.displayName |
principal.user.user_display_name |
直接對應。 |
actor.id |
principal.user.product_object_id |
直接對應。 |
actor.type |
principal.user.attribute.roles.name |
直接對應。 |
authenticationContext.authenticationProvider |
security_result.detection_fields.value |
直接對應,索引鍵為 authenticationProvider 。 |
authenticationContext.credentialProvider |
security_result.detection_fields.value |
直接對應,索引鍵為 credentialProvider 。 |
authenticationContext.credentialType |
extensions.auth.mechanism |
用於衍生驗證機制 (OTP、USERNAME_PASSWORD、LOCAL)。 |
authenticationContext.externalSessionId |
network.parent_session_id |
直接對應。 |
client.device |
principal.asset.type /additional.fields.value.string_value |
根據值對應至 principal.asset.type (WORKSTATION、MOBILE、ROLE_UNSPECIFIED)。也會在 additional.fields 中以索引鍵 device 對應為字串值。 |
client.geographicalContext.city |
principal.location.city |
直接對應。 |
client.geographicalContext.country |
principal.location.country_or_region |
直接對應。 |
client.geographicalContext.geolocation.lat |
principal.location.region_latitude |
直接對應。 |
client.geographicalContext.geolocation.lon |
principal.location.region_longitude |
直接對應。 |
client.geographicalContext.postalCode |
additional.fields.value.string_value |
在 additional.fields 中,直接對應為以鍵 Postal code 標示的字串值。 |
client.geographicalContext.state |
principal.location.state |
直接對應。 |
client.ipAddress |
principal.ip 、principal.asset.ip |
直接對應。 |
client.userAgent.browser |
target.resource.attribute.labels.value |
直接對應,索引鍵為 Browser 。 |
client.userAgent.os |
principal.platform |
根據值對應至平台 (LINUX、WINDOWS、MAC)。 |
client.userAgent.rawUserAgent |
network.http.user_agent 、network.http.parsed_user_agent |
直接對應及剖析。 |
client.zone |
additional.fields.value.string_value |
在 additional.fields 中,直接對應為以鍵 zone 標示的字串值。 |
debugContext.debugData.behaviors |
security_result.description 、security_result.detection_fields |
直接對應至說明。系統會擷取個別行為,並新增為偵測欄位。 |
debugContext.debugData.changedAttributes |
security_result.detection_fields.value |
直接對應,索引鍵為 changedAttributes 。 |
debugContext.debugData.clientAddress |
principal.ip 、principal.asset.ip |
如果缺少 request.ipChain 和 client.ipAddress ,則會直接對應。 |
debugContext.debugData.deviceFingerprint |
target.asset.asset_id |
直接對應,前置字串為 device_finger_print: 。 |
debugContext.debugData.dtHash |
security_result.detection_fields.value |
直接對應,索引鍵為 dtHash 。 |
debugContext.debugData.factor |
security_result.detection_fields.value |
直接對應,索引鍵為 factor 。 |
debugContext.debugData.factorIntent |
security_result.detection_fields.value |
直接對應,索引鍵為 factorIntent 。 |
debugContext.debugData.logOnlySecurityData.risk.reasons |
security_result.detection_fields.value |
直接對應,索引鍵為 Risk Reasons 。 |
debugContext.debugData.privilegeGranted |
target.user.attribute.roles |
拆分成個別權限,並以名稱和說明新增為角色。 |
debugContext.debugData.pushOnlyResponseType |
security_result.detection_fields.value |
直接對應,索引鍵為 pushOnlyResponseType 。 |
debugContext.debugData.pushWithNumberChallengeResponseType |
security_result.detection_fields.value |
直接對應,索引鍵為 pushWithNumberChallengeResponseType 。 |
debugContext.debugData.requestUri |
extensions.auth.auth_details |
直接對應。 |
debugContext.debugData.suspiciousActivityEventId |
security_result.detection_fields.value |
直接對應,索引鍵為 suspiciousActivityEventId 。 |
debugContext.debugData.suspiciousActivityEventType |
security_result.detection_fields.value |
直接對應,索引鍵為 suspiciousActivityEventType 。 |
debugContext.debugData.threatDetections |
security_result.detection_fields.value |
直接對應,索引鍵為 threatDetections 。 |
debugContext.debugData.threatSuspected |
security_result.detection_fields.value 、security_result.threat_status |
對應為偵測欄位,金鑰為 threatSuspected 。用於衍生威脅狀態 (ACTIVE 或 FALSE_POSITIVE)。 |
debugContext.debugData.url |
target.url |
直接對應。 |
displayMessage |
security_result.summary |
直接對應。 |
eventType |
metadata.product_event_type 、metadata.event_type |
直接對應至 product_event_type 。用於衍生 event_type (USER_LOGIN、USER_LOGOUT、USER_CHANGE_PASSWORD、USER_CHANGE_PERMISSIONS、USER_DELETION、GROUP_MODIFICATION、SETTING_MODIFICATION、SCHEDULED_TASK_ENABLE、RESOURCE_CREATION、USER_UNCATEGORIZED)。 |
legacyEventType |
security_result.detection_fields.value |
直接對應,索引鍵為 legacyEventType 。 |
outcome.reason |
security_result.category_details |
直接對應。 |
outcome.result |
security_result.action |
根據值對應至動作 (允許、驗證、封鎖)。 |
published |
metadata.event_timestamp |
剖析為時間戳記。 |
request.ipChain.n.geographicalContext |
intermediary.location |
要求鏈中中介 IP 的地理位置背景資訊。 |
request.ipChain.n.ip |
intermediary.ip |
要求鏈中中介裝置的 IP 位址。 |
securityContext.asNumber |
security_result.detection_fields.value |
直接對應,索引鍵為 asNumber 。 |
securityContext.asOrg |
security_result.detection_fields.value |
直接對應,索引鍵為 asOrg 。 |
securityContext.domain |
security_result.detection_fields.value |
直接對應,索引鍵為 domain 。 |
securityContext.isp |
security_result.detection_fields.value |
直接對應,索引鍵為 isp 。 |
securityContext.isProxy |
security_result.detection_fields.value |
直接對應,索引鍵為 anonymized IP 。 |
target.n.alternateId |
target.user.email_addresses /target.user.userid |
如果是電子郵件地址,則會對應至 target.user.email_addresses 。如果不是電子郵件地址,則會做為 target.user.userid 使用。 |
target.n.detailEntry.clientAppId |
target.asset_id |
直接對應,前置字串為 Client_app_id: 。 |
target.n.detailEntry.methodTypeUsed |
target.resource_ancestors.attribute.labels.value |
直接對應,目標類型為 AuthenticatorEnrollment 時,使用鍵 methodTypeUsed 。 |
target.n.detailEntry.methodUsedVerifiedProperties |
target.resource_ancestors.attribute.labels.value |
直接對應,目標類型為 AuthenticatorEnrollment 時,使用鍵 methodUsedVerifiedProperties 。 |
target.n.detailEntry.policyType |
target.resource_ancestors.attribute.labels.value |
直接對應,索引鍵為 Policy Type 。 |
target.n.detailEntry.signOnModeType |
security_result.detection_fields.value |
直接對應,索引鍵為 signOnModeType 。 |
target.n.displayName |
target.user.user_display_name / target.application / target.resource.name |
根據目標類型對應。 |
target.n.id |
target.user.product_object_id / target.resource.product_object_id / target.resource_ancestors.product_object_id |
根據目標類型對應。 |
target.n.type |
target.user.attribute.roles.name / target.resource.resource_subtype / target.resource_ancestors.resource_subtype |
根據目標類型對應。 |
transaction.id |
network.session_id |
直接對應。 |
transaction.type |
additional.fields.value.string_value |
在 additional.fields 中,直接對應為以鍵 type 標示的字串值。 |
uuid |
metadata.product_log_id |
直接對應。 |
不適用 | metadata.vendor_name |
設為 Okta 。 |
不適用 | metadata.product_name |
設為 Okta 。 |
不適用 | extensions.auth.type |
設為 SSO 。 |
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。