标记S3 bucket对象问题



我正在尝试使用Lambda将标记添加到S3 bucket中的现有对象中。Lambda具有向bucket对象添加标记的IAM角色权限,但是get_object_tagging的简单python代码可以工作,但put_object_tag不工作。

client = boto3.client("s3")            
tagresponse = client.put_object_tagging(
Bucket="mybucket,
Key="folder1/Test.txt",
Tagging={'TagSet':[{'key':':permission:allowdownload','Value':'no'},{'key':'service:feature','Value':'sftpfiletransfer'}]},
)

API响应抛出此错误:

Parameter validation failed:
Missing required parameter in Tagging.TagSet[0]: "Key"
Unknown parameter in Tagging.TagSet[0]: "key", must be one of: Key, Value
Missing required parameter in Tagging.TagSet[1]: "Key"
Unknown parameter in Tagging.TagSet[1]: "key", must be one of: Key, Value
END RequestId: a45456e8-05c1-4b64-XXXX-XXXXXXXXXX

键和值对被填充为文档,但仍然不起作用。

提前感谢您的帮助。

提供标记密钥时需要大写K

client = boto3.client("s3")            
tagresponse = client.put_object_tagging(
Bucket="mybucket,
Key="folder1/Test.txt",
Tagging={'TagSet':[{'Key':':permission:allowdownload','Value':'no'},{'Key':'service:feature','Value':'sftpfiletransfer'}]},
)

请参阅此处的文档:https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.put_object_tagging

相关内容

最新更新