簡體   English   中英

創建 GCP 負載均衡器時拒絕訪問存儲桶

[英]Access Denied to Bucket while creating a GCP Load Balancer

在 GCP 中創建和配置負載均衡器時出現以下錯誤。 該問題似乎與后端存儲桶的創建有關,因為我收到以下錯誤:

拒絕訪問 Cloud Storage 存儲分區“[存儲分區的名稱]。

該bucket擁有allUser access權限,配置為web站點。

誰能幫我?

問題是我試圖配置一個 HTTPS 負載均衡器,同時我已經配置了一個 HTTP 負載均衡器,其重定向規則為 HTTPS。

在創建 HTTPS 負載均衡器之前,我解決了從 HTTP 負載均衡器刪除規則的問題。 成功創建負載均衡器后,我再次配置了 HTTP 負載均衡器,以將流量重定向到 HTTPS。

兩個負載均衡器都使用相同的 IP 來重定向流量,但使用不同的協議(HTTP 和 HTTPS)

  • 負載均衡器 1:HTTP://IP:80 -> HTTPS://IP:443
  • 負載均衡器 2:HTTPS://IP:443 -> 后端存儲桶

首先,請確認當前設置是必需的,並且通過檢查憑據是否正確來正確設置:即,如果您使用的是gsutil ,請檢查存儲在.boto文件中的憑據是否准確。 此外,通過使用命令gsutil version -l並檢查config path(s)條目,確認 gsutil 正在使用您期望的.boto文件。

如果憑據正確,則使用HTTP (而不是HTTPS )驗證您的請求是否通過代理進行路由。 如果是這樣,請檢查您的代理是否配置為從此類請求中刪除授權 header。 如果是這樣,請確保您使用HTTPS而不是HTTP來滿足您的請求。

最后,將 go 到控制台並單擊存儲桶菜單中的“設置存儲桶權限” 在 Add Members 中輸入“allUsers” ,然后分配Role -> Storage -> Storage Object Viewer

或者,如果您更喜歡使用gsutil ,運行gsutil -m acl set -R -a public-read gs://bucket應該將該存儲桶中所有文件的訪問權限設置為公共。 要在存儲桶上設置默認權限,以便在添加這些文件時默認公開這些文件,請使用gsutil defacl set public-read gs://bucket

您可以使用以下GCP 的官方文檔和以下線程作為參考。

對於遇到這種情況的其他人,也可能是您的帳戶缺少必要的權限。

確保在您的 Projec IAM 中,您的賬戶具有以下權限:

  • 計算網絡管理員
  • 存儲 Object 管理員

必須啟用這兩個權限。 無論您分配了何種其他角色,這都是正確的。 換句話說,僅僅成為項目所有者是不夠的。 這兩個權限必須單獨添加。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM