本文档介绍了 Pub/Sub 的审核日志记录。 Google Cloud 服务会生成审核日志,以记录 Google Cloud 资源中的管理和访问活动。如需详细了解 Cloud Audit Logs,请参阅以下内容:
备注
Pub/Sub 目前不会写入消息操作(例如发布、订阅和确认)的数据访问审核日志。
服务名称
Pub/Sub 审核日志使用服务名称 pubsub.googleapis.com。
针对此服务的过滤条件:
protoPayload.serviceName="pubsub.googleapis.com"
方法(按权限类型)
 每个 IAM 权限都有一个 type 属性,该属性的值是一个枚举,可以是以下四个值之一:ADMIN_READ、ADMIN_WRITE、DATA_READ 或 DATA_WRITE。当您调用某个方法时,Pub/Sub 会生成一条审核日志,其类别取决于执行该方法所需权限的 type 属性。需要 IAM 权限且 type 属性值为 DATA_READ、DATA_WRITE 或 ADMIN_READ 的方法会生成数据访问审核日志。需要 IAM 权限且 type 属性值为 ADMIN_WRITE 的方法会生成管理员活动审核日志。
| 权限类型 | 方法 | 
|---|---|
ADMIN_READ | 
    google.iam.v1.IAMPolicy.GetIamPolicygoogle.pubsub.v1.SchemaService.GetSchemagoogle.pubsub.v1.SchemaService.ListSchemaRevisionsgoogle.pubsub.v1.SchemaService.ListSchemasgoogle.pubsub.v1.SchemaService.ValidateMessagegoogle.pubsub.v1.SchemaService.ValidateSchemagoogle.pubsub.v1.Subscriber.GetSnapshotgoogle.pubsub.v1.Subscriber.ListSnapshotsgoogle.pubsub.v1.Subscriber.Seek | 
  
ADMIN_WRITE | 
    google.iam.v1.IAMPolicy.SetIamPolicygoogle.pubsub.v1.Publisher.CreateTopicgoogle.pubsub.v1.Publisher.DeleteTopicgoogle.pubsub.v1.Publisher.DetachSubscriptiongoogle.pubsub.v1.Publisher.UpdateTopicgoogle.pubsub.v1.SchemaService.CommitSchemagoogle.pubsub.v1.SchemaService.CreateSchemagoogle.pubsub.v1.SchemaService.DeleteSchemagoogle.pubsub.v1.SchemaService.DeleteSchemaRevisiongoogle.pubsub.v1.SchemaService.RollbackSchemagoogle.pubsub.v1.Subscriber.CreateSnapshotgoogle.pubsub.v1.Subscriber.CreateSubscriptiongoogle.pubsub.v1.Subscriber.DeleteSnapshotgoogle.pubsub.v1.Subscriber.DeleteSubscriptiongoogle.pubsub.v1.Subscriber.ModifyPushConfiggoogle.pubsub.v1.Subscriber.UpdateSnapshotgoogle.pubsub.v1.Subscriber.UpdateSubscription | 
  
DATA_READ | 
    google.pubsub.v1.Publisher.GetTopicgoogle.pubsub.v1.Publisher.ListTopicSnapshotsgoogle.pubsub.v1.Publisher.ListTopicSubscriptionsgoogle.pubsub.v1.Publisher.ListTopicsgoogle.pubsub.v1.Subscriber.GetSubscriptiongoogle.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_READpubsub.topics.getIamPolicy - ADMIN_READ
 - 方法是长时间运行的操作或流式传输操作:否。
 - 此方法的过滤条件:
protoPayload.methodName="google.iam.v1.IAMPolicy.GetIamPolicy" 
SetIamPolicy
- 方法:
google.iam.v1.IAMPolicy.SetIamPolicy - 审核日志类型:管理员活动
 - 权限:
pubsub.subscriptions.setIamPolicy - ADMIN_WRITEpubsub.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_READpubsub.schemas.validate - 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_WRITEpubsub.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"
    
   | 
  
不会生成审核日志的方法
由于以下一个或多个原因,方法可能不会生成审核日志:
- 这是一种高容量方法,涉及较高的日志生成和存储费用。
 - 它的审核价值较低。
 - 其他审核或平台日志已提供方法覆盖功能。
 
以下方法不会生成审核日志:
google.pubsub.v1.Publisher.Publishgoogle.pubsub.v1.Subscriber.Acknowledgegoogle.pubsub.v1.Subscriber.ModifyAckDeadlinegoogle.pubsub.v1.Subscriber.Pullgoogle.pubsub.v1.Subscriber.StreamingPulltech.pubsub.PublisherService.CreateTopictech.pubsub.PublisherService.DeleteTopictech.pubsub.PublisherService.GetTopictech.pubsub.PublisherService.ListTopicstech.pubsub.PublisherService.Publishtech.pubsub.PublisherService.PublishBatchtech.pubsub.SubscriberService.Acknowledgetech.pubsub.SubscriberService.CreateSubscriptiontech.pubsub.SubscriberService.DeleteSubscriptiontech.pubsub.SubscriberService.GetSubscriptiontech.pubsub.SubscriberService.ListSubscriptionstech.pubsub.SubscriberService.ModifyAckDeadlinetech.pubsub.SubscriberService.ModifyPushConfigtech.pubsub.SubscriberService.Pulltech.pubsub.SubscriberService.PullBatch