从 AWS Lambda 调用 Google Cloud KMS

Calling Google Cloud KMS from AWS Lambda

我是 Google 的云服务和 Java 的新手,但我正在尝试在 AWS Lambda 上设置一个 Java 函数来调用Google 云 KMS。我在本地使用 Java 代码,但据我所知,验证 Google 客户端的唯一方法是设置一个环境变量,其中包含包含您的凭据的 JSON 文件的路径。当触发我的 Java 函数时,我可以在本地轻松地做到这一点——当 运行 代码时,我只是将环境变量设置为指向我计算机上的一个文件。谁能给我任何关于如何在 Lambda 中执行此操作的指示,我似乎只能上传一个 .jar 文件?

您可能希望将 JSON 文件存储在 AWS Secret Manager 中,然后在函数启动时通过向 AWS Secret Manager 进行身份验证来检索 JSON 文件。然后您应该配置 Google 客户端库以使用该凭据内容。

或者(更复杂但也更安全)configure GCP as an OIDC provider for AWS 然后创建一个 AWS 角色,有权直接调用 GCP KMS - 不需要凭证文件。