Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 在S3 bucket上上载对象时出现问题_Python 3.x_Amazon S3_Boto3 - Fatal编程技术网

Python 3.x 在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凭据的

我正在尝试在我的机器上运行AWS SDK(boto3)代码。我想把一些文件上传到S3 bucket上。但是,我从磁盘读取这些文件,为此,我需要使用
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是为普通用户配置的,但不是为根用户配置的。可能重复: