Pub/Sub 审核日志记录

本文档介绍了 Pub/Sub 的审核日志记录。Google Cloud 服务会生成审核日志,以记录 Google Cloud 资源中的管理和访问活动。 如需详细了解 Cloud Audit Logs,请参阅以下内容:

备注

Pub/Sub 目前不会写入消息操作(例如发布、订阅和确认)的数据访问审核日志。

服务名称

Pub/Sub 审核日志使用服务名称 pubsub.googleapis.com。 针对此服务的过滤条件:

    protoPayload.serviceName="pubsub.googleapis.com"
  

方法(按权限类型)

每个 IAM 权限都有一个 type 属性,该属性的值是一个枚举,可以是以下四个值之一:ADMIN_READADMIN_WRITEDATA_READDATA_WRITE。当您调用某个方法时,Pub/Sub 会生成一个审核日志,其类别取决于执行该方法所需权限的 type 属性。需要 IAM 权限且 type 属性值为 DATA_READDATA_WRITEADMIN_READ 的方法会生成数据访问审核日志。需要 IAM 权限且 type 属性值为 ADMIN_WRITE 的方法会生成管理员活动审核日志。

权限类型 方法
ADMIN_READ google.iam.v1.IAMPolicy.GetIamPolicy
google.pubsub.v1.SchemaService.GetSchema
google.pubsub.v1.SchemaService.ListSchemaRevisions
google.pubsub.v1.SchemaService.ListSchemas
google.pubsub.v1.SchemaService.ValidateMessage
google.pubsub.v1.SchemaService.ValidateSchema
google.pubsub.v1.Subscriber.GetSnapshot
google.pubsub.v1.Subscriber.ListSnapshots
google.pubsub.v1.Subscriber.Seek
ADMIN_WRITE google.iam.v1.IAMPolicy.SetIamPolicy
google.pubsub.v1.Publisher.CreateTopic
google.pubsub.v1.Publisher.DeleteTopic
google.pubsub.v1.Publisher.DetachSubscription
google.pubsub.v1.Publisher.UpdateTopic
google.pubsub.v1.SchemaService.CommitSchema
google.pubsub.v1.SchemaService.CreateSchema
google.pubsub.v1.SchemaService.DeleteSchema
google.pubsub.v1.SchemaService.DeleteSchemaRevision
google.pubsub.v1.SchemaService.RollbackSchema
google.pubsub.v1.Subscriber.CreateSnapshot
google.pubsub.v1.Subscriber.CreateSubscription
google.pubsub.v1.Subscriber.DeleteSnapshot
google.pubsub.v1.Subscriber.DeleteSubscription
google.pubsub.v1.Subscriber.ModifyPushConfig
google.pubsub.v1.Subscriber.UpdateSnapshot
google.pubsub.v1.Subscriber.UpdateSubscription
DATA_READ google.pubsub.v1.Publisher.GetTopic
google.pubsub.v1.Publisher.ListTopicSnapshots
google.pubsub.v1.Publisher.ListTopicSubscriptions
google.pubsub.v1.Publisher.ListTopics
google.pubsub.v1.Subscriber.GetSubscription
google.pubsub.v1.Subscriber.ListSubscriptions

API 接口审核日志

如需了解如何评估每种方法的权限以及评估哪些权限,请参阅 Pub/Sub 的 Identity and Access Management 文档。

google.iam.v1.IAMPolicy

以下审核日志与属于 google.iam.v1.IAMPolicy 的方法相关联。

GetIamPolicy

  • 方法google.iam.v1.IAMPolicy.GetIamPolicy
  • 审核日志类型数据访问
  • 权限
    • pubsub.subscriptions.getIamPolicy - ADMIN_READ
    • pubsub.topics.getIamPolicy - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.iam.v1.IAMPolicy.GetIamPolicy"

SetIamPolicy

  • 方法google.iam.v1.IAMPolicy.SetIamPolicy
  • 审核日志类型管理员活动
  • 权限
    • pubsub.subscriptions.setIamPolicy - ADMIN_WRITE
    • pubsub.topics.setIamPolicy - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.iam.v1.IAMPolicy.SetIamPolicy"

google.pubsub.v1.Publisher

以下审核日志与属于 google.pubsub.v1.Publisher 的方法相关联。

CreateTopic

  • 方法google.pubsub.v1.Publisher.CreateTopic
  • 审核日志类型管理员活动
  • 权限
    • pubsub.topics.create - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.CreateTopic"

DeleteTopic

  • 方法google.pubsub.v1.Publisher.DeleteTopic
  • 审核日志类型管理员活动
  • 权限
    • pubsub.topics.delete - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.DeleteTopic"

DetachSubscription

  • 方法google.pubsub.v1.Publisher.DetachSubscription
  • 审核日志类型管理员活动
  • 权限
    • pubsub.topics.detachSubscription - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.DetachSubscription"

GetTopic

  • 方法google.pubsub.v1.Publisher.GetTopic
  • 审核日志类型数据访问
  • 权限
    • pubsub.topics.get - DATA_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.GetTopic"

ListTopicSnapshots

  • 方法google.pubsub.v1.Publisher.ListTopicSnapshots
  • 审核日志类型数据访问
  • 权限
    • pubsub.topics.get - DATA_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.ListTopicSnapshots"

ListTopicSubscriptions

  • 方法google.pubsub.v1.Publisher.ListTopicSubscriptions
  • 审核日志类型数据访问
  • 权限
    • pubsub.topics.get - DATA_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.ListTopicSubscriptions"

ListTopics

  • 方法google.pubsub.v1.Publisher.ListTopics
  • 审核日志类型数据访问
  • 权限
    • pubsub.topics.list - DATA_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.ListTopics"

UpdateTopic

  • 方法google.pubsub.v1.Publisher.UpdateTopic
  • 审核日志类型管理员活动
  • 权限
    • pubsub.topics.update - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Publisher.UpdateTopic"

google.pubsub.v1.SchemaService

以下审核日志与属于 google.pubsub.v1.SchemaService 的方法相关联。

CommitSchema

  • 方法google.pubsub.v1.SchemaService.CommitSchema
  • 审核日志类型管理员活动
  • 权限
    • pubsub.schemas.commit - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.CommitSchema"

CreateSchema

  • 方法google.pubsub.v1.SchemaService.CreateSchema
  • 审核日志类型管理员活动
  • 权限
    • pubsub.schemas.create - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.CreateSchema"

DeleteSchema

  • 方法google.pubsub.v1.SchemaService.DeleteSchema
  • 审核日志类型管理员活动
  • 权限
    • pubsub.schemas.delete - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.DeleteSchema"

DeleteSchemaRevision

  • 方法google.pubsub.v1.SchemaService.DeleteSchemaRevision
  • 审核日志类型管理员活动
  • 权限
    • pubsub.schemas.delete - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.DeleteSchemaRevision"

GetSchema

  • 方法google.pubsub.v1.SchemaService.GetSchema
  • 审核日志类型数据访问
  • 权限
    • pubsub.schemas.get - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.GetSchema"

ListSchemaRevisions

  • 方法google.pubsub.v1.SchemaService.ListSchemaRevisions
  • 审核日志类型数据访问
  • 权限
    • pubsub.schemas.listRevisions - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.ListSchemaRevisions"

ListSchemas

  • 方法google.pubsub.v1.SchemaService.ListSchemas
  • 审核日志类型数据访问
  • 权限
    • pubsub.schemas.list - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.ListSchemas"

RollbackSchema

  • 方法google.pubsub.v1.SchemaService.RollbackSchema
  • 审核日志类型管理员活动
  • 权限
    • pubsub.schemas.rollback - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.RollbackSchema"

ValidateMessage

  • 方法google.pubsub.v1.SchemaService.ValidateMessage
  • 审核日志类型数据访问
  • 权限
    • pubsub.schemas.get - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.ValidateMessage"

ValidateSchema

  • 方法google.pubsub.v1.SchemaService.ValidateSchema
  • 审核日志类型数据访问
  • 权限
    • pubsub.schemas.validate - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.SchemaService.ValidateSchema"

google.pubsub.v1.Subscriber

以下审核日志与属于 google.pubsub.v1.Subscriber 的方法相关联。

CreateSnapshot

  • 方法google.pubsub.v1.Subscriber.CreateSnapshot
  • 审核日志类型管理员活动
  • 权限
    • pubsub.snapshots.create - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.CreateSnapshot"

CreateSubscription

  • 方法google.pubsub.v1.Subscriber.CreateSubscription
  • 审核日志类型管理员活动
  • 权限
    • pubsub.subscriptions.create - ADMIN_WRITE
    • pubsub.topics.attachSubscription - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.CreateSubscription"

DeleteSnapshot

  • 方法google.pubsub.v1.Subscriber.DeleteSnapshot
  • 审核日志类型管理员活动
  • 权限
    • pubsub.snapshots.delete - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.DeleteSnapshot"

DeleteSubscription

  • 方法google.pubsub.v1.Subscriber.DeleteSubscription
  • 审核日志类型管理员活动
  • 权限
    • pubsub.subscriptions.delete - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.DeleteSubscription"

GetSnapshot

  • 方法google.pubsub.v1.Subscriber.GetSnapshot
  • 审核日志类型数据访问
  • 权限
    • pubsub.snapshots.get - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.GetSnapshot"

GetSubscription

  • 方法google.pubsub.v1.Subscriber.GetSubscription
  • 审核日志类型数据访问
  • 权限
    • pubsub.subscriptions.get - DATA_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.GetSubscription"

ListSnapshots

  • 方法google.pubsub.v1.Subscriber.ListSnapshots
  • 审核日志类型数据访问
  • 权限
    • pubsub.snapshots.list - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.ListSnapshots"

ListSubscriptions

  • 方法google.pubsub.v1.Subscriber.ListSubscriptions
  • 审核日志类型数据访问
  • 权限
    • pubsub.subscriptions.list - DATA_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.ListSubscriptions"

ModifyPushConfig

  • 方法google.pubsub.v1.Subscriber.ModifyPushConfig
  • 审核日志类型管理员活动
  • 权限
    • pubsub.subscriptions.update - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.ModifyPushConfig"

Seek

  • 方法google.pubsub.v1.Subscriber.Seek
  • 审核日志类型数据访问
  • 权限
    • pubsub.snapshots.seek - ADMIN_READ
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.Seek"

UpdateSnapshot

  • 方法google.pubsub.v1.Subscriber.UpdateSnapshot
  • 审核日志类型管理员活动
  • 权限
    • pubsub.snapshots.update - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.UpdateSnapshot"

UpdateSubscription

  • 方法google.pubsub.v1.Subscriber.UpdateSubscription
  • 审核日志类型管理员活动
  • 权限
    • pubsub.subscriptions.update - ADMIN_WRITE
  • 方法是长时间运行的操作或流式传输操作:否。
  • 此方法的过滤条件 protoPayload.methodName="google.pubsub.v1.Subscriber.UpdateSubscription"

系统事件

系统事件审核日志是 GCP 系统生成的,而不是通过直接用户操作生成的。如需了解详情,请参阅系统事件审核日志

方法名称 过滤此事件 备注
Internal.DeletedProjectRemoveSubscription protoPayload.methodName="Internal.DeletedProjectRemoveSubscription"
Internal.DeletedProjectRemoveTopic protoPayload.methodName="Internal.DeletedProjectRemoveTopic"
Subscriber.InternalExpireInactiveSnapshot protoPayload.methodName="Subscriber.InternalExpireInactiveSnapshot"
Subscriber.InternalExpireInactiveSubscription protoPayload.methodName="Subscriber.InternalExpireInactiveSubscription"
Subscriber.InternalSuspendSubscriptionKeyUnavailable protoPayload.methodName="Subscriber.InternalSuspendSubscriptionKeyUnavailable"

不会生成审核日志的方法

由于以下一个或多个原因,方法可能不会生成审核日志:

  • 这是一种高容量方法,涉及较高的日志生成和存储费用。
  • 它的审核价值较低。
  • 其他审核或平台日志已提供方法。

以下方法不会生成审核日志:

  • google.pubsub.v1.Publisher.Publish
  • google.pubsub.v1.Subscriber.Acknowledge
  • google.pubsub.v1.Subscriber.ModifyAckDeadline
  • google.pubsub.v1.Subscriber.Pull
  • google.pubsub.v1.Subscriber.StreamingPull
  • tech.pubsub.PublisherService.CreateTopic
  • tech.pubsub.PublisherService.DeleteTopic
  • tech.pubsub.PublisherService.GetTopic
  • tech.pubsub.PublisherService.ListTopics
  • tech.pubsub.PublisherService.Publish
  • tech.pubsub.PublisherService.PublishBatch
  • tech.pubsub.SubscriberService.Acknowledge
  • tech.pubsub.SubscriberService.CreateSubscription
  • tech.pubsub.SubscriberService.DeleteSubscription
  • tech.pubsub.SubscriberService.GetSubscription
  • tech.pubsub.SubscriberService.ListSubscriptions
  • tech.pubsub.SubscriberService.ModifyAckDeadline
  • tech.pubsub.SubscriberService.ModifyPushConfig
  • tech.pubsub.SubscriberService.Pull
  • tech.pubsub.SubscriberService.PullBatch