![](/img/trans.png)
[英]Django on Google App Engine connection to Cloud SQL, cannot connect
[英]Cannot connect to Google cloud SQL from App Engine Standard Environment
我最近將我的代碼切換到另一個項目。 我使用官方文檔中提到的 Public IP 方法,但無濟於事。
在日志瀏覽器中,我看到了很多警告條目 state:
CloudSQL 警告:需要您的操作來更新您的應用程序並避免潛在的中斷。 有關更多詳細信息,請參閱https://cloud.google.com/sql/docs/mysql/connect-app-engine-standard :
發布
https://sqladmin.googleapis.com/sql/v1beta4/projects/<PROJECT_ID>/instances/asia-east1~<CLOUD_SQL_INSTANCE>:generateEphemeralCert?alt=json&prettyPrint=false
:rpc 錯誤:code = PermissionDenied desc = IAM 權限被拒絕對於服務帳戶 gae-deploy@<PROJECT_ID>.iam.gserviceaccount.com。
我已經確認和檢查的事情:
Cloud SQL Admin API
已啟用asia-east1
(與雲 SQL 區域相同)Cloud SQL Admin
角色[PROJECT_ID]@appspot.gserviceaccount.com
具有以下角色:
Cloud SQL Admin
, Editor
, Service Account Token Creator
, Storage Object Admin
gae-deploy@<PROJECT_ID>.iam.gserviceaccount.com
具有以下角色:
App Engine Service Admin
, Cloud Build Service Account
, Cloud SQL Admin
, Cloud SQL Client
, Serverless VPC Access User
, Service Account User
根據文檔, Cloud SQL Client
角色就足夠了。 但是日志一直告訴我服務帳戶無法訪問雲 sql admin API。
我究竟做錯了什么? 或者我應該向服務賬戶授予哪些額外的 IAM 角色?
我已嘗試過此 github 線程評論中提到的類似步驟。 我完成的步驟:
[PROJECT_ID]@appspot.gserviceaccount.com
和gae-deploy@<PROJECT_ID>.iam.gserviceaccount.com
所有角色現在一切如常
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.