Amazon web services 公共存储桶的S3凭据?
我有这个片段要在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 = 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电脑似乎没有这两个 见: