Spring Boot +从不同的AWS账户加载机密管理器机密

问题描述

我正在开发一个新的Spring Boot应用程序,该应用程序将与AWS-Postgres数据库进行交互。无服务器数据库托管在另一个AWS账户中,其机密存储在Secretmanager中。

如何有效地从跨帐户机密管理器获取数据库凭据?

在POC中,我是这样使用STSAssumeRoleSessionCredentials构建一个秘密管理器客户端的,

AWSSecretsManager awsSecretsManager = AWSSecretsManagerClientBuilder.standard()
                .withCredentials(credentialsProvider). // AssumeRole ( cross account session token)
                .withRegion("us-west-2")
                .build();

我执行了以下步骤来解决用例,但我认为这不是一个干净的解决方案。

  1. 获取的凭据
  2. 使用上述数据库凭据填充环境变量
  3. 让spring-boot / jpa设置数据库连接

我认为可以使用spring-cloud-starter-aws-secrets-manager-config来解决它,但是没有找到有关如何配置它的任何示例/参考,以便它可以从另一个AWS账户中的SecretManager中获取凭证。

上面的方法如何工作,或者有任何更好的解决方案?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)