簡體   English   中英

在 GCP 上,如何授予對另一個項目中服務帳戶的訪問權限?

[英]On GCP, how to grant access to a service account in another project?

我在項目project-b中有一個計算實例,還有一個單獨的項目project-a project-b中的實例需要使用project-a服務帳號訪問project-a

project-a

  • 創建服務帳戶。 假設它的名稱是project-a-service-account@project-a.iam.gserviceaccount.com
  • 授予服務帳戶非常具體的有限角色
  • 為服務帳戶創建並下載密鑰。 將其命名為key.json

project-b

  • 創建計算實例
  • SSH 到實例。 在此計算實例 SSH shell 中鍵入后面的所有命令。
  • 將密鑰文件key.json上傳到實例。 如果您使用的是 Google Cloud Console SSH window,則可以使用右上角齒輪圖標菜單中的上傳來執行此操作。
  • 激活服務帳號:

     gcloud auth activate-service-account project-a-service-account@project-a.iam.gserviceaccount.com --key-file key.json
  • 重新初始化:

     gcloud init
    • gcloud init命令將提供重新初始化當前配置或創建新配置。 創建一個新的可能會很好,但這取決於您。
    • 選擇賬戶project-a-service-account@project-a.iam.gserviceaccount.com

現在, project-b中的這個實例可以充當project-a -a 中的服務帳戶。 例如,如果服務帳戶具有compute.instances.create權限,您可以在project-a中創建實例:

gcloud compute instances create new-instance --project project-a

project-a管理員可以通過撤銷服務帳戶project-a-service-account@project-a.iam.gserviceaccount.com的密鑰來撤銷此訪問權限。

谷歌有一個超級快速的演示展示了這一點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM