上传到S3时,我需要帮助设置对象的权限。我想让它公开读/写。
我有如下功能。
def UploadFile(self, destFilePath, data):
self._bucket.put_object(Key=destFilePath, Body=data, ACL='public-read-write')
运行时,我有权限错误。
ClientError: An error occurred (AccessDenied) when calling the PutObject operation: Access Denied
答案 0 :(得分:3)
了解how your application can access AWS credentials非常重要。
在对AWS进行API调用时,必须提供凭据以对向AWS发出请求的人员或应用程序进行身份验证。这些凭证可以识别:
为这些实体分配权限,授予对特定资源进行特定API调用的权限。例如,可以授予从Amazon S3存储桶下载数据,启动/停止Amazon EC2实例或修改安全设置的权限。这些权限在政策中定义。
您可以通过多种方式为Python应用程序提供凭据:
因此,如果您收到let uniqueArray = duplicatesArray
.map(function (date) { return date.getTime() })
.filter(function (date, i, array) {
return array.indexOf(date) === i;
})
.map(function (time) { return new Date(time); });
错误,则应该:
请参阅:Boto documentation: Configuring Credentials和IAM documentation