Diagram
A vertical tree of the resource hierarchy from Organization down to Folder, Project, Dataset, and Tables/Views/Routines, with role grants inheriting downward to all descendants. Side callouts describe the access scope at each level and warn against granting dataset-level basic roles.
How Role Scope Controls Least Privilege in BigQuery
Role scope in BigQuery controls whether access is broad or limited to one dataset or table. Granting a BigQuery role on an organization, folder, or project through Resource Manager gives permissions on all BigQuery resources in that organization or project. Assigning a role at the dataset level gives access to only that specific dataset without giving access to other datasets in the project, because datasets are child resources of projects.
Granting roles on individual resources within a dataset gives the narrowest access for table-level work. Roles can be applied directly to tables and views and to routines, which supports patterns such as allowing a user to read from one table but not write to it. To verify exactly which permissions a role contains before granting it, view the role in the console, run gcloud iam roles describe, call roles.get() for predefined roles, or check the BigQuery IAM roles and permissions reference and the IAM permissions reference.
Domain 1 of 1
24 practice questions
Practice this DomainLast updated