tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:イベントモニタリングのリアルタイムログで取得可能なログ情報について

イベントモニタリングのリアルタイムログで取得可能なログ情報についてです。「アクセスログやセキュリティインシデントに関するログをリアルタイムに保存」する方の機能で、格納先はPlatform EventとBig Objectということになっています。保存期間は6ヶ月間、種類は2021年時点で18種類となっています。


18種類のデータで何が取得できるかについては、設定画面で確認できて一つずつ有効化することで利用できるようになるのですが、公式ドキュメントで確認できないかなとチェックしてみました。

リアルタイムイベント監視の開発者向けドキュメント

Salesforce セキュリティガイドにリアルタイムログに関する情報がまとめられてました。

Salesforce Developers

ストリーミング

リアルタイムログの格納はストリーミング(Platform Event)とストレージ(Big Object)という感じで管理されています。リアルタイムなログを確認するときはストリーミングの方だと思います。こちらは「最大 3 日間保持」されるとのことです。

ストレージ

「6ヶ月間保存」される形で格納されるのはストレージの方であとから分析したりするのはストレージ側をつかって作業する感じかと思います。

リアルタイムログで取得できる情報

取得可能なログ情報は次のとおり。過去の資料にあった18種類よりも増えていたので新たに保存可能となった情報がある感じみたいです。考慮点としては一部の情報についてはストリーミングのみ、ストレージのみ保存されるというものもあるようでした。(設定ページの有効化の際に確認できる内容)

ApiEventStream

ユーザが機密データ (特許レコードなど) を照会すると、検出します。

ApiAnomalyEvent

ユーザが API コールを行う方法の異常を追跡します。

BulkApiResultEvent

ユーザがいつ Bulk API または Bulk API 2.0 要求の結果をダウンロードしたかを追跡します。

ConcurLongRunApexErrEvent

組織が実行時間の長い同時 Apex の上限を超えた場合に、エラーを検出します。

CredentialStuffingEvent

特定したクレデンシャルスタッフィング攻撃の最中にユーザが Salesforce に正常にログインした状況を追跡します。ログイン情報スタッフィングとは、盗まれたユーザログイン情報を使用した大規模な自動ログイン要求を指します。

FileEvent

ユーザがファイルをダウンロードしたときなど、ファイル関連のイベントを検出します。

LightningUriEventStream

Lightning Experience でユーザが機密データを含むレコードの作成、アクセス、更新、削除を行うと、検出します。

ListViewEventStream

ユーザが Salesforce Classic、Lightning Experience、または API を使用してリストビューデータのアクセス、更新、エクスポートを行うと、検出します。

LoginAsEventStream

システム管理者が別のユーザとして組織にログインすると検出し、システム管理者の活動を追跡します。

LoginEventStream

ユーザが特定の条件下で (たとえば、サポート対象外のブラウザや会社の範囲外の IP アドレスから) ログインしようとすると、検出します。

LogoutEventStream

ユーザが Salesforce UI で [ログアウト] をクリックしてログアウトすると、検出します。

MobileEmailEvent

Salesforce モバイルアプリケーションでユーザのメール活動を追跡します。

MobileEnforcedPolicyEvent

Salesforce モバイルアプリケーションでの拡張モバイルセキュリティポリシーイベントの適用を追跡します。

MobileScreenshotEvent

Salesforce モバイルアプリケーションでユーザのスクリーンショットを追跡します。

MobileTelephonyEvent

Salesforce モバイルアプリケーションでユーザの電話とテキストメッセージを追跡します。

PermissionSetEvent

権限セットおよび権限セットグループの権限割り当ての変更を検出します。

ReportAnomalyEvent

ユーザによるレポート実行またはレポートエクスポートの異常を追跡します。

ReportEventStream

ユーザが機密データを含むレポートの作成、実行、更新、エクスポートを行うと、検出します。

SessionHijackingEvent

未承認ユーザが、盗取したセッション識別子を使用して Salesforce ユーザのセッションの所有権を窃取した状況を追跡します。

UriEventStream

Salesforce Classic でユーザが機密データを含むレコードの作成、アクセス、更新、削除を行うと、検出します。


プラットフォームイベント開発者ガイド

もう少し開発よりの情報を参照したい場合は「プラットフォームイベント開発者ガイド」の方を見れば良いみたいです。

Salesforce Developers


この情報はApexトリガやフローで操作可能かといった情報を確認できます。

まとめ

イベントモニタリングのリアルタイムログで取得可能なログ情報についてはこんな感じ。基本は6ヶ月間保存されるリアルタイムログ情報が監査対応的に使用する情報で、もう一つの30日間が保存期限となっているイベントモニタリングの方は直近発生したトラブル調査で使用する感じなのかなと思いました。