7.1 Ensure That BigQuery Datasets Are Not Anonymously or Publicly Accessible (Automated)
Profile Applicability
- Level 1
Description
It is recommended that the IAM policy on BigQuery datasets does not allow anonymous and/or public access.
Rationale
Granting permissions to allUsers or allAuthenticatedUsers allows anyone to access the dataset. Such access might not be desirable if sensitive data is being stored in the dataset. Therefore, ensure that anonymous and/or public access to a dataset is not allowed.
Impact
The dataset is not publicly accessible. Explicit modification of IAM privileges would be necessary to make them publicly accessible.
Audit
From Google Cloud Console
- Go to
BigQueryby visiting: https://console.cloud.google.com/bigquery. - Select a dataset from
Resources. - Click
SHARINGnear the right side of the window and selectPermissions. - Validate that none of the attached roles contain
allUsersorallAuthenticatedUsers.
From Google Cloud CLI
List the name of all datasets.
bq ls
Retrieve each dataset details using the following command:
bq show PROJECT_ID:DATASET_NAME
Ensure that allUsers and allAuthenticatedUsers have not been granted access to the dataset.
Remediation
From Google Cloud Console
- Go to
BigQueryby visiting: https://console.cloud.google.com/bigquery. - Select the dataset from 'Resources'.
- Click
SHARINGnear the right side of the window and selectPermissions. - Review each attached role.
- Click the delete icon for each member
allUsersorallAuthenticatedUsers. On the popup clickRemove.
From Google Cloud CLI
List the name of all datasets.
bq ls
Retrieve the data set details:
bq show --format=prettyjson PROJECT_ID:DATASET_NAME > PATH_TO_FILE
In the access section of the JSON file, update the dataset information to remove all roles containing allUsers or allAuthenticatedUsers.
Update the dataset:
bq update --source PATH_TO_FILE PROJECT_ID:DATASET_NAME
Prevention
You can prevent Bigquery dataset from becoming publicly accessible by setting up the Domain restricted sharing organization policy at: https://console.cloud.google.com/iam-admin/orgpolicies/iam-allowedPolicyMemberDomains.
Default Value
By default, BigQuery datasets are not publicly accessible.
References
CIS Controls
| Controls Version | Control | IG 1 | IG 2 | IG 3 |
|---|---|---|---|---|
| v8 | 3.3 Configure Data Access Control Lists | X | X | X |
| v7 | 14.6 Protect Information through Access Control Lists | X | X | X |