碎碎念
今天維護,後端同仁要cloudSQL的備份檔,
然後,因為他們都沒權限,只好丟去網路空間,給他們抓。
我就在想,沒道理阿,應該有個方法能夠開特定的檔案臨時給人用。
正文
由於GCS的權限是 統一儲存分區級存取權,
所以不能細分檔案權限給別人用。
所以,開V4簽名,就能給別人訪問了。
gsutil signurl -d 1m gcs-download.json gs://ai-assist-data/"Cloud_SQL_Export_warehouse_2022-10-12 (06:03:23)".bak
1m 表示,只開放一分鐘的時間
gcs-download.json是SA,從IAM那邊找到一個有權限下載的帳號產生的金鑰。
gs 的網址,可以到詳細資料內取得 gsutil URI
這個執行後,會得到一串
把後面的https複製,就能拿來用了。
錯誤處理
如果在執行signurl的時候發生以下錯誤,
CommandException: The signurl command requires the pyopenssl library (try pip install pyopenssl or easy_install pyopenssl)
執行
pip3 install pyopenssl
其他方式
將底下的檔案跑遞迴(-R),通通設成public-read
gsutil -m acl set -R -a public-read gs://bucket
0 意見:
張貼留言