Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.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
Amazon web services 公共存储桶的S3凭据?_Amazon Web Services_Amazon S3_Boto3 - Fatal编程技术网

Amazon web services 公共存储桶的S3凭据?

Amazon web services 公共存储桶的S3凭据?,amazon-web-services,amazon-s3,boto3,Amazon Web Services,Amazon S3,Boto3,我有这个片段要在S3上上传一个文件 s3 = boto3.resource('s3') s3.Object('bucketname', timestamped_filename).put(Body=open(FILE_SAVE_PATH, 'rb')) 我的bucket对每个人都有删除/上传权限,因此它在我的Windows机器上可以工作。 然而,当我尝试在Mac上运行相同的代码时,它会抛出 botocore.execptions.nocredentials错误:找不到凭据 这种行为正常吗? 如

我有这个片段要在S3上上传一个文件

s3 = boto3.resource('s3')
s3.Object('bucketname', timestamped_filename).put(Body=open(FILE_SAVE_PATH, 'rb'))
我的bucket对每个人都有删除/上传权限,因此它在我的Windows机器上可以工作。 然而,当我尝试在Mac上运行相同的代码时,它会抛出

botocore.execptions.nocredentials错误:找不到凭据

这种行为正常吗? 如果我正在访问公共存储桶,我可以提供什么样的凭据


谢谢。

对AWS进行API调用时,必须提供有效的凭据。这些凭据与IAM用户关联,并授予对AWS服务的访问权限

从Amazon EC2实例进行API调用(或使用)时,可以通过在启动时为实例分配IAM角色来将这些凭据授予EC2实例

从非EC2计算机进行呼叫时,必须通过配置文件或环境变量提供凭据

您的Windows计算机可能是具有角色的EC2实例,或者它具有具有有效凭据的本地配置文件;而且你的Mac电脑似乎没有这两个

见: