我使用gcp secret manager存储密码,使用googlecloudsecretmanager客户端库(java)。客户端库在环境变量中需要gcp项目的服务帐户密钥(json)文件路径。我可以为单个项目设置密钥,但是当我尝试访问多个gcp项目的secretmanager时,我不知道如何在环境变量中为不同的项目设置密钥。在设置环境中的键时需要帮助,或者有没有一种方法可以使用java代码来设置它。
我使用的是maven依赖
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-secretmanager</artifactId>
</dependency>
https://cloud.google.com/secret-manager/docs/reference/libraries
提前谢谢。
1条答案
按热度按时间zyfwsgd61#
像大多数google云服务一样,googlesecretmanager支持跨项目权限。通过对服务帐户应用iam权限,您可以授予服务帐户访问其他项目中的机密的权限。即使服务帐户位于
project-a
,它仍然可以在中被授予访问机密管理器机密的权限project-b
:另外,客户机库不需要json服务帐户密钥的路径。它接受一个,但您可以通过多个路径提供身份验证,包括应用程序默认凭据(首选)。