I want to give a service account read-only access to every bucket in my project. What is the best practice for doing this?
The answers here suggest one of:
- creating a custom IAM policy
- assigning the Legacy Bucket Viewer role on each bucket
- using ACLs to allow
bucket.getaccess
None of these seem ideal to me because:
- Giving read-only access seems too common a need to require a custom policy
- Putting "Legacy" in the name makes it seem like this permission will be retired relatively soon and any new buckets will require modification
- Google recommends IAM over ACL and any new buckets will require modification
Is there some way to avoid the bucket.get requirement and still access objects in the bucket? Or is there another method for providing access that I don't know about?