はじめに
システムの安全性を担保するため、監査証跡を残しておくことは非常に重要です。
今回は、下記構成を例にOCIにおける監査ログの表示、また、その確認方法についてみていきます。
前提条件
- Compute Instanceが作成されていること
- 管理者権限(administratosグループ所属) or 必要なIAMポリシーがあること
監査(Audit)ログ
OCIコンソールにログイン後のイベント(いつ、だれが、どのサービスで、何をしたか(作成、削除等)が一部を除いた※1全てが監査(Audit)ログに残ります。保存期間は365日※2となっています。
※1 オブジェクト・ストレージ・サービスのオブジェクト関連イベント
※2 長期保存の場合はこちらの仕組みを使います
監査(Audit)ログの保存場所
ハンバーガーメニュー(画面左上)>監視および管理>ロギング>ログ・グループ>_Audit
補足
ログ・グループ(_Audit)は、仕様として削除ボタン表示がないため、誤って削除される心配はありません。(その他のログ・グループは任意作成・削除が可能)
監査ログ画面
実際の監査ログ確認画面です。
ハンバーガーメニュー(画面左上)>監視および管理>ロギング>監査
- 赤枠:発生したイベント(Compute作成・削除等)を時系列的に表示
- 青枠:対象絞り込みフィルタ(いつ、だれが、どのサービスで、どのコンパートメント&リージョンで、何をしたかがフィルタ項目)
監査ログ画面(詳細)
※フォーマットはCNCFのCloudEvents業界標準形式に準拠しています。
例:インスタンス(Compute)起動した場合
実際の例として、インスタンス(Compute)起動した場合、どのようなログが表示されるか確認していきます。
インスタンス(Compute)起動時のイベント
タイプに下記表示されましたが、InstanceActionからはインスタンス(Compute)に対するどのような操作が開始・終了したかわかりません。
イベント詳細の"additionalDetails"で確認
イベントの右端を押下し、詳細を確認します。
その後、additionalDetailsの“+”を押下すると、instanceActionType: startがあるので、インスタンスを起動した※1ことがわかります※2。
※1マニュアルのAPIタブ参照
補足 ※2 こちらに記載あるように、data配下部分はサービスによって異なるようです。例えば、Base Databaseのnode起動時のイベントのタイプは下記になり、具体的なアクションはlifecycleState:STARTINGになっています。
最終的に確認できること
下記イベントからは、以下のことが読み取れます。
ユーザーXXXによって、ComputeInstance01という名前のインスタンスに対して、「起動」の操作が行われ、起動までに6秒かかった(beginとend※のイベントの時間の差分)
まとめ
いかがだったでしょうか。サービスによって多少表現は異なりますが、どのあたりをみたらよいかわかるようになったかと思います。