Cloud Audit Logs 会为每个 Cloud 项目、文件夹和组织维护以下审核日志:
- 管理员活动审核日志
- 数据访问审核日志
- 系统事件审核日志
- 政策拒绝审核日志
Google Cloud 服务会将审核日志条目写入这些日志,以帮助您了解在您的 Google Cloud 资源中“哪些用户何时在何处执行了什么操作”。
具有身份和访问权限管理政策 allAuthenticatedUsers
或 allUsers
的公开资源不会生成审核日志。这有助于保护最终用户的身份和信息。
如需查看可提供审核日志的 Google Cloud 服务的列表,请转到具有审核日志的 Google 服务。所有 Google Cloud 服务最终都会提供审核日志。
管理员活动审核日志
管理员活动审核日志包含 API 调用或其他用于修改资源配置或元数据的操作对应的日志条目。例如,这些日志会记录用户创建虚拟机实例或更改 Identity and Access Management 权限的时间。
如需查看这些日志,您必须具有下列 IAM 角色:Logging/Logs Viewer 或 Project/Viewer。
管理员活动审核日志始终会写入;您无法配置或停用它们。管理员活动审核日志可免费使用。如需详细了解日志记录用量限制,请参阅配额和限制。
数据访问审核日志
数据访问审核日志包含用于读取资源配置或元数据的 API 调用,以及用户进行的用于创建、修改或读取用户所提供资源数据的 API 调用。数据访问审核日志不会记录对公开共享的资源(所有用户或所有经过身份验证的用户均可使用)或无需登录 Google Cloud 即可访问的资源执行的数据访问操作。
如需查看这些日志,您必须具有以下 IAM 角色:Logging/Private Logs Viewer 或 Project/Owner。
默认情况下,数据访问审核日志(BigQuery 数据访问审核日志除外)处于停用状态,因为这些审核日志可能非常大。如果您想针对 BigQuery 以外的 Google Cloud 服务写入数据访问审核日志,则必须明确启用这些日志。启用这些日志可能导致我们因额外的日志使用量而对您的 Cloud 项目收取费用。有关启用和配置数据访问审核日志的说明,请参阅配置数据访问日志。
如需详细了解 Logging 使用量限额,请参阅配额和限制。如需详细了解可能产生的费用,请参阅价格。
系统事件审核日志
系统事件审核日志包含修改资源配置的 Google Cloud 操作对应的日志条目。系统事件审核日志是 Google 系统生成的;而不是通过直接用户操作生成的。
如需查看这些日志,您必须具有下列 IAM 角色:Logging/Logs Viewer 或 Project/Viewer。
系统事件审核日志始终会写入;您无法配置或停用它们。系统事件审核日志可免费使用。如需详细了解日志记录用量限制,请参阅配额和限制。
政策拒绝审核日志
当 Google Cloud 服务因违反安全政策而拒绝访问用户或服务帐号时,Cloud Logging 会记录政策拒绝审核日志。
如需查看这些日志,您必须具有下列 IAM 角色:Logging/Logs Viewer 或 Project/Viewer。
默认情况下,系统会生成违规拒绝审核日志,并向您的 Cloud 项目收取日志存储费用。您可以使用日志排除项来将违规拒绝的日志提取到 Cloud Logging 中。如需详细了解日志记录用量限制,请参阅配额和限制。如需详细了解可能产生的费用,请参阅价格。
审核日志条目结构
Cloud Logging 中的每个审核日志条目都是类型为 LogEntry
的对象。审核日志条目与其他日志条目的区别在于 protoPayload
字段;此字段包含用于存储审核日志数据的 AuditLog
对象。
如需了解如何读取和解读审核日志条目,请查看了解审核日志。
查看审核日志
如需查找和查看审核日志,您需要知道要查看的审核日志信息所属 Cloud 项目、文件夹或组织的标识符。您可以进一步指定其他已编入索引的 LogEntry
字段,如 resource.type
;如需了解详情,请查看快速查找日志条目。
以下是审核日志名称,其中含有 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 项目的审核日志条目:
在 Cloud Console 中,转到 Logging > 日志浏览器页面。
在日志浏览器页面上,选择一个现有的 Cloud 项目。
在查询构建器窗格中,执行以下操作:
在资源中,选择要查看其审核日志的 Google Cloud 资源类型。
在日志名称中,选择要查看的审核日志类型:
- 对于管理员活动审核日志,选择 activity。
- 对于数据访问审核日志,选择 data_access。
- 对于系统事件审核日志,选择 system_event。
- 对于政策拒绝审核日志,选择 policy。
如果您没有看到这些选项,则表示 Cloud 项目中没有该类型的审核日志。
如需详细了解如何使用新的日志浏览器进行查询,请参阅构建日志查询。
gcloud
gcloud
命令行工具提供了用于 Cloud Logging API 的命令行界面。在每个日志名称中提供有效的 PROJECT_ID
、FOLDER_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
工具,请参阅读取日志条目。
API
构建查询时,请用有效值替换变量,替换为适当的项目级层、文件夹级层或组织级层的审核日志名称或标识符(如审核日志名称中所列)。例如,如果您的查询包含 PROJECT_ID,则您提供的项目标识符必须引用当前选定的 Cloud 项目。
如需使用 Logging API 查看审核日志条目,请执行以下操作:
转到
entries.list
方法文档中的试用此 API 部分。将以下内容添加到试用此 API 表单的请求正文部分。点击此预填充的表单后,系统会自动填充请求正文,但您需要在每个日志名称中提供一个有效的
PROJECT_ID
。{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
点击执行。
如需详细了解查询,请参阅 Logging 查询语言。
如需查看审核日志条目示例并了解如何在其中找到最重要的信息,请参阅审核日志条目示例。
使用“活动”页面
您可以在 Cloud Console 的 Cloud 项目或组织的活动页面中查看缩写的审核日志条目。如需查看缩写的审核日志条目,请执行以下操作:
转到活动页面:
在项目选择器中,选择要查看其审核日志条目的 Cloud 项目或组织。
在过滤条件面板中,选择要查看的条目。
实际审核日志条目包含的信息量可能超过活动页面中显示的信息。
在“活动”页面中,如果系统在审核日志条目中遮盖用于执行记录操作的身份,则会显示 User (anonymized)
。如需了解详情,请参阅此页上的审核日志中的用户身份。
导出审核日志
您可以将审核日志条目导出到 Cloud Logging 或某些 Google Cloud 服务。
要将审核日志条目导出到 Logging 以外,您需要创建日志接收器。为接收器指定一个查询,指定要导出的审核日志类型;如需了解查询示例,请转到安全日志记录查询。
如果想要导出某个 Google Cloud 组织,文件夹或结算帐号的审核日志条目,请参阅汇总接收器。
下表显示了审核日志的大小上限。这些值可以帮助您估算导出目标位置所需的空间。
审核日志 | 大小上限 |
---|---|
管理活动 | 512 KiB |
数据访问 | 512 KiB |
系统事件 | 512 KiB |
政策拒绝 | 512 KiB |
审核日志保留
各个审核日志条目会保留一段指定的时间,之后会被删除。如需详细了解 Logging 将保留日志条目多长时间,请参阅配额和限制:日志保留期限中的保留期限信息。您无法以其他方式删除或修改审核日志条目。
审核日志类型 | 保留期限 |
---|---|
管理员活动 | 400 天 |
数据访问 | 30 天 |
系统事件 | 400 天 |
政策拒绝 | 30 天 |
如需延长保留期限,您可以像导出其他任何 Logging 日志条目一样导出审核日志条目,并根据需要保留这些条目。
您还可以配置 Cloud Logging,将日志保留期限设为 1 - 3650 天。如需了解详情,请参阅存储日志:自定义保留期。
审核日志中的调用方身份
审核日志会记录对 Google Cloud 资源执行已记录操作的身份。调用者的身份保存在 AuditLog 对象的 AuthenticationInfo
字段中。
在以下情况下,如果符合所有条件,审核日志中的调用方主电子邮件地址将被遮盖:
- 这是一项只读操作。
- 操作失败,显示“权限被拒绝”错误。
- 如果身份是服务帐号,且该身份不是与资源相关联的 Google Cloud 组织的成员。如果身份不是服务帐号,则此条件不适用。
除了上面列出的条件外,以下条件适用于某些 Google Cloud 产品:
旧版 App Engine API:不收集身份信息。
BigQuery:除非满足某些条件,否则系统会在审核日志中遮盖调用方身份和 IP 地址以及一些资源名称。如需了解详情,请转到 BigQuery 审核日志概览。
如果您使用 Google Cloud Console “活动”页面查看审核日志,则对于身份被遮盖或为空的日志条目,系统显示 User (anonymized)
。
生成审核日志的 Google 服务
如需查看可提供审核日志的 Google Cloud 服务的列表,请转到具有审核日志的 Google 服务。所有 Google Cloud 服务最终都会提供审核日志。