簡體   English   中英

使用 java 中的 google-cloud-secretmanager 客戶端庫訪問多個谷歌雲項目的 Secret Manager

[英]Access Secret Manager of multiple google cloud projects using google-cloud-secretmanager client library in java

我使用 GCP 密鑰管理器使用google-cloud-secretmanager客戶端庫 (Java) 存儲密碼。 客戶端庫需要環境變量中 gcp 項目的服務帳戶密鑰 (json) 文件路徑。 我可以為單個項目執行此操作,但是當我嘗試訪問多個 GCP 項目的 Secret manager 時,我不知道如何在環境變量中為不同項目設置密鑰。 在環境中設置鍵時需要幫助,或者有沒有辦法使用 java 代碼進行設置。

我正在使用這個 maven 依賴項

  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-secretmanager</artifactId>
  </dependency>

https://cloud.google.com/secret-manager/docs/reference/libraries

提前致謝。

與大多數 Google Cloud 服務一樣,Google Secret Manager 支持跨項目權限。 您可以通過將 IAM 權限應用於服務賬戶來授予您的服務賬戶訪問其他項目中的密鑰的權限。 即使服務帳戶駐留在project-a中,它仍然可以被授予訪問project-b中的 Secret Manager 機密的權限:

gcloud secrets add-iam-policy-binding "my-secret" \
  --project "project-b"
  --member "serviceAccount:my-service-account@project-a.iam.gserviceaccount.com"

順便說一句,客戶端庫不需要JSON 服務帳戶密鑰的路徑。 它接受一個,但您可以通過多個路徑提供身份驗證,包括應用程序默認憑據(首選)。

暫無
暫無

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

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