原图保护功能可以防止您OSS内允许匿名访问的图片文件被盗用。开启原图保护后,匿名访问者只能使用携带样式参数的请求或通过签名URL访问原图。

背景信息

仅可以通过以下方式访问开启原图保护的图片:
  • 使用携带样式参数的文件URL访问,格式为:https://BucketName.Endpoint/ObjectName?x-oss-process=style/StyleName
  • 使用携带签名的文件URL访问,格式为:https://BucketName.Endpoint/ObjectName?Signature

操作步骤

  1. 登录OSS管理控制台
  2. 在左侧导航栏,单击Bucket列表,之后单击目标Bucket名称。
  3. 在左侧导航栏,选择数据处理 > 图片处理,然后单击访问设置
  4. 访问设置面板打开原图保护开关,并设置以下参数:
    参数 说明
    原图保护规则 设置被保护文件的前缀和后缀,设置时注意以下事项:
    • 前缀和后缀可单独配置,也可以同时配置。同时配置时,文件名称需同时匹配前后缀才会生效。
    • 存在多条规则时,文件名称匹配任意一条规则即可生效。最多可配置10条规则。
    • 原图保护规则原图保护后缀同时配置时,文件名匹配两者中的任一配置即可生效。
    • 若选中忽略大小写,原图保护规则将忽略规则中的大小写。
    说明 原图保护规则目前已在华东2(上海)地域公测,请联系 技术支持申请试用。
    原图保护后缀 原图保护后缀下拉列表选择文件后缀,Bucket中所有匹配指定后缀的文件都会被保护。
  5. 单击确定

常见问题

  • 问题一:OSS开启了原图保护,直接访问图片文件时会正常返回403,但是通过CDN来进行请求时原图保护无效,返回200。

    这种情况有可能是CDN回源到了私有Bucket,造成原图保护失效。原图保护功能仅针对匿名访问文件有效,对于带签名的访问是无效的。

  • 问题二:开启原图保护后,为什么通过签名后的URL仍可以访问原图?

    原图保护仅针对允许匿名访问的文件,使用签名URL访问图片属于非匿名访问,所以开启原图保护后,使用签名后的URL仍然可以访问原图。