put-bucket-policy

put-bucket-policy命令用于在指定的向量 Bucket上配置访问控制策略(Policy),从而授权当前阿里云账号或者其他阿里云账号下单个或多个RAM用户、RAM角色等访问Bucket内的资源。

注意事项

阿里云账号默认拥有为指定的存储空间设置授权策略的权限。如果您需要通过RAM用户或者STS的方式进行设置,您必须拥有oss:PutBucketPolicy权限。具体操作,请参见RAM用户授予自定义的权限策略

命令格式

ossutil api put-bucket-policy --bucket value --body value [flags]

参数

类型

说明

--bucket

string

Bucket的名称。

--body

string

请求体,JSON格式,详细定义了访问权限。

说明

put-bucket-policy命令对应API接口PutBucketPolicy

--body

--body 配置选项支持JSON语法

{
  "Version": "1",
  "Statement": [
    {
      "Action": ["oss:PutObject", "oss:GetObject"],
      "Effect": "Deny",
      "Principal": ["1234567890"],
      "Resource": ["acs:ossvector:cn-hangzhou:1234567890:*"]
    }
  ]
}
说明

使用示例

以下示例展示了如何为向量存储空间设置授权策略,允许指定用户进行向量相关操作。使用JSON配置文件,vector-policy.json内容如下:

{
   "Version":"1",
   "Statement":[
       {
         "Action":[
           "oss:PutVectors",
           "oss:GetVectors"
        ],
        "Effect":"Deny",
        "Principal":["1234567890"],
        "Resource":["acs:ossvector:cn-hangzhou:1234567890:*"]
       }
    ]
}
ossutil vectors-api put-bucket-policy --bucket vector-example --body file://vector-policy.json

使用JSON配置参数设置向量Bucket策略:

ossutil vectors-api put-bucket-policy --bucket vector-example --body "{\"Version\":\"1\",\"Statement\":[{\"Action\":[\"oss:PutVectors\",\"oss:GetVectors\",\"oss:QueryVectors\"],\"Effect\":\"Allow\",\"Principal\":[\"1234567890\"],\"Resource\":[\"acs:ossvector:cn-hangzhou:1234567890:bucket/vector-example/*\"]}]}"