能否通过AWS S3 Bucket Policy限制仅允许小写文件及目录?
问题:能否通过Bucket Policy限制AWS S3存储桶仅允许上传小写文件及目录?
部分下游系统对大小写不敏感,为避免出现问题,希望限制AWS S3存储桶仅允许上传小写文件及目录。目前已知有Lambda替代方案,请问是否可通过Bucket Policy实现该要求?
答案:可以通过Bucket Policy实现该要求
你提供的Bucket Policy配置是可行的,核心逻辑是通过拒绝操作配合条件判断,拦截包含大写字符的文件/目录上传:
- 策略针对
s3:PutObject(上传对象)动作生效 - 利用条件
StringNotEquals对比对象键名s3:KeyName和其小写转换后的结果lower(s3:KeyName),如果两者不匹配,说明键名存在大写字符,就会触发拒绝规则,阻止上传
对应的Bucket Policy配置如下:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Enforce lower-case", "Effect": "Deny", "Principal":"*", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::mybucket/*", "Condition": { "StringNotEquals": { "s3:KeyName": "lower(s3:KeyName)" } } } ] }
内容的提问来源于stack exchange,提问作者rfg
相关产品推荐
相关产品推荐

