How to properly use create_anonymous_client() function in google cloud storage python library for access on public buckets?

强颜欢笑 提交于 2020-01-24 20:19:05

问题


I made a publicly listable bucket on google cloud storage. I can see all the keys if I try to list the bucket objects in the browser. I was trying to use the create_anonymous_client() function so that I can list the bucket keys in the python script. It is giving me an exception. I looked up everywhere and still can't find the proper way to use the function.

from google.cloud import storage

client = storage.Client.create_anonymous_client()
a = client.lookup_bucket('publically_listable_bucket')
a.list_blobs()

Exception I am getting:

ValueError: Anonymous credentials cannot be refreshed.

Additional Query: Can I list and download contents of public google cloud storage buckets using boto3, If yes, how to do it anonymously?


回答1:


This error means the bucket you are attempting to list does not grant the right permission. You must Give "Storage Object Viewer" or "Storage Legacy Bucket Reader" role to "allUsers".



来源:https://stackoverflow.com/questions/51078146/how-to-properly-use-create-anonymous-client-function-in-google-cloud-storage-p

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!