はじめに
📄 この記事は2回に分けてお届けしています。
– Vol.1:サービス・コネクタ・ハブの概要と作成手順 → Vol.1はこちら
– Vol.2(本記事):動作確認と拡張モードを使った高度なフィルタ設定
Vol.1 では、サービス・コネクタ・ハブを作成し、「バケットが作成されたらメールで通知する」仕組みの構築手順を紹介しました。
Vol.2 では、実際にバケットを作成してメール通知が届くことを確認し、さらに 拡張モード を使ったより高度なフィルタ設定もご紹介します。
メール通知されることを確認する
Vol.1 で作成したサービス・コネクタ・ハブが正しく動作するか、実際にバケットを作成して確認します。
1. OCIコンソールから オブジェクト・ストレージ を開き、バケットを作成します。 この際、バケットを作成するコンパートメントは、サービス・コネクタ・ハブの ログ・フィルタ で指定したコンパートメントを選択してください。
2. 数分待ちます。 ※ 監査ログの反映には少し時間がかかります。すぐにメールが届かなくても焦らず待ちましょう。
3. メールを受信したことを確認します。
Vol.1 の設定で「フォーマットされたメッセージの送信」を選択したことにより、JSON の羅列ではなく HTML形式の見やすいレイアウト で通知されます。
|
項目 |
内容 |
|
件名 |
OCI Service Connector Hub Notification: com.oraclecloud.objectstorage.createbucket |
|
送信元 |
noreply@notification.us-ashburn-1.oci.oraclecloud.com(リージョンにより異なる) |
メールが受信できれば、サービス・コネクタ・ハブと通知の設定が正しく完了しています。
通知を一時的に停止したい場合は、サービス・コネクタ・ハブの詳細画面から「非アクティブ化」を選択するだけで停止できます。コネクタを削除せずに済むので、運用上とても便利な機能です。
拡張モードを使ったフィルタ設定
Vol.1 の手順では「基本モード」でフィルタを設定しましたが、「ソースの構成」画面の「拡張モードに切替え」をクリックすると、問合せ構文を直接入力してより細かい条件でフィルタリングできます。
以下にチュートリアル掲載のサンプルを整理します。
(1) パブリック状態のオブジェクト・ストレージを検知する
OCIコンソール経由では作成時にデフォルトでプライベートになりますが、CLI等を使うとパブリック状態で作成できるため、作成と更新の両方を検知対象に含めるのがポイントです。
|
1 2 3 4 5 |
search "<コンパートメントOCID>/_Audit_Include_Subcompartment" | (type='com.oraclecloud.objectstorage.createbucket' or type='com.oraclecloud.objectstorage.updatebucket') and (data.additionalDetails.publicAccessType='ObjectRead' or data.additionalDetails.publicAccessType='ObjectReadWithoutList') |
(2) 特定のブロック・ボリュームのバックアップ作成を検知する
data.stateChange.current.volumeId に対象ボリュームの OCID を指定することで、特定のボリュームに絞り込めます。
|
1 2 3 4 |
search "<コンパートメントOCID>/_Audit_Include_Subcompartment" | (type='com.oraclecloud.blockvolumes.createvolumebackup.begin') and (data.stateChange.current.volumeId='<対象ボリュームのOCID>') and (data.request.action!='GET') |
(3) ロード・バランサの作成を検知する
基本モードではイベント・タイプにロード・バランサが表示されないため、拡張モードが必要です。リクエストの受付タイミング(begin)と完了タイミング(end)のどちらで通知するかを選択できます。
|
1 2 3 4 |
-- 作成リクエストを受付したタイミングで通知 search "<コンパートメントOCID>/_Audit_Include_Subcompartment" | (type='com.oraclecloud.OraLB-API.CreateLoadBalancer.begin') and (data.request.action!='GET') |
|
1 2 3 4 |
-- 作成が完了したタイミングで通知 search "<コンパートメントOCID>/_Audit_Include_Subcompartment" | (type='com.oraclecloud.OraLB-API.CreateLoadBalancer.end') and (data.request.action!='GET') |
(4) ネットワーク・ロード・バランサの作成を検知する
|
1 2 3 |
search "<コンパートメントOCID>/_Audit_Include_Subcompartment" | (type='com.oraclecloud.network-load-balancer-api.CreateNetworkLoadBalancer.begin') and (data.request.action!='GET') |
まとめ
Vol.1・Vol.2 を通じて、OCI チュートリアル「監査ログを使用したテナント監視」の全手順を完了しました。
監査ログ × サービス・コネクタ・ハブ × 通知サービスの組み合わせで、コードを書かずに特定操作の検知とメール通知が実現できました。拡張モードの問合せ構文を活用すれば、パブリックバケットの検知やロード・バランサの監視など、実践的なセキュリティ監視にも応用できます。
OCI 環境の監視・運用強化のきっかけになれば幸いです。
参考リンク
• OCIチュートリアル:監査(Audit)ログを使用したテナント監視


