Python 3.x 在S3 bucket上上载对象时出现问题
我正在尝试在我的机器上运行AWS SDK(boto3)代码。我想把一些文件上传到S3 bucket上。但是,我从磁盘读取这些文件,为此,我需要使用Python 3.x 在S3 bucket上上载对象时出现问题,python-3.x,amazon-s3,boto3,Python 3.x,Amazon S3,Boto3,我正在尝试在我的机器上运行AWS SDK(boto3)代码。我想把一些文件上传到S3 bucket上。但是,我从磁盘读取这些文件,为此,我需要使用sudo-E运行代码。当我这样运行代码时,我得到 错误:root:调用PutObject操作时发生错误(AccessDenied):拒绝访问错误。 但是当我在没有sudo的情况下运行相同的代码时(并且在注释了需要sudo的与磁盘相关的操作之后),它工作得非常好。 还有其他人面临过这个问题吗? 有人能帮我修一下吗 参考代码-需要为当前用户授予aws凭据的
sudo-E
运行代码。当我这样运行代码时,我得到
错误:root:调用PutObject操作时发生错误(AccessDenied):拒绝访问
错误。
但是当我在没有sudo的情况下运行相同的代码时(并且在注释了需要sudo的与磁盘相关的操作之后),它工作得非常好。
还有其他人面临过这个问题吗?
有人能帮我修一下吗
参考代码-需要为当前用户授予aws凭据的读取权限,以便boto客户端能够读取它们
$chown-R user:user.aws/您是如何定义aws访问和密钥的?您是否使用了环境变量或
~/.aws/credentials
文件?运行aws sts get caller identity
时会发生什么情况?如何sudo sh-c“aws sts获取呼叫方身份”
?运行sudo命令时,它会将用户切换到root
,并相应地更改$PATH
和其他环境变量。可能发生的情况是,aws是为普通用户配置的,但不是为根用户配置的。可能重复: