Spring Boot 应用程序未在 AWS Elastic Beanstalk 中进行一次身份验证

我有一个正在开发的适用于 AWS 的 REST API Spring Boot 应用程序。它是在本地机器上开发的,通过该本地机器,我们已经能够提取实时 AWS 数据,即使它在本地机器上并且 URL 是 localhost。我们已经完成了大部分开发工作,并准备将其迁移到云端。但是,现在我们创建了一个 JAR,将其托管在 AWS Elastic Beanstalk 上,并调用了 API URL,AWS 现在给了我们一个 500 Access Denied Error。


目前,我们的本地应用程序正在通过我们项目的 application.properties 文件中的变量进行身份验证。这些似乎不适用于云环境。我们还尝试将 Elastic Beanstalk 中的环境变量设置为我们在 application.properties 中的相同值,但仍然返回 500 错误。


这是我们从 AWS 返回的确切错误


{

    "timestamp": "2019-07-02T20:23:31.400+0000",

    "status": 500,

    "error": "Internal Server Error",

    "message": "Access Denied (Service: S3, Status Code: 403, Request ID: 66CA2FE6CEE7A5D4)",

    "path": "/api/s3/buckets/list"

}

这是我放置安全密钥的 application.properties 文件


cloud.aws.credentials.accessKey=XXXXXXXXXXXXX

cloud.aws.credentials.secretKey=XXXXXXXXXXXXXXX

cloud.aws.region.static=us-east-1


泛舟湖上清波郎朗
浏览 82回答 1
1回答

海绵宝宝撒

我认为 Elastic Beanstalk 可能没有可以访问 S3 的读/写角色。在 AWS 中运行时不需要凭据,一切都取决于角色(权限)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java