我有一个我用Asp.net核心2.0构建的网站。该网站获取位于我的ASW S3存储桶中的文件列表,并将其显示为经过身份验证的用户的链接。当我在本地运行网站时,我没有任何问题,并且能够访问S3以生成预先签名的网址。当我将Web应用程序部署到LightSail ubuntu时,我收到了这个非常有用的错误消息:AmazonS3Exception:Access Denied。
起初我以为是一个地区问题。我更改了我的S3存储桶以使用与我的Lightsail ubuntu实例(East#2)相同的区域。然后我认为这是一个CORS问题,并确保我的桶允许CORS。
我现在有点陷入困境。
答案 0 :(得分:0)
我遇到了完全相同的问题,然后我通过创建环境变量解决了该问题。要在Ubuntu中永久添加环境变量,请通过以下命令打开环境文件
sudo vi /etc/environment
然后添加您的凭据
AWS_ACCESS_KEY_ID=YOUR_KEY_ID
AWS_SECRET_ACCESS_KEY=YOUR_SECRECT_ACCESS_KEY
然后保存环境文件,然后重新启动asp核心应用程序。