本页面介绍了 Cloud Audit Logs 中由 Cloud IoT Core 创建的审核日志。
概览
Google Cloud 服务会写入审核日志来帮助您回答“谁在何时何地做了什么”的问题。每个 Cloud 项目都只包含直接属于项目的资源的审核日志。其他实体(包括文件夹、组织和结算帐号)均包含自身的审核日志。
Cloud IoT Core 会针对管理员活动生成并默认提供审核日志,此类活动包括修改资源配置或元数据的操作。这些活动主要包括设备设置、云端到设备配置以及设备注册表设置。
Cloud IoT Core 会针对数据访问写入审核日志,但默认不提供审核日志,这些审核日志记录读取用户所提供数据的 API 调用。
启用审核日志
管理员活动审核日志默认启用,且只能通过 Cloud Logging 排除项停用。
大多数 Google Cloud 数据访问审核日志默认情况下处于停用状态。但 BigQuery 的数据访问审核日志例外,其在默认情况下处于启用状态并且无法停用;BigQuery 数据访问日志不计入项目的日志记录配额。
要启用部分或全部数据访问日志,请参阅配置数据访问日志。
您配置的数据访问日志可能会影响 Google Cloud 的运维套件中的日志定价。如需了解详情,请参阅本页面上的价格部分。
审核的操作
下表汇总了与 Cloud IoT Core 中的每种审核日志类型相对应的 API 操作:
审核日志类别 | Cloud IoT Core 操作 |
---|---|
管理员活动日志 |
|
数据访问日志 (ADMIN_READ ) |
|
数据访问日志 (DATA_READ ) |
无 |
数据访问日志 (DATA_WRITE ) |
无 |
数据访问日志
数据访问审核日志分为三类:ADMIN_READ
、DATA_READ
和 DATA_WRITE
。但是,Cloud IoT Core 仅使用 ADMIN_READ
数据访问日志。这是因为 DATA_READ
和 DATA_WRITE
日志仅用于可以存储和管理用户数据的服务(例如 Cloud Storage、Cloud Spanner 和 Cloud SQL),不适用于 Cloud IoT Core。
数据访问日志类型 | 说明 | 可用性 |
---|---|---|
ADMIN_READ |
读取资源的配置或元数据的操作。 | 默认情况下,Cloud IoT Core 不提供 ADMIN_READ 日志。 |
DATA_READ |
从资源中读取用户提供的数据的操作。 | Cloud IoT Core 不提供 DATA_READ 日志。 |
DATA_WRITE |
将用户提供的数据写入资源的操作。 | Cloud IoT Core 不提供 DATA_WRITE 日志。 |
您可以配置默认不提供的审核信息。如需了解详情,请参阅配置数据访问日志。
审核日志格式
审核日志条目(可以使用日志查看器、API 或 SDK gcloud logging
命令查看)包括以下对象:
日志条目本身,即类型为
LogEntry
的对象。有用的字段如下所示:logName
包含项目标识和审核日志类型resource
包含所审核操作的目标timestamp
包含所审核操作的时间protoPayload
包含审核信息
审核信息,它是保存在日志条目的
protoPayload
字段中的AuditLog
对象。
如需了解这些对象中的其他字段、其内容示例以及对象中信息的示例查询,请参阅审核日志数据类型。
日志名称和服务名称
Cloud Audit Logs 日志名称指明了该日志归哪个项目或其他实体所有,以及该日志包含管理员活动还是数据访问信息。例如,下面显示的日志名称分别表示项目的管理员活动日志和组织的数据访问日志。
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
服务名称和资源类型
Cloud IoT Core 审核日志使用服务名称 cloudiot.googleapis.com
。
Cloud IoT Core 审核日志对于所有审核日志都使用资源类型 cloudiot_device
和 cloudiot_device_registry
。
如需详细了解日志记录服务和资源,请参阅将服务映射到资源。
审核日志权限
Identity and Access Management 权限和角色决定您可以查看或导出哪些审核日志。日志位于项目以及组织、文件夹和结算帐号等一些其他实体中。如需了解详情,请参阅了解角色。
如需查看管理员活动日志,您必须在审核日志所属的项目中拥有下列 IAM 角色之一:
- Project Owner、Project Editor 或 Project Viewer。 如需了解详情,请参阅基本角色。
- Logging 的 Logs Viewer 角色。
- 具有
logging.logEntries.list
IAM 权限的自定义 IAM 角色。
要查看数据访问日志,您必须对审核日志所在的项目拥有以下角色之一:
- Project Owner。
- Logging 的 Private Logs Viewer 角色。
- 具有
logging.privateLogEntries.list
IAM 权限的自定义 IAM 角色。
如果您正在使用非项目实体(例如组织)的审核日志,请将项目角色更改为合适的组织角色。
查看日志
要查看您的某个项目的审核日志,请执行以下操作之一:
在活动信息中心查看管理员活动日志摘要:
使用日志浏览器查看您的所有审核日志。
如需了解详情,请参阅以下选项:
基本查看器
您可以通过执行以下操作,使用日志浏览器基本界面检索审核日志条目:
- 在第一个菜单中,选择要查看其审核日志的资源类型。请选择特定资源或所有资源。
- 在第二个菜单中,选择要查看的日志名称:
activity
用于“管理员活动”审核日志,data_access
用于“数据访问”审核日志。如果您没有看到这两个选项中的某一个,或两个选项都没有看到,则表示没有该类型的审核日志。
高级查看器
- 切换到日志浏览器中的高级过滤条件界面。
- 创建一个指定所需资源类型和日志名称的过滤条件。如需了解详情,请参阅检索审核日志。
API
如需通过 Logging API 读取日志条目,请参阅 entries.list
。
SDK
如需使用 Google Cloud CLI 读取日志条目,请参阅读取日志条目。
导出审核日志
您可以按照导出其他类型日志的方式导出审核日志。如需详细了解如何导出日志,请参阅导出日志。以下是用于导出审核日志的一些应用:
要长时间保留审核日志或使用更强大的搜索功能,您可以将审核日志的副本导出到 Cloud Storage、BigQuery 或 Pub/Sub。使用 Pub/Sub,您可以将内容导出到其他应用、其他代码库和第三方。
如需管理整个组织范围内与您相关的审核日志,您可以创建一个汇总接收器,以便从组织中的任何或所有项目导出日志。
如果启用的数据访问日志即将导致项目超出其日志配额,您可以通过 Logging 导出和排除数据访问日志。如需了解详情,请参阅排除日志。
价格
Cloud Logging 不会针对默认启用的审核日志(包括所有管理员活动日志)向您收费。这些日志不计入您的日志提取配额。
而只会针对您明确请求的数据访问日志向您收取费用。
如需详细了解日志定价(包括审核日志定价),请参阅 Google Cloud 的运维套件定价。
豁免方法
以下 Cloud IoT Core API 方法不会记录在审核日志中:
registries.testIamPermissions
registries.devices.configVersions.list
registries.devices.states.list