How to disable google cloud storage bucket list from acl control?

前端 未结 4 486
误落风尘
误落风尘 2021-01-05 04:34

We\'re using google cloud storage as our CDN.

However, any visitors can list all files by typing: http://ourcdn.storage.googleapis.com/

How to disable it whi

相关标签:
4条回答
  • 2021-01-05 04:46

    Your defacl looks good. The problem is most likely that for some reason AllUsers must also have READ, WRITE, or FULL_CONTROL on the bucket itself. You can clear those with a command like this:

    gsutil acl ch -d AllUsers gs://bucketname
    
    0 讨论(0)
  • 2021-01-05 04:48

    Your command set the default object ACL on the bucket to READ, which means that objects will be accessible by anyone. To prevent users from listing the objects, you need to make sure users don't have an ACL on the bucket itself.

    gsutil acl ch -d AllUsers gs://yourbucket

    should accomplish this. You may need to run a similar command for AllAuthenticatedUsers; just take a look at the bucket ACL with

    gsutil acl get gs://yourbucket

    and it should be clear.

    0 讨论(0)
  • 2021-01-05 05:01

    In GCP dashboard:

    1. get in your bucket
    2. click "Permissions" tab and get in.
    3. in member list find "allUsers", change role from Storage Object Viewer to Storage Legacy Object Reader

    then, listing should be disabled.

    Update:

    as @Devy comment, just check the note below here

    Note: roles/storage.objectViewer includes permission to list the objects in the bucket. If you don't want to grant listing publicly, use roles/storage.legacyObjectReader.

    0 讨论(0)
  • 2021-01-05 05:06

    Upload an empty index.html file in the root of your bucket. Open the bucket settings and click Edit website configuration - set index.html as the Main Page.

    It will prevent the listing of the directory.

    0 讨论(0)
提交回复
热议问题