Amazon web services AWS s3:在bucket上的单个文件夹中将权限从public更改为private
如何将AWS s3中单个文件夹上的ACL从公用更改为专用 现在我正在使用这个命令Amazon web services AWS s3:在bucket上的单个文件夹中将权限从public更改为private,amazon-web-services,amazon-s3,aws-cli,Amazon Web Services,Amazon S3,Aws Cli,如何将AWS s3中单个文件夹上的ACL从公用更改为专用 现在我正在使用这个命令 aws s3 ls --recursive s3://<bucket-name> | cut -d' ' -f5- | awk '{print $NF}' | while read line; do echo "$line" aws s3api put-object-acl --acl private --bucket <bucket> --key "$line" done
aws s3 ls --recursive s3://<bucket-name> | cut -d' ' -f5- | awk '{print $NF}' | while read line; do
echo "$line"
aws s3api put-object-acl --acl private --bucket <bucket> --key "$line"
done
aws s3 ls——递归s3://|cut-d'-f5-|awk'{print$NF}'|同时读取行;做
回音“$line”
aws s3api放置对象acl--acl专用--bucket--key“$line”
完成
但这将更改bucket中所有文件夹的权限有三种方法可以授予对Amazon S3中对象的公共访问权限:
- 单个对象上的访问控制列表(ACL)用于提供对特定对象的一次性访问
- S3存储桶上的存储桶策略-用于提供对整个存储桶或部分存储桶的访问
- IAM用户或IAM角色的策略-用于向特定用户提供访问权限
例如,请参阅:@Jhon,因此无法更改单个文件夹中对象的ACL??。有一件事我发现我需要从web手动更改每个对象的ACL。最好不要使用ACL公开任何内容。相反,使用Bucket策略来控制对路径(文件夹)的访问。更改文件夹上的ACL不会产生任何影响,因为文件夹实际上并不存在。是的,我已从bucket策略中删除了
getObjet
,但问题是某些对象是使用默认公共读取上载的。