鉴于公共读Bucket允许任何人(包括匿名访问者)对该Bucket中的文件进行读操作,公共读写Bucket允许任何人(包括匿名访问者)对该Bucket内文件进行读写操作。如果Bucket设置了公共读或者公共读写权限,会引发数据泄露以及增加数据安全风险。为保护您的数据安全,建议通过阻止公共访问或者配置RAM Policy的方式阻止用户创建公共读或公共读写权限的Bucket。
使用场景
限制类型 | 使用场景 |
| |
|
阻止阿里云账号以及关联的所有RAM用户创建公共读或者公共读写的Bucket
您可以通过为OSS全局开启阻止公共访问的方式,阻止当前阿里云账号以及关联的所有RAM用户创建公共读以及公共读写的Bucket。具体步骤如下:
登录OSS管理控制台。
在左侧导航栏,选择
。在阻止公共访问页面,开启阻止公共访问,然后按照页面指引完成开启操作。
为OSS全局开启阻止公共访问后,不允许创建具有公共访问权限的新Bucket,且已有Bucket配置的公共访问权限也会被忽略。即无论是新创建还是已有的Bucket,Bucket内的数据均不允许公共访问。
阻止指定的RAM用户创建公共读或者公共读写的Bucket
您可以通过阿里云账号为指定的RAM用户配置RAM Policy的方式,阻止指定的RAM用户创建公共读以及公共读写的Bucket。具体步骤如下:
通过脚本编辑模式创建以下RAM Policy。具体步骤,请参见通过脚本编辑模式创建自定义权限策略。
{ "Version": "1", "Statement": [ { "Effect": "Deny", "Action": [ "oss:PutBucket" ], "Resource": [ "acs:oss:*:*:*" ], "Condition": { "StringLike": { "oss:x-oss-acl": [ "public-read", "public-read-write" ] } } }, { "Effect": "Allow", "Action": [ "oss:PutBucket" ], "Resource": [ "acs:oss:*:*:*" ] } ] }
为RAM用户授予以上创建的RAM Policy。具体步骤,请参见为RAM用户授权。
相关文档
如需了解Bucket的读写权限类型,请参见Bucket ACL。
如需了解RAM Policy的语法结构和权限管控,请参见RAM Policy。
如需了解设置阻止公共访问后的效果,请参见阻止公共访问。