amazon-s3 - 使用 boto3 授予对 S3 对象上的 Elasticache 的读取权限

标签 amazon-s3 boto3 amazon-elasticache

我有一个脚本,用于将文件上传到 S3,然后启动使用该文件作为种子的 Elasticache 服务器。 Elasticache documentation表示向 540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353 提供读取和读取权限,它代表除 GovCloud 或中国以外的任何区域的规范 ID。

这是我的代码:

import boto3
s3_cl = boto3.client('s3')
s3_cl.put_object_acl(Bucket='bucket-name', Key='file.rdb', GrantRead='540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353')

这是我得到的错误:

ClientError: An error occurred (InvalidArgument) when calling the PutObjectAcl operation: Argument format not recognized

我应该向 GrantRead 提供什么参数?我的理解是它是一个受让人,可以是一个规范的 ID,那么我做错了什么?

最佳答案

我认为您应该采用以下格式之一提供受资助者:

  • id=<受让人的规范用户 ID>
  • email=<受助者的电子邮件地址>
  • uri=<受让人组的 URI>
  • displayname=<受让人的屏幕名称>
  • type=<受资助者类型>

我从 awscli put-object-acl 推断出此信息文档。

关于amazon-s3 - 使用 boto3 授予对 S3 对象上的 Elasticache 的读取权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47644068/

相关文章:

elasticsearch - 将 "repository-s3"插件用于 ElasticSearch 时出错

amazon-web-services - AWS IAM 理解问题

linux - 获取 EC2 实例的 "platform"属性时出错

python - 如何使用boto3获取我拥有的EBS快照列表?

java - 我的 Elasticache Redis 节点中的当前连接数不断增加

node.js - AWS Elastic Beanstalk NodeJS项目访问S3存储桶

file-upload - 通过 Amazon API 网关和 lambda 上传图像

python - 如果使用 HTTP/1.1,模拟 S3 服务器会停止

c# - 使用 C# 的 AWS Elasticache Redis

ruby-on-rails - 如何在 Rails 中更改 redis amazon elasticache 的 maxmemory-policy?