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

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

籍弘伟
2023-03-14

我是AWS和春云的新手。我已经完成了一个简单的AWS Java应用程序,其中AWS凭据存储在~/.AWS/credentials文件中。它工作得很好。我转移到了Spring Boot和Spring Cloud的一个新项目。我想继续使用我为Java应用程序设置的~/.aws/凭据。但是,我一直未能找到从凭据文件加载凭据的方法。我不得不将访问密钥和秘密密钥移动到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。

谢谢你花时间看我的帖子。

拉斯

共有1个答案

牟波
2023-03-14

尝试以下设置

cloud:
  aws:
    credentials:
      instanceProfile: false
      useDefaultAwsCredentialsChain: false
      profileName: <name>
      profilePath: ${user.home}/.aws/credentials
 类似资料:
  • 我们如何从AWS的运动流中读回时间 使用AWS Kinesis stream,可以发送事件流,消费者应用程序可以读取事件。Kinesis Stream worker从最后一个检查点获取记录并将其传递给IRecordProcessor#processRecords 但是,如果我需要读取回溯到时间的记录,例如从2小时前开始处理记录,我如何配置我的运动工作者来获取这些记录?

  • 我有一个启用/配置了TTL和DynamoDB Streams的DynamoDB表。 我想实现一个lambda函数,该函数将从DynamoDB流中读取TTL删除的数据,并将其转发给Kinesis Firehose或S3(考虑到成本,我需要决定哪一个更好)。 是否有任何标志/属性有助于识别TTL删除记录已被某些lambda函数读取/处理?例如,我在DynamoDB流中有10条记录,一个lambda函数

  • 我们有几个微服务在EKS的帮助下运行在AWS中。到目前为止,数据存储在Oracle数据库中。我们在微服务和Oracle DB之间有一个Kafka话题。 现在我们计划转移到AWS Aurora db并将数据库也放在云中。到目前为止,我们的微服务(在spring boot中实现)没有任何云特定的代码,这意味着AWS SDK集成。所以我们的代码库是云不可知的,我们计划保持这种方式。 现在我们计划编写一个

  • 我正在尝试使用读取aws s3存储桶中的文件 我已经能够使用节点aws-sdk下载和上传文件,但是我不知道如何简单地读取它并解析内容。 下面是我如何从s3读取文件的示例:

  • 使用Boto3,python脚本从S3桶中下载文件以读取它们,并将下载文件的内容写入名为的文件。 我的问题是,一旦脚本使用AWS Lambda函数,它将如何以相同的方式工作?

  • 我有一个kinesis流,有一个碎片和一个用Python编写的lambda函数。我添加了kinesis流作为批量大小为5的事件源。我在kinesis中添加了数百条记录,lambda函数得到了正确的调用和执行。但是对于最后3条记录,lambda函数被无限地调用,即使函数返回是成功的。