このページでは、Cloud Build によって作成される監査ログについて説明します。
監査ログの概要
Google Cloud サービスでは、Google Cloud プロジェクトおよび組織内で「誰がいつどこで何をしたか」の確認に役立つ監査ログが記録されます。
監査情報は次のカテゴリに分類できます。
管理アクティビティ: Cloud Build リソースの構成またはメタデータを変更するオペレーション。ビルドの作成やキャンセル、トリガーの作成、削除、有効化、無効化、更新を行う API 呼び出しがこのカテゴリに該当します。この監査情報はデフォルトで提供されます。
データアクセス(ADMIN_READ): プロジェクト、ビルド、トリガーの構成またはメタデータを読み取るオペレーション。デフォルトでは、この監査情報は提供されません。
データアクセス(DATA_READ): リソースからユーザー提供のデータを読み取るオペレーション。デフォルトでは、この監査情報は提供されません。
データアクセス(DATA_WRITE): ユーザー提供のデータをリソースに書き込むオペレーション。デフォルトでは、この監査情報は提供されません。
詳細については、Cloud Audit Logging をご覧ください。
監査されるオペレーション
次の表に、各監査ログのカテゴリに該当する Cloud Build API のオペレーションをまとめます。
監査ログのカテゴリ | Cloud Build のオペレーション |
---|---|
管理アクティビティ |
|
データアクセス(ADMIN_READ ) |
|
データアクセス(DATA_READ ) |
なし |
データアクセス(DATA_WRITE ) |
なし |
他のサービスの監査ログと異なり、Cloud Build は ADMIN_READ
データアクセス ログのみ提供し、DATA_READ
ログと DATA_WRITE
ログを提供しません。これは、DATA_READ
ログと DATA_WRITE
ログが、ユーザーデータを格納および管理するサービスにのみ使用されるためです。Cloud Build は、ビルドとトリガーを管理構成情報と見なします。
ログにアクセスするための権限
次のユーザーは管理アクティビティ ログを閲覧できます。
- プロジェクト オーナー、編集者、閲覧者
- ログ閲覧者の IAM 役割を持つユーザー
logging.logEntries.list
IAM 権限を持つユーザー
次のユーザーは、データアクセス ログを閲覧できます。
- プロジェクト オーナー
- プライベート ログ閲覧者の IAM 役割を持つユーザー
logging.privateLogEntries.list
IAM 権限を持つユーザー
IAM 権限の付与方法については、アクセス制御の構成をご覧ください。
監査ログ形式
監査ログエントリの構造は、次のとおりです。
これらのオブジェクトにどのような情報が保持されているかを知ると監査ログエントリについて理解を深めることができ、ログ エクスプローラや Stackdriver Logging API を使用して監査ログエントリを取得するのに役立ちます。
すべての監査ログエントリには、監査ログの名前、リソース、サービスが含まれています。
logName: このフィールドは、ログが管理アクティビティの監査ログとデータアクセスの監査ログのどちらであるかを表します。例:
projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fdata_access organizations/[ORGANIZATION_ID]/logs/cloudaudit.googleapis.com%2Factivity organizations/[ORGANIZATION_ID]/logs/cloudaudit.googleapis.com%2Fdata_access
プロジェクトまたは組織内で、これらのログ名の末尾には省略形の
activity
またはdata_access
が付されています。監視対象のリソースタイプ:
build
: 監査対象オペレーションのプロジェクト、ビルド、ビルドトリガーが含まれます。
serviceName: Cloud Build の場合、このフィールドには
cloudbuild.googleapis.com
が含まれます。リソースタイプは単一のサービスに属しますが、サービスは複数のリソースタイプを持つことができます。サービスとリソースの一覧については、サービスとリソースのマッピングをご覧ください。
詳細については、監査ログのデータ型をご覧ください。
ログを有効にする
管理者アクティビティ ログはデフォルトで有効になり、ログに記録されます。これらのログは、ログ取り込み割り当ての計算対象になりません。
デフォルトでは、Cloud Build オペレーションに関連するデータアクセス ログは記録されません。プロジェクトまたは組織でデータアクセス監査ログを構成できます。データアクセスに関連するオペレーションのロギングを有効にする方法については、データアクセス ログの構成をご覧ください。
割り当てと制限
管理アクティビティ ログは、ログ取り込み割り当ての計算対象になりません。
データアクセス オペレーションは大量になり、ログ取り込み割り当ての計算対象になります。
詳細については、割り当てと制限をご覧ください。
ログの表示
管理アクティビティの概要を表示するには:
Google Cloud Platform で [アクティビティ] を開きます。
ログを選択してフィルタリングし、詳細を表示するには:
[ログ エクスプローラ] ページを開きます。
最初のプルダウン メニューで、表示する監査ログのリソースを選択します。特定のプロジェクトまたは [すべてのプロジェクト] を選択します。
2 番目のメニューで、表示するログの名前を選択します。管理アクティビティの監査ログの場合は
activity
、データアクセス監査ログの場合はdata_access
です(ログが使用可能な場合)。
監査ログがログ エクスプローラに表示されます。
ログ エクスプローラの高度なフィルタのインターフェースを使用して、リソースタイプとログ名を指定することもできます。詳細については、監査ログの取得をご覧ください。
監査ログのエクスポート
ログの一部またはすべてのコピーを他のアプリケーション、他のリポジトリ、サードパーティにエクスポートすることができます。ログをエクスポートする方法については、ログのエクスポートをご覧ください。
組織では、集約シンクを作成して、組織のすべてのプロジェクト、フォルダ、請求先アカウントのログエントリをエクスポートできます。他のシンクと同様に、集約シンクにも個々のログエントリを選択するフィルタが含まれます。監査ログを集約してエクスポートする方法については、集約シンクをご覧ください。
API を使用してログエントリを読み取る方法については、entries.list をご覧ください。SDK を使用してログエントリを読み取る方法については、ログエントリの読み取りをご覧ください。
次のステップ
- [ログ エクスプローラ] ページでログのフィルタリング方法を確認する。
- ログのエクスポートの手順については、シンクの構成と管理のページをご覧ください。
- ビルドログの保存と表示に関する方法を確認する。