QingStor 对象存储支持存储空间策略

存储空间策略是 QingStor 存储空间(bucket)的子资源(subresource),允许用户更细粒度的控制存储空间的访问。 其语义主要由用户、 资源、动作、及条件运算符组合定义。例如仅允许指定用户以指定站点为 Referer 以下载存储空间中的某单个文件,或者防止外链等。

qingstor_policy_0

策略属性

  • resource
    策略中需要制定控制的资源,可以指定为某些 object, 或者 bucket
  • user
    策略所应用到的用户
  • effect
    当用户请求特定操作时的效果。可以是允许或者拒绝
  • condition
    存储空间策略生效的条件。支持匹配 `Referer` 元素。可用来做防盗链
  • action
    设置是否允许(或拒绝)资源的操作

配置示例

  1. 在 bucket 页面点击设置->存储空间策略->添加规则
  2. 配置添加规则qingstor_policy_1
  3. 点击保存,生效设置
  4. 配置生成的 bucket policy
    {
        "statement": [
    	{
    	     "id": "hotlink-whitelist",
    	     "user": "*",
    	     "action": "get_object",
    	     "effect": "allow",
    	     "resource": ["foo-bucket/*"],
    	     "condition": {
    		 "string_like": {"Referer": "*.example.com"},
    		 "string_not_like": {"Referer": "*.service.example.com"}
    	      },
    	}
        ]
    }

以上配置将允许从 `*.example.com` 但除了 `*.service.example.com` 以外的链接到 QingStor 用以访问 bucket:`foo-bucket` 下所有 object 的请求被允许。

更多详细介绍请参考相关文档: QingStor Bucket Policy