Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space DEV and version r085

...

  • A role is a set of one or more permissions. A role is assigned to users and groups.
  • A permission grants access to a resource. Different permissions can grant different access levels to the same resource.

For more information on the service accounts used by 

D s dataflow
 to manage security and permissions while running 
D s product
productgdp
 jobs, see https://cloud.google.com/dataflow/docs/concepts/security-and-permissions#security_and_permissions_for_pipelines_on_google_cloud_platform.

Tools for manage IAM policies:

  • Google Cloud Console
  • API
  • gcloud CLI

...

To use 

D s product
productgdp
, the following roles are required. Below, you can review each required role, its purpose, and the permissions that are enabled by it.

RoleUsePermissions and roles
roles/dataprep.projects.user

Enables a user to run

D s product
productgdp
in a project See below.

Permissions:

  • dataprep.projects.use
  • resourcemanager.projects.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/dataprep.serviceAgent

Enables the platform to access and modify datasets and storage and to run and manage

D s dataflow
jobs on behalf of the user within the project

Info

NOTE: When the product is enabled within a project, this role is granted by the project owner as part of the enablement process. For more information, see Enable or Disable Dataprep.

Permissions:

  • storage.buckets.get
  • storage.buckets.list

Roles:

  • roles/dataflow.developer
  • roles/bigquery.user
  • roles/bigquery.dataEditor
  • roles/storage.objectAdmin
  • roles/iam.serviceAccountUser

roles/dataprep.projects.user IAM Role

All users of any version of

D s product
productgdp
must be assigned the roles/dataprep.user IAM Role.

Warning

This role and its related permissions enable access to all data in a project. Other permissions do not apply.

d-s-

...

item
itemApplication
 Permissions

The following base set of IAM permissions and some additional permissions are required for accessing the product. Below, you can review the required permissions for this product edition.

Info

NOTE: These permissions provide basic access to the

D s webapp
. Additional features within the product or available through external integrations are considered optional.

General

PermissionProduct Use
dataprep.projects.use

Allow a user to use

D s product

resourcemanager.projects.get

Get

D s product
project details

D s dataflow

Run

D s item
itemjobs
on
D s dataflow
:

PermissionProduct Use
compute.machineTypes.get

List available machine types for

D s dataflow
jobs

dataflow.jobs.create

Create a

D s dataflow
job

dataflow.jobs.get

List

D s dataflow
jobs

dataflow.messages.list

Get

D s dataflow
job details

dataflow.metrics.get

Get

D s dataflow
job details

Connection Permissions

These permissions are required for connections that are common in 

D s product
.

D s storage

Read and write to

D s storage
, the base storage for
D s product
:

PermissionProduct UseRequirement
storage.buckets.list

List

D s storage
buckets in project

Required at project level
storage.buckets.getGet bucket metadataRequired for staging bucket only
storage.objects.createCreate filesRequired for staging bucket only
storage.objects.deleteDelete filesRequired for staging bucket only
storage.objects.getRead filesRequired for staging bucket only
storage.objects.listList filesRequired for staging bucket only

BigQuery

Read and write to BigQuery, including views and custom SQL:

PermissionProduct UseRequirement
bigquery.jobs.create

For Custom SQL query support and launching

D s dataflow
jobs with BigQuery data sources.

Required at project level to use BigQuery
bigquery.datasets.getList and get metadata about datasets in projectCan be applied at project level or at individual dataset level
bigquery.tables.createExecute custom queriesCan be applied at project level or at individual dataset level
bigquery.tables.getCreate tables in datasetCan be applied at project level or at individual dataset level
bigquery.tables.getGet table metadataCan be applied at project level or at individual dataset level
bigquery.tables.getDataget table contentsCan be applied at project level or at individual dataset level
bigquery.tables.listList tables in datasetCan be applied at project level or at individual dataset level

Feature Permissions

Additional permissions may be required to use specific features. Individual users may be required to permit 

D s product
 access when the feature is first used. 

D s dataflow
 job cancellation

PermissionProduct Use
dataflow.jobs.cancel

Enables users to cancel their jobs in progress. It is not required for the product to work but may be helpful to add via IAM roles.

Info

NOTE: A user may be able cancel a job from the

D s webapp
, even though the user is not permitted to cancel the job in the running environment. The service account associated with the user's 
D s item
itemaccount
may have the appropriate permissions, but the user's personal account does not. For more information, see Google Service Account Management

BigQuery publishing options

The following permissions are required to publish to BigQuery:

PermissionProduct Use
bigquery.datasets.createCreate datasets in BigQuery
bigquery.datasets.updateUpdate datasets in BigQuery

The following permission is not required to publish to BigQuery.

PermissionProduct Use
bigquery.tables.delete

If this permission is not granted to a user, that user requires one of the following permissions to drop or truncate table data in BigQuery

  • The user is granted editor or owner role on the project.
  • The user is granted bigquery.tables.delete for the project.
Info

NOTE: If a user does not have this permission when publishing to a table, the user receives a warning that the target dataset is read-only.

Google Sheets access

D s ed
rtrue
editionsgdpstgdpent,gdppro,gdpsta,gdppr,gdpst

  • drive.readonly

For more information, see Import Google Sheets Data.

Additional Permissions for Cloud IAM

D s ed
rtrue
editionsgdpent,gdppr

Info

NOTE: Any change in a user's permissions in

D s platform
must be reflected in the service account assigned to the user.

Run 
D s dataflow
 jobs

...

To run jobs on Every 

d-s-dataflow
, one of the following must be applied:

...

User must have iam.serviceAccounts.actAs permission specified at the project level or in the default compute service account:

Code Block
<project-number>-compute@developer.gserviceaccount.com

...

Project owners require no additional permissions on the projects that they own.

product
 job requires the use of a service account through which the job is submitted to 
D s dataflow
 for execution. Each project user must have access to a service account. For more information, see Google Service Account Management.

Data access

In addition to the IAM roles above, users must also be granted the following to enable data access based on their Cloud IAM:

...