イベントログファイルのダウンロードと視覚化

学習の目的

この単元を完了すると、次のことができるようになります。

  • イベントログファイルをダウンロードする。
  • イベントログファイルの構造を説明する。
  • コードを記述せずにイベントログファイル (ELF) ブラウザを使用してイベントログファイルをダウンロードするためのアプリケーションを挙げる。
  • cURL または Python スクリプトを使用してファイルをダウンロードする方法を説明する。
  • イベントログファイルデータを視覚化するためのオプションを挙げる。

イベントログファイルのダウンロード

開発者コンソールを使用して、組織のイベントを確認し、条件に基づいてイベントを絞り込むことができます。ただし、アプリケーションプログラミングインターフェース (API) を使用してデータにアクセスしているため、他のツールを使用してより簡単にイベントログファイルを処理することもできます。イベントモニタリングを最大限に活用するためには、Salesforce からイベントログファイルをダウンロードして、経時的に追跡できるようします。

イベントログファイルは次の数種の方法でダウンロードできます。

    • Event Log File (ELF) Browser (イベントログファイルブラウザ) アプリケーションを使用した直接ダウンロード
    • cURL スクリプト
    • Python スクリプト

各方法を見ていきましょう。

ブラウザからのログのダウンロード

組織のイベントモニタリングデータをダウンロードする単純明快なアプローチは、ELF ブラウザアプリケーションを使用することです。では、実際に試してみましょう。

  1. 組織にログインします。
  2. ELF ブラウザアプリケーションに移動します。
  3. [Production Login (本番ログイン)] をクリックします。
  4. 検索する日付範囲を入力します。
  5. 検索するイベント種別を入力します。
  6. 間隔 (毎日または毎時) を入力します。
  7. [Apply (適用)] をクリックします。
    ELF ブラウザページ
メモ

組織に指定した日付範囲または種別のイベントがない場合は、ページにエラーが表示されます。

このリストには、EventLogFile をクエリしたときに表示されたものと同じイベントログファイルが表示されます。これらのファイルをブラウザアプリケーションで開くことはできませんが、直接ダウンロードすることや、スクリプトを使用することができます。 

ここでは、直接ダウンロードする方法を見ていきます。

  1. 直接ダウンロードボタン ボタンをクリックして、ログをカンマ区切り値 (.csv) ファイルにダウンロードします。各ファイルには、過去 24 時間に組織で生じた特定の種別のイベントがすべて記載されます。
  2. ReportExport ログファイルをダウンロードします。このファイルをスプレッドシートで開いて内容を確認します。
メモ

レポートエクスポートイベントが 1 つもない場合は、別の種類のイベントログファイルをダウンロードするか、レポートをエクスポートして翌日にこのステップをもう一度試行します。イベントは、発生から 24 時間以上経過するまでログファイルに表示されません。

直接ダウンロードされた .csv 形式のイベントログファイル

今回はイベントが記載されています。これで機密情報がどのように漏洩したかを突き止めることができます。リードレポートの ID が 00O30000008a3De であるとします。URI 項目にエクスポートされたレポートの ID が記載され、USER_ID 項目にレポートをエクスポートしたユーザの ID が記載されます。このすべての情報が犯人の特定に役立ちます。

イベントログファイルのユーザ ID およびレポート ID が、容疑者およびレポートの ID と一致

ユーザ ID とレポート ID が一致しました。これで Rob Burgle がレポートをエクスポートしたことを実証する十分な証拠を手に入れました。正当な処罰が下されることでしょう。

cURL を使用したイベントログファイルのダウンロード

機密情報が漏洩された方法についてわかったところですが、これも Salesforce システム管理者としての主な役割の 1 つにすぎません。イベント種別ごとに スクリプトダウンロードボタン ボタンがあり、cURL スクリプトをダウンロードしてコンピュータのコマンドラインで実行することもできます。組織からのデータのダウンロードに使用できるコマンドラインツールにはさまざまなものがありますが、cURL もその 1 つです。このスクリプトは、前のステップでダウンロードしたものとまったく同じ .csv ファイルをダウンロードします。それならば、直接ダウンロードツールではなく、cURL を使用する理由は何なのでしょうか。

cURL の使用は最初の方法よりも複雑ですが、イベントログファイルをより柔軟に処理できます。ログファイルを手動でダウンロードするのではなく、スクリプトの実行時間をスケジュールできるため、組織の最新のイベントログファイルをいつでもすぐに確認できます。また、データを任意の形式に変換することも可能です。組織にインテグレーション担当者がいる場合は、このスクリプトを送り渡せば自動化の取り組みが促進されます。

メモ

cURL が最も適しているのは、Mac および Linux ユーザです。Windows でも使用できますが、追加の設定が必要です。

cURL スクリプトを使用してイベントログファイルをダウンロードする場合は、次の操作が必要です。

  1. Salesforce ログイン情報を指定します。
  2. OAuth を使用してログインし、アクセストークンを取得します。
  3. REST クエリを使用して目的のログを指定します。
メモ

定期的なダウンロードをスケジュールしている場合は、このステップが重要です。次のようなクエリを使用すると、本日のイベントに絞り込むことができます。

       4.クエリの結果を解析して、日付ベースのファイル構造の作成などの作業を可能にします。これにより、任意の日付に変換を実行できるようになります。

イベントログファイルでの cURL の使用についての詳細は、この投稿を参照してください。

Python を使用したイベントログファイルのダウンロード

組織のイベントログファイルをよりプログラム化した方法でダウンロードする必要がある場合は、Python スクリプトを使用できます。cURL スクリプトではなく Python スクリプトを使用する利点の 1 つは、Windows ユーザが作業しやすいことですが、Mac や Linux ユーザにも適しています。

Python は、経験豊富なプログラマでなくても簡単に理解できます。一定の設定を要するものの、設定してしまえばダウンロードスクリプトを簡単に実行できます。詳細およびコードのダウンロードについては、この投稿を参照してください。

イベントログファイルのデータの視覚化

イベントログファイルと Salesforce からそれらをダウンロードする方法について詳しく説明してきましたが、ここでデータの視覚化についても言及しておきます。スプレッドシートの何千もの行の中から特定の情報を見つけ出すことは、干し草の山から針を探し出すようなものです。概して、レポートのエクスポートやユーザログインの 1 つのインスタンスを見つけても役には立ちません。おそらく何か勘付くのは、いつもとは違う行動を察知したときです。イベントログファイルを定期的にダウンロードして、データを視覚的に表示できれば、組織内で何が行われているかをすぐさま検知できます。

イベントモニタリングは、ログデータの視覚化ツールである Event Monitoring Analytics アプリケーションに含まれています。他のツールを使用してデータを整えることもできます。こうしたツールの中には特にイベントログファイルをサポートするものもありますが、追加設定を要するものもあります。各プラットフォームについて詳述はしませんが、以下に概要を示しておきます。

Event Monitoring Analytics アプリケーション: この Analytics アプリケーションでは、Salesforce プラットフォームを離れずにイベントモニタリングデータに関するインサイトを得ることができます。Salesforce からこのアプリケーションにデータが自動的に読み込まれるため、組織で実行されている処理の最新情報をいつでも明瞭に視覚化できます。このアプリケーションにはイベントデータを使用する一連のダッシュボードが事前統合されているため、イベントモニタリングをすぐに開始できます。

ログインイベントデータを表示するダッシュボード

メモ

イベントモニタリングの一環として Event Monitoring Analytics アプリケーションを使用することもできます。このアプリケーションは、登録の一部として提供されたデータのアップロードおよびアクセスを行う場合にのみ使用します。ユーザがこのアプリケーションを使用して、他のデータのアップロードやアクセスを行うことがないようにしてください。Salesforce では、そのような使用を監視することがあります。Event Monitoring Analytics アプリケーションは英語のみで利用できます。詳細は、この単元の「リソース」セクションにあるリンクを参照してください。

Splunk App for Salesforce: このアプリケーションは、組織での Salesforce の利用状況を分析して視覚化するもので、セキュリティ、パフォーマンス、ユーザの行動の実態を把握できます。Splunk Add-On for Salesforce は、Splunk ソフトウェアのシステム管理者が REST API を使用してさまざまなデータを収集できるようにします。Splunk Enterprise Security など、他の Splunk アプリケーションで使用できる入力値も提供します。

FairWarning: このユーザアクティビティ監視専用のソリューションは、Salesforce ログファイルを変換し、イベントモニタリング、リアルタイムストリーム、参照オブジェクト、変更データキャプチャ (CDC) イベントと相関させます。これにより、異常な行動に対するユーザ中心のインサイトとリアルタイムアラートを提供できます。その結果、脅威を未然に特定し、Salesforce データへのリスクを軽減できます。FairWarning では 1 つのビューで複数の組織をサポートし、30 日を超えたデータを保存します。また、48 時間以内に監視を稼働させることで価値を早期に実現できます。FairWarning のインサイトは、使用状況、採用、パフォーマンスの使用事例にも使用でき、イベントモニタリングと Salesforce の投資利益実現をサポートします。AppExchange で入手できます
FairWarning ユーザダッシュボード

New Relic Insights : Salesforce 向けのこのソリューションでは、ソフトウェアパフォーマンスのエンドツーエンドのビジネス上の影響を簡単に理解できます。イベントモニタリングデータをインサイトに自動的にインポートし、簡単に構築できるダッシュボードを強化して、ユーザインターフェースですぐさまデータを照会します。

これで、イベントモニタリングが組織で果たす役割を掴めたのではないかと思います。イベントログファイルを使用して事件を解決したほか、組織のイベントのダウンロードおよび視覚化によるさまざまな可能性についても見てきました。つまり、利用状況を調査し、安全性を確保し、組織を向上させるために必要なツールを手に入れたことになります。探偵諸氏の健闘を祈ります。

リソース

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる