Auf dieser Seite werden die Optionen für die Zugriffssteuerung beschrieben, die Ihnen in Eventarc zur Verfügung stehen.
Übersicht 
Eventarc verwendet für die Zugriffssteuerung Identity and Access Management (IAM).
Eine Einführung in IAM und die zugehörigen Features finden Sie in der IAM-Übersicht . Informationen zum Gewähren und Entziehen des Zugriffs finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten .
In den folgenden Abschnitten finden Sie eine Liste der Berechtigungen und Rollen, die von Eventarc unterstützt werden.
Eventarc-Dienst-Agent 
Einige Google Cloud -Dienste haben Dienst-Agents , mit denen der Dienst auf Ihre Ressourcen zugreifen kann, wenn die entsprechenden Berechtigungen erteilt wurden. Wenn eine API einen Dienst-Agent erfordert, erstellt Google Cloud den Dienst-Agent irgendwann, nachdem Sie die API aktiviert und verwendet haben.
Eventarc verwendet ein Bereitstellungsmodell, bei dem der Dienst-Agent erst erstellt wird, wenn er zum ersten Mal benötigt wird, z. B. wenn Sie zum ersten Mal eine Eventarc-Ressource erstellen, und nicht, wenn die API zum ersten Mal aktiviert wird.
Die Bereitstellung des Dienst-Agents und die Übertragung der Änderungen im System können einige Minuten dauern.  Weitere Informationen zu dieser Verzögerung finden Sie unter Berechtigung verweigert bei Verwendung des Eventarc-Dienst-Agents .
Eventarc APIs aktivieren 
Zum Anzeigen und Zuweisen von IAM-Rollen für Eventarc müssen Sie für Ihr Projekt die Eventarc APIs aktivieren. Sie können die Eventarc-Rollen in der Google Cloud Console erst sehen, wenn Sie die APIs aktiviert haben.
Aktivieren Sie die Eventarc API  und die Eventarc Publishing API :
Console 
  
   
   
     
   
  
   
   
     
   
  
   
   
     
   
  
 
 
   
 
 
  
  
    
      
        
      
Roles required to enable APIs 
          To enable APIs, you need the Service Usage Admin IAM
          role (roles/serviceusage.serviceUsageAdmin), which
          contains the serviceusage.services.enable permission. Learn how to grant
          roles .
        
Enable the APIs 
    
  
  
 gcloud  
  
   
   
  
   
   
  
   
   
  
 
 
 
  
  
    
  
  Roles required to enable APIs 
      To enable APIs, you need the Service Usage Admin IAM
      role (roles/serviceusage.serviceUsageAdmin), which contains the
      serviceusage.services.enable permission. Learn how to grant
      roles .
    
gcloud  services  enable   eventarc.googleapis.com eventarcpublishing.googleapis.com   
Vordefinierte Rollen 
In der folgenden Tabelle sind die vordefinierten IAM-Rollen für Eventarc und die jeweiligen Berechtigungen aufgeführt, die eine Rolle umfasst.
Diese vorkonfigurierten Rollen berücksichtigen die meisten typischen Anwendungsfälle. Wenn Ihr Anwendungsfall nicht durch die vordefinierten Rollen abgedeckt ist, können Sie eine benutzerdefinierte IAM-Rolle erstellen .
Eventarc-Rollen 
  
Role 
Permissions 
 
 
Eventarc Admin
 
(roles/eventarc.admin )
Full control over all Eventarc resources.
 
Lowest-level resources where you can grant this role:
 
  
    
      eventarc.*
    
      eventarc.channelConnections.create  eventarc.channelConnections.delete  eventarc.channelConnections.get  eventarc.channelConnections.getIamPolicy  eventarc.channelConnections.list  eventarc.channelConnections.publish  eventarc.channelConnections.setIamPolicy  eventarc.channels.attacheventarc.channels.createeventarc.channels.deleteeventarc.channels.geteventarc.channels.getIamPolicyeventarc.channels.listeventarc.channels.publisheventarc.channels.setIamPolicyeventarc.channels.undeleteeventarc.channels.updateeventarc.enrollments.createeventarc.enrollments.deleteeventarc.enrollments.geteventarc.enrollments.getIamPolicy  eventarc.enrollments.listeventarc.enrollments.setIamPolicy  eventarc.enrollments.updateeventarc.events.receiveAuditLogWritten  eventarc.events.receiveEventeventarc.googleApiSources.create  eventarc.googleApiSources.delete  eventarc.googleApiSources.geteventarc.googleApiSources.getIamPolicy  eventarc.googleApiSources.listeventarc.googleApiSources.setIamPolicy  eventarc.googleApiSources.update  eventarc.googleChannelConfigs.get  eventarc.googleChannelConfigs.update  eventarc.kafkaSources.createeventarc.kafkaSources.deleteeventarc.kafkaSources.geteventarc.kafkaSources.getIamPolicy  eventarc.kafkaSources.listeventarc.kafkaSources.setIamPolicy  eventarc.locations.geteventarc.locations.listeventarc.messageBuses.createeventarc.messageBuses.deleteeventarc.messageBuses.geteventarc.messageBuses.getIamPolicy  eventarc.messageBuses.listeventarc.messageBuses.publisheventarc.messageBuses.setIamPolicy  eventarc.messageBuses.updateeventarc.messageBuses.useeventarc.multiProjectSources.collectGoogleApiEvents  eventarc.operations.canceleventarc.operations.deleteeventarc.operations.geteventarc.operations.listeventarc.pipelines.createeventarc.pipelines.deleteeventarc.pipelines.geteventarc.pipelines.getIamPolicy  eventarc.pipelines.listeventarc.pipelines.setIamPolicy  eventarc.pipelines.updateeventarc.providers.geteventarc.providers.listeventarc.triggers.createeventarc.triggers.deleteeventarc.triggers.geteventarc.triggers.getIamPolicyeventarc.triggers.listeventarc.triggers.setIamPolicyeventarc.triggers.undeleteeventarc.triggers.update 
   
  resourcemanager.projects.get
  resourcemanager.projects.list
 
 
Eventarc Connection Publisher
Beta 
 
(roles/eventarc.connectionPublisher )
Can publish events to Eventarc channel connections.
 
Lowest-level resources where you can grant this role:
 
  eventarc.channelConnections.get  
  eventarc.channelConnections.list  
  eventarc.channelConnections.publish  
  resourcemanager.projects.get
  resourcemanager.projects.list
 
 
Eventarc Developer
 
(roles/eventarc.developer )
Access to read and write Eventarc resources.
 
Lowest-level resources where you can grant this role:
 
  eventarc.channelConnections.create  
  eventarc.channelConnections.delete  
  eventarc.channelConnections.get  
  eventarc.channelConnections.getIamPolicy  
  eventarc.channelConnections.list  
  eventarc.channelConnections.publish  
  eventarc.channels.attach
  eventarc.channels.create
  eventarc.channels.delete
  eventarc.channels.get
  eventarc.channels.getIamPolicy
  eventarc.channels.list
  eventarc.channels.publish
  eventarc.channels.undelete
  eventarc.channels.update
  eventarc.enrollments.create
  eventarc.enrollments.delete
  eventarc.enrollments.get
  eventarc.enrollments.getIamPolicy  
  eventarc.enrollments.list
  eventarc.enrollments.update
  eventarc.googleApiSources.create  
  eventarc.googleApiSources.delete  
  eventarc.googleApiSources.get
  eventarc.googleApiSources.getIamPolicy  
  eventarc.googleApiSources.list
  eventarc.googleApiSources.update  
  
    
      eventarc.googleChannelConfigs.* 
    
      eventarc.googleChannelConfigs.get  eventarc.googleChannelConfigs.update   
   
  eventarc.kafkaSources.create
  eventarc.kafkaSources.delete
  eventarc.kafkaSources.get
  eventarc.kafkaSources.getIamPolicy  
  eventarc.kafkaSources.list
  
    
      eventarc.locations.*
    
      eventarc.locations.geteventarc.locations.list 
   
  
    
      eventarc.operations.*
    
      eventarc.operations.canceleventarc.operations.deleteeventarc.operations.geteventarc.operations.list 
   
  eventarc.pipelines.create
  eventarc.pipelines.delete
  eventarc.pipelines.get
  eventarc.pipelines.getIamPolicy  
  eventarc.pipelines.list
  eventarc.pipelines.update
  
    
      eventarc.providers.*
    
      eventarc.providers.geteventarc.providers.list 
   
  eventarc.triggers.create
  eventarc.triggers.delete
  eventarc.triggers.get
  eventarc.triggers.getIamPolicy
  eventarc.triggers.list
  eventarc.triggers.undelete
  eventarc.triggers.update
  resourcemanager.projects.get
  resourcemanager.projects.list
 
 
Eventarc Event Receiver
 
(roles/eventarc.eventReceiver )
Can receive events from all event providers.
 
Lowest-level resources where you can grant this role:
 
  
    
      eventarc.events.*
    
      eventarc.events.receiveAuditLogWritten  eventarc.events.receiveEvent 
   
 
 
Eventarc Message Bus Admin
Beta 
 
(roles/eventarc.messageBusAdmin )
Full control over Message Buses resources.
 
 
  eventarc.messageBuses.create
  eventarc.messageBuses.delete
  eventarc.messageBuses.get
  eventarc.messageBuses.getIamPolicy  
  eventarc.messageBuses.list
  eventarc.messageBuses.publish
  eventarc.messageBuses.update
  eventarc.messageBuses.use
 
 
Eventarc Message Bus User
Beta 
 
(roles/eventarc.messageBusUser )
Access to publish to or bind to a Message Bus.
 
 
  eventarc.messageBuses.get
  eventarc.messageBuses.list
  eventarc.messageBuses.publish
  eventarc.messageBuses.use
 
 
Eventarc Event Collector
Beta 
 
(roles/eventarc.multiProjectEventCollector )
Can collect events from multiple projects in an org for a source resource.
 
 
  eventarc.multiProjectSources.collectGoogleApiEvents  
 
 
Eventarc Publisher
Beta 
 
(roles/eventarc.publisher )
Can publish events to Eventarc channels.
 
Lowest-level resources where you can grant this role:
 
  eventarc.channels.get
  eventarc.channels.list
  eventarc.channels.publish
  resourcemanager.projects.get
  resourcemanager.projects.list
 
 
Eventarc Service Agent
 
(roles/eventarc.serviceAgent )
Gives Eventarc service account access to managed resources.
 
  Warning:  Do not grant service agent roles to any principals except
  service agents .
 
 
  cloudfunctions.functions.get
  compute.instanceGroupManagers.get  
  compute.networkAttachments.get
  compute.networkAttachments.update  
  compute.networkAttachments.use
  compute.regionOperations.get
  container.clusters.connect
  container.clusters.get
  container.deployments.create
  container.deployments.delete
  container.deployments.get
  container.deployments.list
  container.deployments.update
  container.namespaces.create
  container.namespaces.delete
  container.namespaces.get
  container.namespaces.list
  container.serviceAccounts.create  
  container.serviceAccounts.delete  
  container.serviceAccounts.get
  container.serviceAccounts.list
  container.services.get
  container.services.list
  dns.networks.targetWithPeeringZone  
  eventarc.channels.publish
  eventarc.messageBuses.publish
  eventarc.operations.get
  iam.serviceAccounts.actAs
  iam.serviceAccounts.getAccessToken  
  iam.serviceAccounts.getOpenIdToken  
  monitoring.timeSeries.create
  pubsub.subscriptions.consume
  pubsub.subscriptions.create
  pubsub.subscriptions.delete
  pubsub.subscriptions.get
  pubsub.subscriptions.list
  pubsub.subscriptions.update
  pubsub.topics.attachSubscription  
  pubsub.topics.create
  pubsub.topics.delete
  pubsub.topics.get
  pubsub.topics.list
  pubsub.topics.publish
  pubsub.topics.update
  run.jobs.get
  run.services.get
  serviceusage.services.use
  storage.buckets.get
  storage.buckets.update
  workflows.workflows.get
 
 
Eventarc Viewer
 
(roles/eventarc.viewer )
Can view the state of all Eventarc resources, including IAM policies.
 
Lowest-level resources where you can grant this role:
 
  eventarc.channelConnections.get  
  eventarc.channelConnections.getIamPolicy  
  eventarc.channelConnections.list  
  eventarc.channels.get
  eventarc.channels.getIamPolicy
  eventarc.channels.list
  eventarc.enrollments.get
  eventarc.enrollments.getIamPolicy  
  eventarc.enrollments.list
  eventarc.googleApiSources.get
  eventarc.googleApiSources.getIamPolicy  
  eventarc.googleApiSources.list
  eventarc.googleChannelConfigs.get  
  eventarc.kafkaSources.get
  eventarc.kafkaSources.getIamPolicy  
  eventarc.kafkaSources.list
  
    
      eventarc.locations.*
    
      eventarc.locations.geteventarc.locations.list 
   
  eventarc.messageBuses.get
  eventarc.messageBuses.getIamPolicy  
  eventarc.messageBuses.list
  eventarc.messageBuses.use
  eventarc.multiProjectSources.collectGoogleApiEvents  
  eventarc.operations.get
  eventarc.operations.list
  eventarc.pipelines.get
  eventarc.pipelines.getIamPolicy  
  eventarc.pipelines.list
  
    
      eventarc.providers.*
    
      eventarc.providers.geteventarc.providers.list 
   
  eventarc.triggers.get
  eventarc.triggers.getIamPolicy
  eventarc.triggers.list
  resourcemanager.projects.get
  resourcemanager.projects.list
 
 
 
 
IAM-Verwaltung auf Projektebene 
Auf Projektebene können Sie IAM-Rollen mithilfe der Google Cloud -Console, der IAM API oder der Google Cloud CLI zuweisen, ändern und widerrufen.
Eine Anleitung finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten .