当前位置: 首页 > 知识库问答 >
问题:

使用java中的google cloud secretmanager客户端库访问多个google cloud项目的Secret Manager

易流觞
2023-03-14

我使用GCP秘密管理器来存储密码使用google-Cloud的客户端库(Java)。客户端库期望环境变量中gcp项目的服务号键(json)文件路径。我可以为单个项目这样做,但是当我试图访问多个GCP项目的秘密管理器时,我不知道如何在环境变量中为不同的项目设置密钥。需要在环境中设置键的帮助,或者有一种方法可以使用java代码设置它。

我正在使用这个maven依赖项

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

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

提前谢谢。

共有1个答案

萧心水
2023-03-14

与大多数Google云服务一样,Google Secret Manager支持跨项目权限。通过对服务帐户应用IAM权限,您可以授予您的服务帐户访问其他项目中的机密的权限。即使服务帐户位于project-a中,它仍然可以被授予访问project-b中的机密管理者机密的权限:

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

另外,客户端库不需要JSON服务号密钥的路径。它接受一个,但是您可以通过多个路径提供身份验证,包括应用程序默认凭据(首选)。

 类似资料:
  • 我需要在JavaScript中访问Azure密钥库中的一些秘密值。它是普通的JavaScript,没有NPM和节点。有没有直接从JavaScript获取值的选项?或者我需要编写一个单独的API来检索密钥库。这与保护某些ID无关,我想知道是否有任何可能的选项从客户端获取密钥库值。 我希望这是在简单的JavaScript。

  • 问题内容: 我刚刚开始在Java中使用json。我不确定如何访问JSONArray中的字符串值。例如,我的json看起来像这样: 我的代码: 我现在可以访问“ record” JSONArray,但是不确定如何在for循环中获取“ id”和“ loc”值。抱歉,如果此说明不太清楚,我对编程有点陌生。 问题答案: 您是否尝试过使用JSONArray.getJSONObject(int)和JSONAr

  • 我在应用程序中使用JWT实现OAuth 2.0,在决定将什么设置为我的aud声明时遇到了困难。用户将通过我的身份验证服务器“登录”到我的客户端,以访问我的API(资源)服务器。我希望我的令牌只对特定客户端和特定API有效。 从我的客户端登录时,我在请求中不包括它的客户端id,但在我发现的大多数实现中,aud设置为该客户端id。我倾向于在我的登录请求中包含一个customer(客户)audience

  • 我有2个与firestore的firebase项目,让我们称他们为A和B,他们都有自己的web客户端。现在A web客户机需要读取B firestore数据库,所以我需要允许A客户机在B的某些集合下对firestore执行某些操作。是否有一种方法可以在使用firestore规则的同时使用B中A的身份验证数据来允许此类操作?。是否有一种方法可以将auth令牌从a链接到B中允许它们?。 任何机制都行得

  • 我有一个运行在一个系统上的java服务器,它从数据库加载数据并缓存到java缓存。我有其他的C++客户端,它正在运行使用相同的Java配置。两者都在不同的PC上运行。我希望对java和C++客户机都使用一个公共缓存,也就是说,如果我使用java加载缓存,然后我希望通过C++客户机查询这个缓存数据。我只是尝试这样设置组播选项。 如果两个客户机都在同一个系统上工作,它的工作是好的。但是当两者都在不同的

  • 我正在使用Netty4创建一个需要为多个客户端连接提供服务的服务器。ServerBootstrap由父线程组和工作线程组构成。根据ServerBootStrap上的文档。group()方法it “为父(接收器)和子(客户端)设置EventLoopGroup。这些EventLoopGroup用于处理SocketChannel和Channel的所有事件和IO。” 据我所知,ParentExecutor