亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何設置在 GCP Appengine 上運行的 GOOGLE_APPLICATION_

如何設置在 GCP Appengine 上運行的 GOOGLE_APPLICATION_

Go
當年話下 2022-05-18 10:11:07
我正在使用 Windows 為我的 golang 項目運行本地 appengine。我得到了googleapi: Error 403: Permission 'cloudkms.cryptoKeyVersions.useToEncrypt' denied on resource 'projects/xxxx/locations/xxxx/keyRings/xxx/cryptoKeys/xxx' (or it may not exist)., forbidden。GOOGLE_APPLICATION_CREDENTIALS然后我通過使用服務帳戶 xxxx.json 的值設置環境變量來解決。然后在appengine中部署GCP它返回相同的錯誤googleapi: Error 403..... 那么如何GOOGLE_APPLICATION_CREDENTIALS在GCP appengine中設置。
查看完整描述

3 回答

?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

您遇到的問題是由在兩種環境中開發/測試引起的:您的桌面和 App Engine。這個問題很容易以干凈安全的方式解決。

在桌面上開發/測試時,請使用服務帳戶。使用環境變量指定服務帳戶。

在 Windows 上:

set GOOGLE_APPLICATION_CREDENTIALS=c:\fullpath\serviceaccount.json

在 Linux 上:

export GOOGLE_APPLICATION_CREDENTIALS=/fullpath/serviceaccount.json

您可以在命令提示符下手動運行上一個命令,也可以將其放入啟動腳本 (Linux) 或系統環境變量 (Windows)。

對于 App Engine,我不建議在您的應用程序中使用服務帳戶文件。我也不建議設置環境變量。

Google 客戶端庫支持應用程序默認憑據 (ADC)。這意味著庫將嘗試自動為您查找憑據。然后,客戶端庫可以使用該環境來查找要在 Windows 上使用的服務帳戶,并在部署時自動使用 App Engine 默認服務帳戶。

通過在您的代碼中包含 ADC,您可以在 Windows/Linux 上進行測試并部署到 App Engine,而無需修改您的代碼,也沒有在部署中包含服務帳戶 JSON 文件的安全風險。


查看完整回答
反對 回復 2022-05-18
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

您需要設置 IAM 權限才能使用加密功能。


您可以通過使用以下命令和您的服務帳戶的詳細信息來做到這一點:


gcloud kms keys add-iam-policy-binding \

  golden-egg --location global --keyring golden-goose \

  --member serviceAccount:[email protected] \

  --role roles/cloudkms.cryptoKeyEncrypterDecrypter


查看完整回答
反對 回復 2022-05-18
?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

另一個答案:

在您的控制臺中,在 IAM -> Service Accounts 下,您將能夠找到與您的應用引擎實例關聯的服務帳戶:

在此處輸入圖像描述

您可以在那里或通過命令行編輯權限。

有時通過 UI 做事更容易


查看完整回答
反對 回復 2022-05-18
  • 3 回答
  • 0 關注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號