桶策略 对象操作 Action 描述 :: DeleteObject 赋予删除对象的权限 DeleteObjectVersion 赋予删除对象指定版本的权限 GetObject 赋予获取对象的权限 GetObjectAcl 赋予查询对象ACL的权限 GetObjectVersion 赋予获取指定版本对象的权限 GetObjectVersionAcl 赋予获取指定版本对象的访问控制列表的权限 PutObject 赋予上传对象的权限 PutObjectAcl 赋予设置对象ACL的权限 PutObjectVersionAcl 赋予设置指定版本对象ACL的权限 桶策略参数说明 桶策略使用JSON格式的数据管理指定用户对存储资源可执行的操作,格式定义如下为: { "Statement" : [{ statement1 }, { statement2 }, ...... ] } 以下是桶策略具体示例,表示授权给用户testpolicy对桶bucket1的全部权限: { "Version":"20121017", "Statement":[ { "Effect":"Allow", "Action":[" "], "Principal":{ "AWS":["arn:aws:iam:::user/testpolicy"] }, "Resource":"arn:aws:s3:::bucket1/ " } ] } Policy由多条statement组成,也可以是一条。每条statement的结构包括下表内容: 参数 是否必填 参数类型 说明 示例 下级对象 :::::: Version 是 String 版本,描述访问控制策略的版本信息,当前版本只能是"20121017"。 20121017 Statement 是 Array 语句,描述一项或多项赋权的详细信息。 Effect、Action、Principal、Resource、Condition Effect 是 String 效力,描述语句中权限产生的结果是允许还是禁止,只能是"allow"或"deny"两种情况。效力属于必填项。 Allow Action 是 String 操作,描述语句中赋予的权限,必填项。 "s3:GetObject" Principal 否 Container 委托人,描述策略赋权的实体,例如用户、用户组等。 AWS AWS 否 Array 媒体存储用户。 "arn:aws:iam:::user/testpolicy","arn:aws:iam:::user/testpolicy2" Resource 是 String 资源,描述策略授权的具体资源。资源采用六段式描述,段与段之间使用冒号分隔,目前天翼对象存储s3接口的资源描述方式前三段为固定格式,最后一段位描述存储空间和对象资源,如 arn:aws:s3:::{BucketName}/{ObjectName}。 在Action中有“桶操作”表中的操作,则Resource中只填写桶名。 在Action中有“对象操作”表中的操作,则Resource需要填写“bucketname/objectname”。 "arn:aws:s3:::bucket1/ " Condition 否 String 条件,描述策略生效的约束条件,非必填项,目前支持以IP为条件配置。 "IpAddress":{“aws:SourceIp":"192.168.5.101/24"}