【问题标题】:Override default AWS profile for SpringBoot Application覆盖 SpringBoot 应用程序的默认 AWS 配置文件
【发布时间】:2020-10-10 03:44:20
【问题描述】:

我正在运行 SpringBoot 应用程序,这些应用程序使用来自两个不同 AWS 账户的 AWS 资源(取决于项目——每个应用程序只需要来自两个 AWS 账户之一的资源)。

我在我的 AWS 配置文件中设置了两个不同的配置文件(一个 default 一个和一个 secondary 一个)。当我使用 AWS CLI 时,我只需指定 --profile=secondary,一切正常。

我似乎找不到任何方法来使用 AWS Java SDK 为 SpringBoot 应用程序指定辅助配置文件。我有哪些选择?

【问题讨论】:

  • 您是否研究过 Maven 配置文件如何映射到 Spring Boot 的配置文件?这样您就可以在运行时检查活动配置文件并可选地初始化依赖项/bean + 执行基于配置文件的自定义逻辑。

标签: amazon-web-services spring-boot


【解决方案1】:

这可以使用ProfileCredentialsProvider(String profile) 来实现,其中profile 是问题的情况secondary

【讨论】:

  • 我真的建议设置 AWS_PROFILE 环境变量来告诉 AWS 开发工具包使用特定的配置文件,而不是像那样进行代码更改。这样,您的代码就更加可移植,例如,如果您希望最终使用 IAM 实例配置文件在 EC2 实例上运行它。此处记录了使用 SDK 配置凭据的不同方法docs.aws.amazon.com/sdk-for-java/v1/developer-guide/…
猜你喜欢
  • 1970-01-01
  • 2019-06-09
  • 1970-01-01
  • 1970-01-01
  • 2021-04-11
  • 2020-02-05
  • 1970-01-01
  • 1970-01-01
  • 2019-12-21
相关资源
最近更新 更多