使用者和服務帳戶可以使用 SSH 公開金鑰,向 Secure Source Manager 存放區進行驗證。本頁說明如何產生 SSH 金鑰組,然後在 Secure Source Manager 網頁介面中新增為驗證方法。
Secure Source Manager 支援 RSA、ECDSA 和 Ed25519 SSH 金鑰類型。
必要的角色
如要取得透過 SSH 公開金鑰驗證所需的權限,請要求管理員授予下列 IAM 角色:
- 
            如要為使用者新增安全殼層金鑰:
              
  
  
    
      Secure Source Manager 執行個體存取者  (roles/securesourcemanager.instanceAccessor) 在 Secure Source Manager 執行個體上
- 
            如要為服務帳戶新增 SSH 金鑰:
            - 
  
  
    
      Secure Source Manager 執行個體上的Secure Source Manager 執行個體管理員  (roles/securesourcemanager.instanceManager)
- 
  
  
    
      服務帳戶使用者  (roles/iam.serviceAccountUser) 服務帳戶
 
- 
  
  
    
      Secure Source Manager 執行個體上的Secure Source Manager 執行個體管理員  (
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這些預先定義的角色具備使用 SSH 公開金鑰進行驗證所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要使用安全殼層公開金鑰進行驗證,必須具備下列權限:
- 
                  securesourcemanager.sshkeys.createAny
- 
                如要將 SSH 金鑰指派給服務帳戶,請按照下列步驟操作:
                  iam.serviceAccounts.actAs
如要瞭解如何授予 Secure Source Manager 角色,請參閱「使用 IAM 控管存取權」和「授予使用者執行個體存取權」。
產生金鑰組
SSH 金鑰組包含本機系統上的私密金鑰,以及您透過 Google Cloud註冊的公開金鑰。
Linux 或 macOS
- 在本機系統上安裝 OpenSSH。 
- 在命令提示字元中,輸入下列指令: - ssh-keygen -t [KEY_TYPE] -C "[USER_EMAIL]"- 其中: - [USER_EMAIL]是你的電子郵件地址。
- [KEY_TYPE]是- rsa、- ecdsa或- ed25519。
 - 例如: - ssh-keygen -t rsa -C "user@example.com"- 系統提示時,請輸入公開金鑰檔案的位置和檔案名稱。 如要接受預設位置和檔案名稱,請按 Enter 鍵。 
- 系統提示時,請將通關密語留空,然後按 Enter 鍵。 
 
Windows
- 在本機系統上安裝 PuTTY。 
- 在 Windows「開始」功能表開啟 PuTTYGen。 
- 在開啟的視窗中,於「Parameters」(參數) 欄位選取金鑰類型。 
- 點按「生成」。 - PuTTYGen 會顯示產生的公開金鑰字串。 
- 系統提示時,請將通關密語留空,然後按 Enter 鍵。 
- 如要將產生的金鑰組儲存於本機系統,請按一下「儲存公開金鑰」和「儲存私密金鑰」。 
為使用者新增安全殼層金鑰
- 在 Secure Source Manager 網頁介面中,按一下執行個體或存放區頁面的「更多選項」選單。
- 按一下「使用者 SSH 金鑰」。 - 「使用者 SSH 金鑰」頁面隨即開啟,並顯示您建立的所有現有金鑰清單。 
- 在「使用者 SSH 金鑰」頁面中,按一下「新增金鑰」。 
- 在「新增 SSH 金鑰」頁面中,輸入金鑰的下列值: - 標題:為金鑰新增描述性標題。
- 安全殼層公開金鑰:貼上公開金鑰字串。如要取得公開金鑰字串,請執行下列指令:
 - cat ~/.ssh/FILENAME.pub- 其中 - FILENAME是您為金鑰檔案指定的名稱。
只要您擁有存放區的必要權限,就能使用 SSH 金鑰向任何 Secure Source Manager 存放區進行驗證。
新增服務帳戶的 SSH 金鑰
如要透過程式存取存放區,可以為服務帳戶新增 SSH 金鑰。
- 如果您沒有要使用的服務帳戶,請建立服務帳戶。
- 在 Secure Source Manager 網頁介面中,按一下「更多選項」 選單。
- 按一下「服務帳戶 SSH 金鑰」。系統會開啟「服務帳戶 SSH 金鑰」頁面,並顯示您新增的現有金鑰清單。
- 在「服務帳戶 SSH 金鑰」頁面中,按一下「新增金鑰」。
- 在「Add service account SSH key」(新增服務帳戶 SSH 金鑰) 頁面中,輸入金鑰的下列值: - 名稱:索引鍵的說明標題
- 服務帳戶:要使用 SSH 金鑰的服務帳戶電子郵件,格式為 - SA_NAME@PROJECT_ID.iam.gserviceaccount.com- 地點 - SA_NAME是服務帳戶名稱。
- PROJECT_ID是建立服務帳戶的專案 ID。
 
- 安全殼層公開金鑰:您的公開安全殼層金鑰。如要瞭解如何產生安全殼層金鑰組,請參閱「產生金鑰組」。 
 
- 如果服務帳戶與 Secure Source Manager 執行個體不在同一個專案中,請將下列其中一個角色或權限授予要使用的服務帳戶,以及 Secure Source Manager 的服務代理程式: - iam.serviceAccounts.signJwt權限
- 服務帳戶憑證建立者 (roles/iam.serviceAccountTokenCreator) 角色
 - 執行下列指令,將 IAM 政策新增至 Secure Source Manager 服務帳戶,並授予服務帳戶憑證建立者角色。 - gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT \ --member="serviceAccount:service-INSTANCE_PROJECT_NUMBER@gcp-sa-sourcemanager.iam.gserviceaccount.com" \ --role="roles/iam.serviceAccountTokenCreator"- 其中 SERVICE_ACCOUNT 是您要使用的服務帳戶,INSTANCE_PROJECT_NUMBER 則是 Secure Source Manager 執行個體的專案編號。 - SERVICE_ACCOUNT 的格式應為數字服務帳戶 ID 或電子郵件地址,例如:123456789876543212345 或 my-iam-account@somedomain.com。