Google Professional Data Engineer Question 197
Single answerGoogle Cloud PlatformYour organization wants to share a BigQuery dataset with another company for a collaborative project. The dataset must remain secure, and the other company should only have read access. Additionally, you want to ensure that their access can be revoked at any time without disruption. What is the best way to share the dataset?
- A
Export the dataset as CSV files, store them in a Cloud Storage bucket, and share the bucket with the other company.
- B
Grant the other company's Google account the 'BigQuery Data Viewer' role on the dataset.
- C
Enable public access to the dataset and share the public link with the other company.
- D
Create a service account, grant it 'BigQuery Data Viewer' access to the dataset, and share the service account key with the other company.
Show answer and explanation
Correct answer: B
Explanation
The 'BigQuery Data Viewer' role grants read-only access to a specific dataset and can be applied directly to the other company's Google account, ensuring secure and revocable access. This approach avoids the risks and inefficiencies associated with exporting data or sharing service account keys, and it prevents unauthorized access that could occur with public dataset sharing.
- A. Incorrect.
Exporting the dataset as CSV files and sharing a bucket does not provide seamless integration with BigQuery for the other company, and managing access to the exported files is less secure and harder to revoke.
- B. Correct.
Granting the 'BigQuery Data Viewer' role directly to the other company's Google account is the most secure and straightforward way to provide read-only access to the dataset while allowing for easy revocation of access at any time.
- C. Incorrect.
Enabling public access to the dataset compromises security because anyone with the link can access the data, which is not recommended for sensitive or private datasets.
- D. Incorrect.
Sharing a service account key with another company is a poor practice as it violates security principles, makes it harder to manage access, and creates risks if the shared key is misused or leaked.