如需限制项目或组织内用户的访问权限,您可以为 Dataflow 使用 Identity and Access Management (IAM) 角色。您可以控制对 Dataflow 相关资源的访问权限,而不是向用户授予整个 Google Cloud Platform 项目的 Viewer、Editor 或 Owner 角色。
本页重点介绍了如何使用 Dataflow 的 IAM 角色。如需详细了解 IAM 及其功能,请参阅 IAM 文档。
每种 Dataflow 方法都要求调用者拥有必要的权限。有关 Dataflow 支持的权限和角色的列表,请参阅以下部分。
权限和角色
本部分汇总了 Dataflow IAM 支持的权限和角色。
所需权限
下表列出了调用者调用每种方法必须具备的权限:
| 方法 | 所需权限 |
|---|---|
dataflow.jobs.create |
dataflow.jobs.create |
dataflow.jobs.cancel |
dataflow.jobs.cancel |
dataflow.jobs.updateContents |
dataflow.jobs.updateContents |
dataflow.jobs.list |
dataflow.jobs.list |
dataflow.jobs.get |
dataflow.jobs.get |
dataflow.messages.list |
dataflow.messages.list |
dataflow.metrics.get |
dataflow.metrics.get |
dataflow.jobs.snapshot |
dataflow.jobs.snapshot |
角色
下表列出了 Dataflow IAM 角色,还有一个列表列出每个角色包含的 Dataflow 相关权限。每个权限适用于特定的资源类型。如需查看权限列表,请参阅 Google Cloud 控制台中的角色页面。
(
Minimal role for creating and managing dataflow jobs.
(
Provides the permissions necessary to execute and manipulate
Dataflow jobs.
Lowest-level resources where you can grant this role:
(
Gives Cloud Dataflow service account access to managed resources. Includes access to service accounts.
(
Provides read-only access to all Dataflow-related
resources.
Lowest-level resources where you can grant this role: (
Provides the permissions necessary for a Compute Engine service
account to execute work units for a Dataflow pipeline.
Lowest-level resources where you can grant this role:
Role
Permissions
Dataflow Admin
roles/)
cloudbuild.builds.createcloudbuild.builds.getcloudbuild.builds.listcloudbuild.builds.updatecloudbuild.locations.*
cloudbuild.locations.getcloudbuild.locations.listcloudbuild.operations.*
cloudbuild.operations.getcloudbuild.operations.listcloudkms.keyHandles.*
cloudkms.keyHandles.createcloudkms.keyHandles.getcloudkms.keyHandles.listcloudkms.operations.getcloudkms.compute.machineTypes.getcompute.projects.getcompute.regions.listcompute.zones.listdataflow.jobs.*
dataflow.jobs.canceldataflow.jobs.createdataflow.jobs.getdataflow.jobs.listdataflow.jobs.snapshotdataflow.jobs.updateContentsdataflow.messages.listdataflow.metrics.getdataflow.snapshots.*
dataflow.snapshots.deletedataflow.snapshots.getdataflow.snapshots.listrecommender.
recommender.recommender.recommender.remotebuildexecution.blobs.getresourcemanager.projects.getresourcemanager.projects.liststorage.buckets.getstorage.objects.createstorage.objects.getstorage.objects.list
Dataflow Developer
roles/)
cloudbuild.builds.createcloudbuild.builds.getcloudbuild.builds.listcloudbuild.builds.updatecloudbuild.locations.*
cloudbuild.locations.getcloudbuild.locations.listcloudbuild.operations.*
cloudbuild.operations.getcloudbuild.operations.listcloudkms.keyHandles.*
cloudkms.keyHandles.createcloudkms.keyHandles.getcloudkms.keyHandles.listcloudkms.operations.getcloudkms.compute.projects.getcompute.regions.listcompute.zones.listdataflow.jobs.*
dataflow.jobs.canceldataflow.jobs.createdataflow.jobs.getdataflow.jobs.listdataflow.jobs.snapshotdataflow.jobs.updateContentsdataflow.messages.listdataflow.metrics.getdataflow.snapshots.*
dataflow.snapshots.deletedataflow.snapshots.getdataflow.snapshots.listrecommender.
recommender.recommender.recommender.remotebuildexecution.blobs.getresourcemanager.projects.getresourcemanager.projects.list
Cloud Dataflow Service Agent
roles/)
backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupdr.backupPlans.getbackupdr.backupPlans.listbackupdr.backupdr.backupdr.backupVaults.getbackupdr.backupVaults.listbackupdr.locations.listbackupdr.operations.getbackupdr.operations.listbackupdr.bigquery.bireservations.*
bigquery.bireservations.getbigquery.bireservations.updatebigquery.capacityCommitments.*
bigquery.bigquery.bigquery.bigquery.bigquery.bigquery.config.*
bigquery.config.getbigquery.config.updatebigquery.connections.*
bigquery.connections.createbigquery.connections.delegatebigquery.connections.deletebigquery.connections.getbigquery.bigquery.connections.listbigquery.bigquery.connections.updatebigquery.connections.updateTagbigquery.connections.usebigquery.dataPolicies.attachbigquery.dataPolicies.createbigquery.dataPolicies.deletebigquery.dataPolicies.getbigquery.bigquery.dataPolicies.listbigquery.bigquery.dataPolicies.updatebigquery.datasets.*
bigquery.datasets.createbigquery.bigquery.datasets.deletebigquery.bigquery.datasets.getbigquery.datasets.getIamPolicybigquery.datasets.linkbigquery.bigquery.bigquery.bigquery.datasets.setIamPolicybigquery.datasets.updatebigquery.datasets.updateTagbigquery.jobs.*
bigquery.jobs.createbigquery.bigquery.jobs.deletebigquery.jobs.getbigquery.jobs.listbigquery.jobs.listAllbigquery.bigquery.jobs.updatebigquery.models.*
bigquery.models.createbigquery.models.deletebigquery.models.exportbigquery.models.getDatabigquery.models.getMetadatabigquery.models.listbigquery.models.updateDatabigquery.models.updateMetadatabigquery.models.updateTagbigquery.objectRefs.*
bigquery.objectRefs.readbigquery.objectRefs.writebigquery.readsessions.*
bigquery.readsessions.createbigquery.readsessions.getDatabigquery.readsessions.updatebigquery.
bigquery.bigquery.bigquery.bigquery.bigquery.reservationGroups.*
bigquery.bigquery.bigquery.reservationGroups.getbigquery.bigquery.reservations.*
bigquery.reservations.createbigquery.reservations.deletebigquery.reservations.getbigquery.reservations.listbigquery.bigquery.reservations.updatebigquery.reservations.usebigquery.routines.*
bigquery.routines.createbigquery.routines.deletebigquery.routines.getbigquery.routines.listbigquery.routines.updatebigquery.routines.updateTagbigquery.bigquery.bigquery.rowAccessPolicies.getbigquery.bigquery.bigquery.bigquery.bigquery.bigquery.savedqueries.*
bigquery.savedqueries.createbigquery.savedqueries.deletebigquery.savedqueries.getbigquery.savedqueries.listbigquery.savedqueries.updatebigquery.tables.*
bigquery.tables.createbigquery.tables.createIndexbigquery.tables.createSnapshotbigquery.bigquery.tables.deletebigquery.tables.deleteIndexbigquery.tables.deleteSnapshotbigquery.bigquery.tables.exportbigquery.tables.getbigquery.tables.getDatabigquery.tables.getIamPolicybigquery.tables.listbigquery.bigquery.bigquery.tables.replicateDatabigquery.bigquery.tables.setCategorybigquery.bigquery.tables.setIamPolicybigquery.tables.updatebigquery.tables.updateDatabigquery.tables.updateIndexbigquery.tables.updateTagbigquery.transfers.*
bigquery.transfers.getbigquery.transfers.updatebigquerymigration.clouddebugger.breakpoints.listclouddebugger.clouddebugger.clouddebugger.debuggees.createcloudnotifications.compute.acceleratorTypes.*
compute.acceleratorTypes.getcompute.acceleratorTypes.listcompute.addresses.*
compute.addresses.createcompute.compute.compute.addresses.deletecompute.compute.compute.addresses.getcompute.addresses.listcompute.compute.compute.addresses.setLabelscompute.addresses.usecompute.addresses.useInternalcompute.autoscalers.*
compute.autoscalers.createcompute.autoscalers.deletecompute.autoscalers.getcompute.autoscalers.listcompute.autoscalers.updatecompute.backendBuckets.*
compute.compute.backendBuckets.createcompute.compute.backendBuckets.deletecompute.compute.compute.backendBuckets.getcompute.compute.backendBuckets.listcompute.compute.compute.compute.compute.backendBuckets.updatecompute.backendBuckets.usecompute.backendServices.*
compute.compute.backendServices.createcompute.compute.backendServices.deletecompute.compute.compute.backendServices.getcompute.compute.backendServices.listcompute.compute.compute.compute.compute.backendServices.updatecompute.backendServices.usecompute.crossSiteNetworks.*
compute.compute.compute.crossSiteNetworks.getcompute.crossSiteNetworks.listcompute.compute.diskSettings.*
compute.diskSettings.getcompute.diskSettings.updatecompute.diskTypes.*
compute.diskTypes.getcompute.diskTypes.listcompute.disks.*
compute.compute.disks.createcompute.disks.createSnapshotcompute.disks.createTagBindingcompute.disks.deletecompute.disks.deleteTagBindingcompute.disks.getcompute.disks.getIamPolicycompute.disks.listcompute.compute.disks.listTagBindingscompute.compute.disks.resizecompute.disks.setIamPolicycompute.disks.setLabelscompute.compute.compute.compute.disks.updatecompute.disks.updateKmsKeycompute.disks.usecompute.disks.useReadOnlycompute.externalVpnGateways.*
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.firewallPolicies.getcompute.firewallPolicies.listcompute.compute.compute.firewallPolicies.usecompute.firewalls.getcompute.firewalls.listcompute.compute.compute.forwardingRules.*
compute.forwardingRules.createcompute.compute.forwardingRules.deletecompute.compute.forwardingRules.getcompute.forwardingRules.listcompute.compute.compute.compute.compute.compute.compute.compute.compute.forwardingRules.updatecompute.forwardingRules.usecompute.globalAddresses.*
compute.globalAddresses.createcompute.compute.compute.globalAddresses.deletecompute.compute.compute.globalAddresses.getcompute.globalAddresses.listcompute.compute.compute.compute.globalAddresses.usecompute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.globalOperations.getcompute.globalOperations.listcompute.compute.compute.compute.compute.healthChecks.*
compute.healthChecks.createcompute.compute.healthChecks.deletecompute.compute.healthChecks.getcompute.healthChecks.listcompute.compute.compute.healthChecks.updatecompute.healthChecks.usecompute.compute.httpHealthChecks.*
compute.compute.compute.compute.compute.httpHealthChecks.getcompute.httpHealthChecks.listcompute.compute.compute.compute.httpHealthChecks.usecompute.compute.httpsHealthChecks.*
compute.compute.compute.compute.compute.httpsHealthChecks.getcompute.httpsHealthChecks.listcompute.compute.compute.compute.httpsHealthChecks.usecompute.compute.images.*
compute.images.createcompute.compute.images.deletecompute.compute.images.deprecatecompute.images.getcompute.images.getFromFamilycompute.images.getIamPolicycompute.images.listcompute.compute.images.listTagBindingscompute.images.setIamPolicycompute.images.setLabelscompute.images.updatecompute.images.useReadOnlycompute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.instanceGroups.*
compute.instanceGroups.createcompute.compute.instanceGroups.deletecompute.compute.instanceGroups.getcompute.instanceGroups.listcompute.compute.compute.instanceGroups.updatecompute.instanceGroups.usecompute.instanceSettings.getcompute.instanceTemplates.*
compute.compute.compute.instanceTemplates.getcompute.compute.instanceTemplates.listcompute.compute.compute.instances.*
compute.compute.compute.compute.instances.attachDiskcompute.instances.createcompute.compute.instances.deletecompute.compute.compute.compute.instances.detachDiskcompute.instances.getcompute.compute.compute.instances.getIamPolicycompute.compute.compute.compute.compute.instances.listcompute.compute.compute.compute.instances.osAdminLogincompute.instances.osLogincompute.compute.compute.instances.resetcompute.instances.resumecompute.compute.compute.compute.instances.setIamPolicycompute.instances.setLabelscompute.compute.compute.instances.setMetadatacompute.compute.instances.setNamecompute.compute.compute.compute.compute.compute.instances.setTagscompute.compute.instances.startcompute.compute.instances.stopcompute.instances.suspendcompute.instances.updatecompute.compute.compute.compute.compute.compute.compute.instances.usecompute.instances.useReadOnlycompute.instantSnapshots.*
compute.compute.compute.compute.instantSnapshots.getcompute.compute.instantSnapshots.listcompute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.interconnectGroups.*
compute.compute.compute.interconnectGroups.getcompute.compute.compute.
compute.compute.compute.
compute.compute.compute.interconnects.*
compute.interconnects.createcompute.compute.interconnects.deletecompute.compute.interconnects.getcompute.compute.interconnects.listcompute.compute.compute.compute.interconnects.updatecompute.interconnects.usecompute.licenseCodes.*
compute.licenseCodes.getcompute.compute.licenseCodes.listcompute.compute.licenses.*
compute.licenses.createcompute.licenses.deletecompute.licenses.getcompute.licenses.getIamPolicycompute.licenses.listcompute.licenses.setIamPolicycompute.licenses.updatecompute.machineImages.*
compute.machineImages.createcompute.machineImages.deletecompute.machineImages.getcompute.compute.machineImages.listcompute.compute.compute.compute.machineTypes.*
compute.machineTypes.getcompute.machineTypes.listcompute.multiMig.*
compute.multiMig.createcompute.multiMig.deletecompute.multiMig.getcompute.multiMig.listcompute.networkAttachments.*
compute.compute.compute.compute.compute.networkAttachments.getcompute.compute.compute.compute.compute.compute.compute.networkAttachments.usecompute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.networkProfiles.*
compute.networkProfiles.getcompute.networkProfiles.listcompute.networks.*
compute.networks.accesscompute.networks.addPeeringcompute.networks.createcompute.compute.networks.deletecompute.compute.networks.getcompute.compute.compute.networks.listcompute.compute.compute.compute.networks.mirrorcompute.networks.removePeeringcompute.compute.compute.compute.networks.updatecompute.networks.updatePeeringcompute.networks.updatePolicycompute.networks.usecompute.networks.useExternalIpcompute.packetMirrorings.getcompute.packetMirrorings.listcompute.compute.compute.projects.getcompute.compute.compute.compute.compute.compute.compute.compute.regionBackendBuckets.*
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.regionHealthChecks.*
compute.compute.compute.compute.compute.regionHealthChecks.getcompute.compute.compute.compute.compute.regionHealthChecks.usecompute.compute.regionHealthSources.*
compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.regionOperations.getcompute.regionOperations.listcompute.compute.compute.compute.compute.compute.compute.compute.compute.compute.regionSslPolicies.*
compute.compute.compute.compute.compute.regionSslPolicies.getcompute.regionSslPolicies.listcompute.compute.compute.compute.compute.regionSslPolicies.usecompute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.
compute.compute.compute.compute.compute.compute.compute.compute.compute.compute.regionUrlMaps.*
compute.regionUrlMaps.createcompute.compute.regionUrlMaps.deletecompute.compute.regionUrlMaps.getcompute.compute.regionUrlMaps.listcompute.compute.compute.regionUrlMaps.updatecompute.regionUrlMaps.usecompute.regionUrlMaps.validatecompute.regions.*
compute.regions.getcompute.regions.listcompute.reservationBlocks.getcompute.reservationBlocks.listcompute.reservationSubBlocks.*
compute.compute.compute.compute.compute.reservations.getcompute.reservations.listcompute.resourcePolicies.*
compute.compute.compute.resourcePolicies.getcompute.compute.resourcePolicies.listcompute.compute.compute.resourcePolicies.usecompute.compute.routers.*
compute.routers.createcompute.compute.routers.deletecompute.compute.compute.routers.getcompute.routers.getRoutePolicycompute.routers.listcompute.routers.listBgpRoutescompute.compute.compute.compute.routers.updatecompute.compute.routers.usecompute.routes.*
compute.routes.createcompute.compute.routes.deletecompute.compute.routes.getcompute.routes.listcompute.compute.routes.listTagBindingscompute.securityPolicies.getcompute.securityPolicies.listcompute.compute.compute.securityPolicies.usecompute.serviceAttachments.*
compute.compute.compute.compute.compute.serviceAttachments.getcompute.compute.compute.compute.compute.compute.compute.serviceAttachments.usecompute.snapshots.*
compute.snapshots.createcompute.compute.snapshots.deletecompute.compute.snapshots.getcompute.snapshots.getIamPolicycompute.snapshots.listcompute.compute.compute.snapshots.setIamPolicycompute.snapshots.setLabelscompute.snapshots.updateKmsKeycompute.snapshots.useReadOnlycompute.sslCertificates.getcompute.sslCertificates.listcompute.compute.compute.sslPolicies.*
compute.sslPolicies.createcompute.compute.sslPolicies.deletecompute.compute.sslPolicies.getcompute.sslPolicies.listcompute.compute.compute.compute.sslPolicies.updatecompute.sslPolicies.usecompute.storagePools.*
compute.storagePools.createcompute.storagePools.deletecompute.storagePools.getcompute.compute.storagePools.listcompute.compute.storagePools.updatecompute.storagePools.usecompute.subnetworks.*
compute.subnetworks.createcompute.compute.subnetworks.deletecompute.compute.compute.subnetworks.getcompute.compute.subnetworks.listcompute.compute.compute.subnetworks.mirrorcompute.compute.compute.subnetworks.updatecompute.subnetworks.usecompute.compute.compute.targetGrpcProxies.*
compute.compute.compute.compute.compute.targetGrpcProxies.getcompute.targetGrpcProxies.listcompute.compute.compute.compute.targetGrpcProxies.usecompute.targetHttpProxies.*
compute.compute.compute.compute.compute.targetHttpProxies.getcompute.targetHttpProxies.listcompute.compute.compute.compute.compute.targetHttpProxies.usecompute.targetHttpsProxies.*
compute.compute.compute.compute.compute.targetHttpsProxies.getcompute.compute.compute.compute.compute.compute.compute.compute.compute.compute.targetHttpsProxies.usecompute.targetInstances.*
compute.targetInstances.createcompute.compute.targetInstances.deletecompute.compute.targetInstances.getcompute.targetInstances.listcompute.compute.compute.compute.targetInstances.usecompute.targetPools.*
compute.compute.compute.targetPools.createcompute.compute.targetPools.deletecompute.compute.targetPools.getcompute.targetPools.listcompute.compute.compute.compute.compute.compute.targetPools.updatecompute.targetPools.usecompute.targetSslProxies.*
compute.compute.compute.compute.compute.targetSslProxies.getcompute.targetSslProxies.listcompute.compute.compute.compute.compute.compute.compute.compute.compute.targetSslProxies.usecompute.targetTcpProxies.*
compute.compute.compute.compute.compute.targetTcpProxies.getcompute.targetTcpProxies.listcompute.compute.compute.compute.targetTcpProxies.usecompute.targetVpnGateways.*
compute.compute.compute.compute.compute.targetVpnGateways.getcompute.targetVpnGateways.listcompute.compute.compute.compute.targetVpnGateways.usecompute.urlMaps.*
compute.urlMaps.createcompute.compute.urlMaps.deletecompute.compute.urlMaps.getcompute.compute.urlMaps.listcompute.compute.compute.urlMaps.updatecompute.urlMaps.usecompute.urlMaps.validatecompute.vpnGateways.*
compute.vpnGateways.createcompute.compute.vpnGateways.deletecompute.compute.vpnGateways.getcompute.vpnGateways.listcompute.compute.compute.vpnGateways.setLabelscompute.vpnGateways.usecompute.vpnTunnels.*
compute.vpnTunnels.createcompute.compute.vpnTunnels.deletecompute.compute.vpnTunnels.getcompute.vpnTunnels.listcompute.compute.compute.vpnTunnels.setLabelscompute.wireGroups.*
compute.wireGroups.createcompute.wireGroups.deletecompute.wireGroups.getcompute.wireGroups.listcompute.wireGroups.updatecompute.zoneOperations.getcompute.zoneOperations.listcompute.zones.*
compute.zones.getcompute.zones.listdataflow.jobs.*
dataflow.jobs.canceldataflow.jobs.createdataflow.jobs.getdataflow.jobs.listdataflow.jobs.snapshotdataflow.jobs.updateContentsdataflow.messages.listdataflow.metrics.getdataflow.snapshots.*
dataflow.snapshots.deletedataflow.snapshots.getdataflow.snapshots.listdataform.*
dataform.commentThreads.createdataform.commentThreads.deletedataform.commentThreads.getdataform.commentThreads.listdataform.commentThreads.updatedataform.comments.createdataform.comments.deletedataform.comments.getdataform.comments.listdataform.comments.updatedataform.dataform.dataform.dataform.dataform.config.getdataform.config.updatedataform.locations.getdataform.locations.listdataform.releaseConfigs.createdataform.releaseConfigs.deletedataform.releaseConfigs.getdataform.releaseConfigs.listdataform.releaseConfigs.updatedataform.repositories.commitdataform.dataform.repositories.createdataform.repositories.deletedataform.dataform.dataform.repositories.getdataform.dataform.repositories.listdataform.dataform.repositories.readFiledataform.dataform.repositories.updatedataform.dataform.dataform.workflowConfigs.getdataform.workflowConfigs.listdataform.dataform.dataform.dataform.dataform.dataform.dataform.dataform.workspaces.commitdataform.workspaces.createdataform.workspaces.deletedataform.dataform.dataform.dataform.workspaces.getdataform.dataform.dataform.workspaces.listdataform.dataform.dataform.workspaces.moveFiledataform.workspaces.pulldataform.workspaces.pushdataform.dataform.workspaces.readFiledataform.dataform.workspaces.removeFiledataform.workspaces.resetdataform.dataform.dataform.workspaces.writeFiledataplex.datascans.*
dataplex.datascans.createdataplex.datascans.deletedataplex.datascans.getdataplex.datascans.getDatadataplex.dataplex.datascans.listdataplex.datascans.rundataplex.dataplex.datascans.updatedataplex.operations.getdataplex.operations.listdataplex.projects.searchdns.firebase.projects.getiam.serviceAccounts.actAsiam.serviceAccounts.getiam.iam.iam.serviceAccounts.listiam.serviceAccounts.signBlobiam.serviceAccounts.signJwtlogging.buckets.createlogging.logging.buckets.deletelogging.logging.buckets.getlogging.buckets.listlogging.logging.logging.buckets.undeletelogging.buckets.updatelogging.exclusions.*
logging.exclusions.createlogging.exclusions.deletelogging.exclusions.getlogging.exclusions.listlogging.exclusions.updatelogging.links.*
logging.links.createlogging.links.deletelogging.links.getlogging.links.listlogging.locations.*
logging.locations.getlogging.locations.listlogging.logEntries.createlogging.logEntries.routelogging.logMetrics.*
logging.logMetrics.createlogging.logMetrics.deletelogging.logMetrics.getlogging.logMetrics.listlogging.logMetrics.updatelogging.logScopes.*
logging.logScopes.createlogging.logScopes.deletelogging.logScopes.getlogging.logScopes.listlogging.logScopes.updatelogging.logServiceIndexes.listlogging.logServices.listlogging.logs.listlogging.notificationRules.*
logging.logging.logging.notificationRules.getlogging.notificationRules.listlogging.logging.operations.*
logging.operations.cancellogging.operations.getlogging.operations.listlogging.settings.*
logging.settings.getlogging.settings.updatelogging.sinks.*
logging.sinks.createlogging.sinks.deletelogging.sinks.getlogging.sinks.listlogging.sinks.updatelogging.sqlAlerts.*
logging.sqlAlerts.createlogging.sqlAlerts.updatelogging.views.createlogging.views.deletelogging.views.getlogging.views.getIamPolicylogging.views.listlogging.views.updatemonitoring.alertPolicies.getmonitoring.alertPolicies.listmonitoring.monitoring.monitoring.alerts.*
monitoring.alerts.getmonitoring.alerts.listmonitoring.dashboards.getmonitoring.dashboards.listmonitoring.monitoring.monitoring.groups.getmonitoring.groups.listmonitoring.monitoring.monitoring.monitoring.
monitoring.monitoring.monitoring.
monitoring.monitoring.monitoring.monitoring.monitoring.services.getmonitoring.services.listmonitoring.slos.getmonitoring.slos.listmonitoring.snoozes.getmonitoring.snoozes.listmonitoring.timeSeries.*
monitoring.timeSeries.createmonitoring.timeSeries.listmonitoring.monitoring.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.
networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkconnectivity.networkmanagement.networkmanagement.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.locations.*
networksecurity.locations.getnetworksecurity.locations.listnetworksecurity.operations.*
networksecurity.networksecurity.networksecurity.operations.getnetworksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.sacRealms.*
networksecurity.networksecurity.networksecurity.sacRealms.getnetworksecurity.sacRealms.listnetworksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.
networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.networksecurity.urlLists.*
networksecurity.networksecurity.networksecurity.urlLists.getnetworksecurity.urlLists.listnetworksecurity.networksecurity.urlLists.usenetworkservices.*
networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.gateways.getnetworkservices.gateways.listnetworkservices.networkservices.gateways.usenetworkservices.networkservices.networkservices.grpcRoutes.getnetworkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.httpRoutes.getnetworkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.locations.getnetworkservices.locations.listnetworkservices.meshes.createnetworkservices.meshes.deletenetworkservices.meshes.getnetworkservices.meshes.listnetworkservices.meshes.updatenetworkservices.meshes.usenetworkservices.networkservices.networkservices.operations.getnetworkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.tcpRoutes.getnetworkservices.tcpRoutes.listnetworkservices.networkservices.networkservices.networkservices.tlsRoutes.getnetworkservices.tlsRoutes.listnetworkservices.networkservices.networkservices.networkservices.networkservices.networkservices.networkservices.observability.scopes.getopsconfigmonitoring.orgpolicy.policy.getpubsub.*
pubsub.pubsub.schemas.attachpubsub.schemas.commitpubsub.schemas.createpubsub.schemas.deletepubsub.schemas.getpubsub.schemas.getIamPolicypubsub.schemas.listpubsub.schemas.listRevisionspubsub.schemas.rollbackpubsub.schemas.setIamPolicypubsub.schemas.validatepubsub.snapshots.createpubsub.pubsub.snapshots.deletepubsub.pubsub.snapshots.getpubsub.snapshots.getIamPolicypubsub.snapshots.listpubsub.pubsub.pubsub.snapshots.seekpubsub.snapshots.setIamPolicypubsub.snapshots.updatepubsub.subscriptions.consumepubsub.subscriptions.createpubsub.pubsub.subscriptions.deletepubsub.pubsub.subscriptions.getpubsub.pubsub.subscriptions.listpubsub.pubsub.pubsub.pubsub.subscriptions.updatepubsub.pubsub.topics.createpubsub.topics.createTagBindingpubsub.topics.deletepubsub.topics.deleteTagBindingpubsub.pubsub.topics.getpubsub.topics.getIamPolicypubsub.topics.listpubsub.pubsub.topics.listTagBindingspubsub.topics.publishpubsub.topics.setIamPolicypubsub.topics.updatepubsub.topics.updateTagrecommender.
recommender.recommender.recommender.recommender.
recommender.recommender.recommender.recommender.
recommender.recommender.recommender.recommender.
recommender.recommender.recommender.recommender.
recommender.recommender.recommender.resourcemanager.resourcemanager.projects.getresourcemanager.projects.listservicedirectory.servicedirectory.servicedirectory.servicedirectory.servicenetworking.servicenetworking.servicenetworking.servicenetworking.servicenetworking.servicenetworking.servicenetworking.servicenetworking.services.getservicenetworking.serviceusage.serviceusage.serviceusage.serviceusage.groups.*
serviceusage.groups.listserviceusage.serviceusage.serviceusage.quotas.getserviceusage.services.getserviceusage.services.listserviceusage.services.useserviceusage.values.teststackdriver.projects.getstackdriver.storage.anywhereCaches.*
storage.anywhereCaches.createstorage.anywhereCaches.disablestorage.anywhereCaches.getstorage.anywhereCaches.liststorage.anywhereCaches.pausestorage.anywhereCaches.resumestorage.anywhereCaches.updatestorage.bucketOperations.*
storage.storage.bucketOperations.getstorage.bucketOperations.liststorage.buckets.*
storage.buckets.createstorage.storage.buckets.deletestorage.storage.storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.getIpFilterstorage.storage.buckets.liststorage.storage.storage.buckets.relocatestorage.buckets.restorestorage.buckets.setIamPolicystorage.buckets.setIpFilterstorage.buckets.updatestorage.folders.*
storage.folders.createstorage.folders.deletestorage.folders.getstorage.folders.liststorage.folders.renamestorage.intelligenceConfigs.*
storage.storage.storage.managedFolders.*
storage.managedFolders.createstorage.managedFolders.deletestorage.managedFolders.getstorage.storage.managedFolders.liststorage.storage.multipartUploads.*
storage.multipartUploads.abortstorage.storage.multipartUploads.liststorage.storage.objects.*
storage.objects.createstorage.objects.deletestorage.objects.getstorage.objects.getIamPolicystorage.objects.liststorage.objects.movestorage.storage.objects.restorestorage.objects.setIamPolicystorage.objects.setRetentionstorage.objects.updatetelemetry.metrics.writetrafficdirector.*
trafficdirector.trafficdirector.
Dataflow Viewer
roles/)
dataflow.jobs.getdataflow.jobs.listdataflow.messages.listdataflow.metrics.getdataflow.snapshots.getdataflow.snapshots.listrecommender.recommender.resourcemanager.projects.getresourcemanager.projects.list
Dataflow Worker
roles/)
autoscaling.autoscaling.sites.writeMetricsautoscaling.sites.writeStatecompute.compute.instances.deletecompute.dataflow.jobs.getdataflow.shuffle.*
dataflow.shuffle.readdataflow.shuffle.writedataflow.streamingWorkItems.*
dataflow.dataflow.dataflow.dataflow.dataflow.dataflow.workItems.*
dataflow.workItems.leasedataflow.workItems.sendMessagedataflow.workItems.updatelogging.logEntries.createlogging.logEntries.routemonitoring.timeSeries.createstorage.buckets.getstorage.objects.createstorage.objects.get
Dataflow Worker 角色 (roles/dataflow.worker) 可为 Compute Engine 服务账号提供运行 Apache Beam 流水线工作单元所需的权限。Dataflow 工作器角色必须分配给能够从 Dataflow 服务请求和更新工作的服务账号。
Dataflow 服务代理角色 (roles/dataflow.serviceAgent) 仅供 Dataflow 服务账号使用。它为服务账号授予对 Google Cloud 项目中托管资源的访问权限,以运行 Dataflow 作业。当您从 Google Cloud 控制台中的 API 页面为项目启用 Dataflow API 时,系统会自动将其分配给服务账号。
创建作业
要创建作业,roles/dataflow.admin 角色需具备运行和检查作业所需的一组最低权限。
或者,需要具备以下权限:
roles/dataflow.developer角色,可将作业本身实例化。roles/compute.viewer角色,可访问机器类型信息及查看其他设置。roles/storage.objectAdmin角色,可提供将文件暂存在 Cloud Storage 上的权限。
角色分配示例
为了说明不同 Dataflow 角色的效用,请考虑以下细分讲解:
- 创建和检查作业的开发者需要
roles/iam.serviceAccountUser角色。 - 为进行更复杂的权限管理,与 Dataflow 作业交互的开发者需要
roles/dataflow.developer角色。- 如需暂存必要的文件,开发者需要
roles/storage.objectAdmin或相关角色。 - 如需进行调试和配额检查,开发者需要项目的
roles/compute.viewer角色。 - 如果没有分配其他角色,开发者可以通过此角色创建和取消 Dataflow 作业,但不能与各个虚拟机交互,也不能访问其他 Cloud 服务。
- 如需暂存必要的文件,开发者需要
- 工作器服务账号需要
roles/dataflow.worker和roles/dataflow.admin角色才能处理 Dataflow 服务的数据。- 如需访问作业数据,工作器服务账号还需要其他角色,如
roles/storage.objectAdmin。 - 如需写入 BigQuery 表,工作器服务账号需要
roles/bigquery.dataEditor角色。 - 如需从 Pub/Sub 主题或订阅中读取数据,工作器服务账号需要具备
roles/pubsub.editor角色。
- 如需访问作业数据,工作器服务账号还需要其他角色,如
- 如果您使用的是共享 VPC,则共享 VPC 子网需要与 Dataflow 服务账号共享,并且需要具有指定子网上分配的 Compute Network User 角色。
- 如需查看共享 VPC 子网是否与 Dataflow 服务账号共享,请在 Google Cloud 控制台中前往共享 VPC 页面并搜索子网。在共享对象列中,您可以查看 VPC 子网是否与 Dataflow 服务账号共享。如需了解详情,请参阅为共享 VPC 指定子网参数的准则。
- 宿主项目的 Compute Engine 服务账号、服务项目的 Dataflow 工作器服务账号以及用于提交作业的服务账号需要具有以下角色:
roles/dataflow.adminroles/compute.networkUserroles/storage.objectViewer
分配 Dataflow 角色
目前,Dataflow 角色只能在组织和项目级层设置。
要管理组织级层角色,请参阅使用 IAM 对组织进行访问权限控制。
要设置项目级层角色,请参阅授予、更改和撤消对资源的访问权限。