Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
本頁面說明如何存取位於 Cloud Composer 環境以外的Google Cloud 專案資源。
如果您想使用某個專案中的服務帳戶,在另一個專案中執行環境,請參閱「使用其他專案中的服務帳戶」。
建議您以以下方式存取其他 Google Cloud 專案中的資源:
在 DAG 中,使用環境中預先設定的預設連線。
舉例來說,許多Google Cloud 運算子都會使用
google_cloud_default
連線,而且在您建立環境時會自動設定。將額外的 IAM 權限和角色授予環境的服務帳戶,讓該帳戶能夠存取其他專案中的資源。
判斷環境的服務帳戶
如要判斷環境的服務帳戶,請按照下列步驟操作:
主控台
前往 Google Cloud 控制台的「Environments」頁面。
在環境清單中,按一下環境名稱。「環境詳細資料」頁面隨即開啟。
前往「環境設定」分頁。
環境的服務帳戶會列在「Service account」欄位中。
值是電子郵件地址,例如
service-account-name@example-project.iam.gserviceaccount.com
。
gcloud
gcloud composer environments describe ENVIRONMENT_NAME \
--location LOCATION \
--format="get(config.nodeConfig.serviceAccount)"
值是電子郵件地址,例如 service-account-name@example-project.iam.gserviceaccount.com
。
授予 IAM 角色和權限,以便存取其他專案中的資源
環境的服務帳戶需要存取其他專案資源的權限。這些角色和權限可能會因您要存取的資源而異。
存取特定資源
建議您為特定資源 (例如位於不同專案中的單一 Cloud Storage 值區) 授予角色和權限。在這種方法中,您會使用資源型存取權搭配條件式角色繫結。
如要存取特定資源,請按照下列步驟操作:
- 請按照設定以資源為基礎的存取權指南操作。
- 授予角色和權限時,請將環境的服務帳戶指定為實體。
存取資源類型
您也可以根據資源類型 (例如位於其他專案中的所有 Cloud Storage 值區) 授予角色和權限。
如要存取資源類型,請按照下列步驟操作:
- 請按照管理其他資源的存取權指南操作。
- 授予角色和權限時,請將環境的服務帳戶指定為實體。
授予必要權限和角色後,您就可以使用與環境所在專案相同的預設 Airflow 連線,存取其他專案中的資源。