附註:

使用跨租用戶連線器中心和 OCI 串流整合 SIEM 整合的跨租用戶日誌

簡介

Oracle Cloud Infrastructure (OCI) 是受大規模企業信任的基礎架構即服務 (IaaS)、平台即服務 (PaaS) 和軟體即服務 (SaaS)。它提供全方位的託管服務,包括託管、儲存、網路、資料庫等。

主動呈現安全相關事件的日誌,以便與適當的資源進行分類,對於偵測和防止網路安全事件至關重要。許多組織都使用安全資訊和事件管理 (SIEM) 平台建立關聯及分析相關資產的日誌和警示。在適當的時間內,適當地設定擷取和保留金鑰日誌,以及近乎即時的監控和警報,讓 Security Operations 團隊能夠識別問題、根據系統調整專注於重要資訊,並採取適當行動。

擷取 OCI 日誌的最佳實務模式是將日誌傳送至 OCI 串流,這是與 Apache kafka 相容,可協助第三方 SIEM 平台將日誌作為 Kafka 用戶使用 - 減少延遲,在 SIEM 端發生暫時問題時提供復原能力和保留。

架構圖

管理多個租用戶時,您可以透過建立跨租用戶連線器中心,將特定區域內多個來源租用戶 (SourceTenant) 的日誌合併至單一租用戶 (TargetTenant) OCI 串流,而不是將所有租用戶的每個區域個別整合至 SIEM 平台。SIEM 平台接著可以透過 TargetTenant 串流擷取該區域中所有租用戶的日誌。

注意: OCI 連線器中心服務目前不支援跨區域連線器中心。

下圖顯示解決方案架構的高階表示法。

解決方案架構圖

背書、入學並定義陳述

若要存取及共用資源,租用戶 (SourceTenant 和 TargetTenant) 的管理員必須建立特殊的跨租用戶原則敘述句,明確聲明可存取及共用資源。這些特殊陳述使用動詞「背書」、「入學」與「定義」。

跨租用戶敘述句中使用的特殊動詞總覽:

「背書」與「入學」陳述式可共同運作。若無指定存取權的對應陳述式,則特定的「背書」或「入學」陳述式不會授予任何存取權。兩個租用戶都必須同意存取。

注意:

目標

必要條件

工作 1:在 TargetTenant 中建立串流

OCI Streaming 服務為開發人員和資料科學家提供即時、無伺服器、與 Apache Kafka 相容的事件串流平台。它提供完全受管理、可擴展且持久的解決方案,可即時擷取及使用大量資料串流,例如日誌。在任何使用案例中,我們都可以使用 OCI Streaming 在發布 - 訂閱訊息模型中以連續和循序方式產生和處理資料。

  1. 移至 OCI 主控台,瀏覽至 Analytics & AIMessagingStreaming

  2. 按一下建立串流以建立串流。

  3. 輸入下列資訊,然後按一下建立

    • 名稱:輸入串流名稱。本教學課程使用 TargetTenant-Stream
    • 串流集區:選取現有的串流集區,或使用公用端點建立新的串流集區。
    • 保留 (小時):輸入此串流中保留訊息的小時數。
    • 分割區數目:輸入串流的分割區數目。
    • 寫入速率總計讀取速率總計:根據需要處理的資料量輸入。

    您可以從預設值開始進行測試。如需詳細資訊,請參閱分割串流

工作 2:在 SourceTenant 中寫入原則

背書 SourceTenant 指定區間中的任何連線器中心,以存取 TargetTenant 中的任何串流。

Command Format - 命令格式:

Define tenancy TargetTenant as <TargetTenant_OCID>

Endorse any-user to use stream-push in tenancy TargetTenant
    where all 
    { 
        request.principal.type='serviceconnector',
        request.principal.compartment.id= <connectorHub-Compartment_OCID> 
    }

命令範例:

Define tenancy TargetTenant as ocid1.tenancy.oc1..aaaaaaaanneylhk3ibxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Endorse any-user to use stream-push in tenancy TargetTenant where all { request.principal.type='serviceconnector', request.principal.compartment.id = 'ocid1.compartment.oc1..aaaaaaaau7xlnyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' }

作業 3:在 TargetTenant 中寫入原則

允許 SourceTenant 的連線器中心存取 TargetTenant 中的串流。

Command Format - 命令格式:

Define tenancy SourceTenantA as <SourceTenant-A_OCID>

Admit any-user of tenancy SourceTenantA to use stream-push in tenancy
   Where all
   {
   
   request.principal.type='serviceconnector'
   
   }

命令範例:

Define tenancy SourceTenantA as ocid1.tenancy.oc1..aaaaaaaakxcj24xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Admit any-user of tenancy SourceTenantA to use stream-push in tenancy Where all { request.principal.type = 'serviceconnector' }

作業 4:使用 SourceTenant 中的 CLI 建立 OCI 連線器中心

在 SourceTenant 和 TargetTenant 中建立必要的原則之後,請使用 SourceTenant 中的 CLI 建立 OCI 連線器中心。下列範例 CLI 命令指定 OCI 日誌記錄作為來源,而 OCI 串流作為建立跨租用戶連線器中心的目標。

將 OCI 稽核日誌從 SourceTenant 推送至 TargetTenant 串流的跨租用戶連線器中心。

Command Format - 命令格式:

oci sch service-connector create

--display-name <XTenancyConnectorHub-name>

--compartment-id <ConnectorHub-Compartment_OCID>

--source '{ "kind": "logging", "logSources":

[ { "compartmentId": "<SourceTenantA_OCID>",
"logGroupId": "_Audit_Include_Subcompartment" } ] }'

--target '{ "kind": "streaming", "streamId": "<TargetTenant-Stream_OCID>" }'

命令範例:

oci sch service-connector create --display-name XTenancyConnectorHub --compartment-id ocid1.compartment.oc1..aaaaaaaau7xlnyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx --source '{ "kind": "logging", "logSources": [ { "compartmentId": "ocid1.tenancy.oc1..aaaaaaaakxcj24xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","logGroupId": "_Audit_Include_Subcompartment" } ] }' --target '{ "kind": "streaming", "streamId": "ocid1.stream.oc1.iad.amaaaaaas4n35vixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }'

將服務 / 自訂日誌從 SourceTenant (S) 推送至 TargetTenant 串流的跨租用戶連線器中心。請先建立日誌群組並啟用必要的日誌,再執行下列命令。

Command Format - 命令格式:

oci sch service-connector create

--display-name <XTenancyConnectorHub-Name>

--compartment-id <ConnectorHub_Compartment_OCID>

--source '{ "kind": "logging", "logSources":

[ { "compartmentId": "<SourceTenantA-LogGroup-Compartment_OCID>",
"logGroupId": "<SourceTenantA-LogGroup_OCID>" } ] }'

--target '{ "kind": "streaming", "streamId": "<TargetTenant-Stream_OCID>" }'

注意:「工作 2」和「工作 3」和「工作 4」中 CLI 命令的原則敘述句會格式化為可讀取。使用這些陳述式副本之前,請先移除新的行、定位點和空格。

接下來的步驟

本教學課程示範如何使用跨租用戶連線器中心和 OCI 串流合併多個租用戶的日誌。第三方 SIEM 平台應設定為在 Kafka 用戶使用這些日誌。在 SIEM 平台中設定儀表板以擷取重要評量標準,以及設定超過預先定義臨界值時觸發的警示至關重要。此外,定義特定查詢對於偵測惡意活動及識別 OCI 租用戶內的模式至關重要。這些動作將可強化您的安全態勢,並主動監控您的雲端環境。

確認

其他學習資源

探索 docs.oracle.com/learn 上的其他實驗室,或存取 Oracle Learning YouTube 頻道上的更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。

如需產品文件,請造訪 Oracle Help Center