使用 IAM 控制存取權

工作流程使用身分與存取權管理 (IAM),控管哪些已驗證的使用者和服務帳戶可以執行哪些動作。

開始驗證及授權存取工作流程資源前,請務必瞭解 IAM 的基本概念

本頁面詳細說明存取工作流程資源所需的權限,包括叫用工作流程執行的權限。

如要瞭解如何授予工作流程權限,以便存取其他服務,請參閱「授予工作流程權限,以便存取 Google Cloud 資源」。

存取控管

無論您如何實作驗證,瞭解存取控管和可用的 Workflows 角色都非常重要。角色是一組權限,可授予 Google Cloud中的資源存取權。建立正式版應用程式時,只有授予服務帳戶所需要的角色,才能與適用的 Google Cloud API、功能或資源互動。

如要進一步瞭解可用的 Workflows 角色,請參閱「Workflows 角色和權限」。

叫用工作流程

服務帳戶既是身分也是資源,可接受 IAM 政策。因此,您可以將角色授予服務帳戶,然後在服務帳戶或其中一個父項資源上授予角色,允許其他主體模擬服務帳戶。

舉例來說,您可以將 workflows.invoker 角色授予服務帳戶,讓該帳戶有權觸發工作流程執行作業。然後允許主體模擬或以服務帳戶身分執行作業。請注意,工作流程服務帳戶不需要 workflows.invoker 角色,除非工作流程會叫用自身或其他工作流程。

如要進一步瞭解服務帳戶模擬功能,請參閱「服務帳戶模擬功能」。

如要將 Workflows 叫用者角色 (roles/workflows.invoker) 授予呼叫 Workflows 的服務所屬服務帳戶,讓該服務有權執行工作流程及管理執行作業,請按照下列步驟操作:

控制台

  1. 前往 Google Cloud 控制台的「Service Accounts」(服務帳戶) 頁面:
    前往「Service Accounts」(服務帳戶)

  2. 選取專案,然後按一下「建立服務帳戶」

  3. 在「Service account name」(服務帳戶名稱) 欄位中輸入名稱,例如 sa-name

  4. 點按「Create and continue」(建立並繼續)

  5. 在「Select a role」(選取角色) 清單中,依序選取「Workflows」(工作流程)>「Workflows Invoker」(工作流程叫用者)

  6. 按一下 [完成]

gcloud

  1. 開啟終端機。

  2. 輸入下列指令:

    gcloud projects add-iam-policy-binding PROJECT_ID \
       --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
       --role roles/workflows.invoker

    更改下列內容:

    • PROJECT_ID:專案的 ID。 Google Cloud
    • SERVICE_ACCOUNT_NAME:服務帳戶名稱。