監査ロギング

このページでは、Cloud Audit Logs の一部として Google Workspace アドオンによって作成される監査ログについて説明します。

概要

Google Cloud サービスは、「誰がいつどこで何をしたか」の確認に役立つ監査ログを記録します。Cloud プロジェクトで記録されるのは、そのプロジェクト内に直接存在するリソースの監査ログのみです。フォルダ、組織、Cloud 請求先アカウントなどの他のエンティティでは、そのエンティティ自体の監査ログが記録されます。

Cloud Audit Logs の概要については、Cloud Audit Logs をご覧ください。Cloud Audit Logs の詳細については、監査ログについてをご覧ください。

Google Workspace アドオンでは、次の種類の監査ログを使用できます。

  • 管理アクティビティ監査ログ

    メタデータまたは構成情報を書き込む「管理書き込み」オペレーションが含まれます。

    管理アクティビティ監査ログは無効にできません。

監査対象のオペレーション

次の表は、Google Workspace アドオンの各監査ログタイプに対応する API オペレーションをまとめたものです。

監査ログのカテゴリ Google Workspace アドオンのオペレーション
管理アクティビティ監査ログ Projects.GetAuthorization
Deployments.CreateDeployment
Deployments.ReplaceDeployment
Deployments.ListDeployments
Deployments.GetDeployment
Deployments.DeleteDeployment
Deployments.InstallDeployment
Deployments.UninstallDeployment
Deployments.GetInstallStatus

監査ログ形式

Cloud Logging でログビューア、Cloud Logging API、Google Cloud CLI を使用して表示できる監査ログエントリには、次のオブジェクトが含まれます。

  • ログエントリ自体。LogEntry 型のオブジェクトです。よく使用されるフィールドは次のとおりです。

    • logName: プロジェクト ID と監査ログタイプが格納されます。
    • resource: 監査対象オペレーションのターゲットが格納されます。
    • timeStamp には、監査対象オペレーションの時間が含まれます。
    • protoPayload には、監査対象の情報が含まれます。
  • 監査ロギングデータ。ログエントリの protoPayload フィールドに保持される AuditLog オブジェクトです。

  • 任意のサービス固有の監査情報。サービス固有のオブジェクトです。前のインテグレーションでは、このオブジェクトは AuditLog オブジェクトの serviceData フィールドに保持されています。後のインテグレーションでは、metadata フィールドを使用します。

これらのオブジェクトのその他のフィールドと、それらを解釈する方法については、監査ログについてをご覧ください。

ログ名

Cloud 監査ログのリソース名は、監査ログを所有する Cloud プロジェクトまたは他の Google Cloud エンティティを表します。この名前を見ると、ログに管理アクティビティ、データアクセス、システム イベントの監査ロギングデータが含まれているかどうかがわかります。たとえば次のログ名は、プロジェクトの管理アクティビティ監査ログと組織のデータアクセス監査ログを表しています。変数は、プロジェクトと組織の識別子を表します。

projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access

サービス名

Google Workspace アドオンの監査ログでは、サービス名 gsuiteaddons.googleapis.com が使用されます。

すべてのロギング サービスについては、サービスとリソースのマッピングをご覧ください。

リソースタイプ

Google Workspace アドオンの監査ログでは、すべての監査ログにリソースタイプ audited_resource が使用されます。

他のリソースタイプの一覧については、モニタリング対象リソースタイプをご覧ください。

監査ロギングの有効化

管理アクティビティ監査ログは常に有効になっています。無効にすることはできません。

Google Workspace アドオンでは、データアクセス監査ログは書き込まれません。

監査ログに関する権限

どの監査ログを表示またはエクスポートできるかは、Identity and Access Management の権限とロールによって決まります。ログは、Cloud プロジェクトの中、および組織、フォルダ、Cloud 請求先アカウントなど他のいくつかのエンティティの中に存在します。詳しくは、ロールについてをご覧ください。

管理アクティビティ監査ログを表示するユーザーには、その監査ログが存在するプロジェクト内で次のいずれかの IAM ロールが割り当てられている必要があります。

Google Workspace アドオンでは、データアクセス監査ログやシステム イベント監査ログは書き込まれません。

組織などのプロジェクト以外のエンティティからの監査ログを使用する場合は、Cloud プロジェクト ロールを適切な組織ロールに変更します。

ログの表示

監査ログを検索して表示するには、監査ログ情報を表示する対象の Cloud プロジェクト、フォルダ、または組織の識別子を把握している必要があります。さらに、resource.type などの他のインデックス付き LogEntry フィールドも指定できます。詳しくは、ログ エクスプローラでクエリを作成するをご覧ください。

監査ログ名は次のようになります。名前には、Cloud プロジェクト、フォルダ、または組織の識別子の変数が含まれています。

   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy

監査ログエントリを表示する方法はいくつかあります。

コンソール

Cloud Console のログ エクスプローラを使用して、Cloud プロジェクトの監査ログエントリを取得できます。

  1. Cloud Console で、[ロギング] > [ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] ページに移動

  2. [ログ エクスプローラ] ページで、既存の Cloud プロジェクトを選択します。

  3. [クエリビルダー] ペインで、次の操作を行います。

    • [リソース] で、監査ログを表示する対象の Google Cloud リソースタイプを選択します。

    • [ログ名] で、表示する監査ログタイプを選択します。

      • 管理アクティビティ監査ログの場合は、[activity] を選択します。
      • データアクセス監査ログの場合は、[data_access] を選択します。
      • システム イベント監査ログの場合は、[system_event] を選択します。
      • ポリシー拒否監査ログの場合は、[policy] を選択します。

    これらのオプションが表示されない場合、Cloud プロジェクトにそのタイプの監査ログが存在しないことを意味します。

    新しいログ エクスプローラを使用したクエリの詳細については、ログ エクスプローラでクエリを作成するをご覧ください。

gcloud

Google Cloud CLI は、Cloud Logging API へのコマンドライン インターフェースを提供します。それぞれのログ名の中で有効な PROJECT_IDFOLDER_ID または ORGANIZATION_ID を指定します。

Google Cloud プロジェクト レベルの監査ログエントリを読み取るには、次のコマンドを実行します。

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \
    --project=PROJECT_ID

フォルダレベルの監査ログエントリを読み取るには、次のコマンドを実行します。

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \
    --folder=FOLDER_ID

組織レベルの監査ログエントリを読み取るには、次のコマンドを実行します。

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \
    --organization=ORGANIZATION_ID

gcloud CLI の使用方法に関する詳細については、gcloud logging read をご覧ください。

API

クエリを作成する場合は、変数を有効な値に置き換え、適切なプロジェクトレベル、フォルダレベル、または監査ログ名に表示されている組織レベルの監査ログ名もしくは ID を代わりに使用します。たとえば、クエリに PROJECT_ID が含まれている場合、指定するプロジェクト識別子は、現在選択された Cloud プロジェクトを参照している必要があります。

Logging API を使用して監査ログエントリを確認する手順は次のとおりです。

  1. entries.list メソッドのドキュメント内の [Try this API] セクションに移動します。

  2. [Try this API] フォームのリクエストの本文に、次のコードを入力します。この事前入力されたフォームをクリックすると、リクエストの本文が自動的に入力されますが、それぞれのログ名に有効な PROJECT_ID を指定する必要があります。

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. [実行] をクリックします。

クエリの詳細については、ロギングクエリ言語をご覧ください。

監査ログエントリのサンプルと、その中にある特に重要な情報を見つける方法については、監査ログについてをご覧ください。

監査ログのエクスポート

監査ログは、他の種類のログをエクスポートする場合と同じ方法でエクスポートできます。ログのエクスポート方法の詳細については、ログのエクスポートをご覧ください。監査ログのエクスポートに関する応用例の一部を以下に示します。

  • 監査ログを長期間保持する、またはより強力な検索機能を使用するには、監査ログのコピーを Cloud Storage、BigQuery、または Pub/Sub にエクスポートします。Pub/Sub を使用すると、他のアプリケーション、他のリポジトリ、サードパーティ製品にエクスポートできます。

  • 組織全体の監査ログを管理するには、組織内の一部または全部のプロジェクトからログをエクスポートできる集約シンクを作成します。

料金

Cloud Logging の無効にできない監査ログ(すべての管理アクティビティ監査ログを含む)は無料です。

監査ログの料金の詳細については、Google Cloud のオペレーション スイートの料金をご覧ください。