ノート:
- このチュートリアルでは、Oracle Cloudへのアクセスが必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントの値の例を使用します。演習を完了するときに、これらの値をクラウド環境に固有の値に置き換えます。
クロステナンシ・コネクタ・ハブとOCIストリームを使用したSIEM統合のためのテナンシ間のログの統合
イントロダクション
Oracle Cloud Infrastructure(OCI)は、大規模企業が信頼するInfrastructure-as-a-Service(IaaS)、Platform-as-a-Service(PaaS)およびSoftware-as-a-Service(SaaS)です。ホスティング、ストレージ、ネットワーキング、データベースなどを含む包括的なマネージド・サービスを提供します。
セキュリティ関連のイベントのログを適切なリソースにトリアージするためにプロアクティブに提示することは、サイバーセキュリティ・インシデントを検出して防止するために重要です。多くの組織は、セキュリティ情報およびイベント管理(SIEM)プラットフォームを使用して、関連するアセットからのログとアラートを関連付け、分析しています。適切な期間にキー・ログの取得と保持を適切に構成するとともに、ほぼリアルタイムの監視とアラートにより、Security Operationsチームは問題を特定し、システムのチューニングに基づいて重要な情報に焦点を当て、適切なアクションを実行できます。
OCIログを取り込むベストプラクティスのパターンは、OCIストリームにログを送信することです。OCIストリームは、Apache kafka互換であるため、サード・パーティのSIEMプラットフォームがKafkaコンシューマとしてログを消費しやすくなり、遅延が減少し、SIEM側でデータ消費の一時的な問題が発生した場合に備えて回復力と保持力が提供されます。
複数のテナンシを管理する場合、すべてのテナンシの各リージョンをSIEMプラットフォームと個別に統合するのではなく、特定のリージョン内の複数のソース・テナンシ(SourceTenant))のログを単一のテナンシ(TargetTenant)OCIストリームに統合するには、クロステナンシ・コネクタ・ハブを作成します。SIEMプラットフォームでは、TargetTenantストリームを介して、そのリージョン内のすべてのテナンシのログを取り込むことができます。
ノート: OCI Connector Hubサービスは、現在、リージョン間コネクタ・ハブをサポートしていません。
次のイメージに、ソリューション・アーキテクチャの高レベル表現を示します。
承認、許可および定義ステートメント
リソースにアクセスして共有するには、両方のテナンシの管理者(SourceTenantおよびTargetTenant)は、アクセスと共有が可能なリソースを明示的に示す特別なクロステナンシ・ポリシー・ステートメントを作成する必要があります。これらの特別なステートメントは、Endorse、AdmitおよびDefineという動詞を使用します。
クロステナンシ・ステートメントで使用される特別な動詞の概要:
-
承認:独自のテナンシ内のグループ/リソース・プリンシパルが他のテナンシ内で実行できる一般的な機能セットを示します。
-
許可:他のテナンシからグループ/リソース・プリンシパルを付与する独自のテナンシ内の機能の種類を示します。
-
定義:エンドースおよび許可ポリシー・文のテナンシOCIDに別名を割り当てます。
「承認」ステートメントと「承認」ステートメントは連携して機能します。アクセス権を指定する対応ステートメントがない場合、特定の承認または許可ステートメントはアクセス権を与えません。両方のテナントがアクセスに同意する必要があります。
ノート:
子コンパートメントではなく、テナンシのルート・コンパートメントにクロステナンシ文を定義する必要があります。
コネクタを作成する前に、クロステナンシ・ポリシーを記述します。クロステナンシ・コネクタを作成するには、OCI Software Development Kit (SDK)、CLIまたはAPIを使用する必要があります。このチュートリアルでは、OCIコマンドライン・インタフェース(CLI)を使用して、クロステナンシ・コネクタ・ハブを作成します。
目的
- クロステナンシ・コネクタ・ハブとOCIストリームを使用して、SIEM統合のためのテナンシ間の統合を記録します。
前提条件
- OCIのユーザーは、リソースを管理するためにOCIストリーミング、OCI Connector HubおよびOCI Loggingサービスに必要なポリシーを持っている必要があります。すべてのサービスのポリシー・リファレンスの詳細は、ポリシー・リファレンスを参照してください。
タスク1: TargetTenantでのストリームの作成
OCIストリーミング・サービスは、開発者およびデータ・サイエンティスト向けの、リアルタイムでサーバーレスなApache Kafka互換イベント・ストリーミング・プラットフォームです。大量のデータ・ストリームをログなどのリアルタイムで収集および消費するための、スケーラブルで耐久性の高いフルマネージド・ソリューションを提供します。OCI Streamingは、パブリッシュ/サブスクライブ・メッセージング・モデルでデータが連続して処理されます。
-
OCIコンソールに移動し、「アナリティクスとAI」、「メッセージング」および「ストリーミング」に移動します。
-
「ストリームの作成」をクリックしてストリームを作成します。
-
次の情報を入力して、「作成」をクリックします。
- 名前:ストリーム名を入力します。このチュートリアルでは、
TargetTenant-Stream
を使用しています。 - ストリーム・プール:既存のストリーム・プールを選択するか、パブリック・エンドポイントを含む新しいストリーム・プールを作成します。
- 保持(時間):このストリームでメッセージを保持する時間を入力します。
- パーティション数:ストリームのパーティション数を入力します。
- 「合計書込み率」および「合計読取り率」:処理する必要があるデータの量に基づいて入力します。
テスト用のデフォルト値から始めることができます。詳細は、「ストリームのパーティション化」を参照してください。
- 名前:ストリーム名を入力します。このチュートリアルでは、
タスク2: SourceTenantへのポリシーの書込み
SourceTenantの指定されたコンパートメントのコネクタ・ハブを承認して、TargetTenantのストリームにアクセスします。
コマンド・フォーマット:
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>
}
Sampleコマンド:
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へのポリシーの書込み
TargetTenantのストリームにアクセスするために、SourceTenantのコネクタ・ハブを許可します。
コマンド・フォーマット:
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'
}
Sampleコマンド:
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ストリームにプッシュするためのクロステナンシ・コネクタ・ハブ。
コマンド・フォーマット:
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>" }'
Sampleコマンド:
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ストリームにサービス/カスタム・ログをプッシュするためのクロステナンシ・コネクタ・ハブ。次のコマンドを実行する前に、ログ・グループを作成し、必要なログを有効化します。
コマンド・フォーマット:
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>" }'
ノート:タスク4のタスク2およびタスク3およびCLIコマンドのポリシー・ステートメントは、読みやすくするためにフォーマットされています。これらの文のコピーを使用する前に、新しい行、タブおよびスペースを削除します。
次のステップ
このチュートリアルでは、クロステナンシ・コネクタ・ハブとOCIストリームを使用して、複数のテナンシからのログを統合する方法を示します。これらのログをKafkaコンシューマとして使用するようにサード・パーティのSIEMプラットフォームを構成する必要があります。SIEMプラットフォームでダッシュボードを設定して、重要なメトリックを取得し、事前定義済のしきい値を超えた場合にトリガーするアラートを構成することが不可欠です。また、特定の問合せを定義することは、悪意のあるアクティビティを検出し、OCIテナンシ内のパターンを識別するために重要です。これらのアクションにより、セキュリティ体制が強化され、クラウド環境をプロアクティブな監視が可能になります。
関連リンク
承認
- 作成者 - Chaitanya Chintala (クラウド・セキュリティ・アドバイザ)
その他の学習リソース
docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。
製品ドキュメントは、Oracle Help Centerを参照してください。
Consolidate Logs Across Tenancies for SIEM Integration Using Cross-Tenancy Connector Hubs and OCI Stream
G12391-01
August 2024