从Spring Boot Spring Cloud读取〜/ .aws / credentials

时间:2017-02-24 22:42:05

标签: spring amazon-web-services amazon-s3 spring-boot spring-cloud

我是AWS和Spring Cloud的新手。我已经完成了一个简单的AWS Java应用程序,其中AWS凭证存储在〜/ .aws / credentials文件中。它工作得很好。我搬到了Spring Boot和Spring Cloud的新项目。我想继续使用我为Java应用程序设置的〜/ .aws / credential。但是,我无法找到从凭证文件加载凭据的方法。我不得不将访问密钥和密钥移动到aws-config.xml。

    <aws-context:context-credentials>
       <aws-context:simple-credentials access-key="${accessKey:}" secret-key="${secretKey:}"/>
    <aws-context:context-resource-loader/>

当我完成此操作时,Spring Boot和Spring Cloud应用程序运行良好。但是,将信息保存在xml文件中并不是最安全的方法,因为我使用的是GitHub。

有人能指出我可以使用Maven将〜/ .aws / credentials文件中的信息提取到Spring Boot / Spring Cloud中吗?

感谢您抽出时间阅读我的帖子。

拉​​斯

2 个答案:

答案 0 :(得分:0)

Instance Profile听起来像是正确的选择!

它是一个存在于实例上的IAM角色,无需在代码中对代码进行硬编码。

Spring Cloud的Maven setup guide:)

答案 1 :(得分:0)

尝试以下设置

cloud:
  aws:
    credentials:
      instanceProfile: false
      useDefaultAwsCredentialsChain: false
      profileName: <name>
      profilePath: ${user.home}/.aws/credentials