OSS支持使用标签对存储空间(Bucket)中的对象(Object)进行分类,您可以针对同标签的Object设置生命周期规则、访问权限等。

标签规则

Object标签使用一组键值对(Key-Value)标记Object,您可以在上传Object时添加标签,也可以为已有Object添加标签。
  • 单个Object最多可设置10个标签,Key不可重复。
  • 每个Key长度不超过128字符,每个Value长度不超过256字符。
  • Key和Value区分大小写。
  • 标签合法字符集包括大小写字母、数字、空格和以下符号:

    +‑=._:/

    通过HTTP Header的方式设置标签且标签中包含任意字符时,您需要对标签的Key和Value进行URL编码。

注意事项

  • 只有Bucket拥有者以及被授予oss:PutObjectTagging权限的用户拥有读写Object标签的权限。
  • 您可以在简单上传、分片上传、追加上传以及拷贝文件过程中为Object设置标签,也可以对已上传Object设置标签。
  • Object添加标签后,OSS会按照每小时内统计的标签数量收取标签费用。更多信息,请参见对象标签费用
  • 更改标签信息不会更新Object的Last‑Modified时间。
  • 跨区域复制时,源Object标签也会复制到目标Bucket。

使用场景

  • Object标签结合生命周期
    对于周期性生成且无需长期保存的Object,可以在上传时设置指定的标签,之后通过生命周期规则,将拥有该标签的文件定期删除,从而节省存储费用。例如,通过生命周期规则指定前缀为dir1且拥有Key为key1、Value为value1标签的Object在距离最后一次更新时间30天后删除,配置示例如下:
    <LifecycleConfiguration>
     <Rule>
      <ID>rule1</ID>
      <Prefix>dir1</Prefix>
      <Tag><Key>key1</Key><Value>value1</Value></Tag>
      <Status>Enabled</Status>
      <Expiration>
        <Days>30</Days>
      </Expiration>
     </Rule>
    </LifecycleConfiguration>
  • 授权RAM用户访问指定标签的Object

    例如,您可以通过RAM Policy授权RAM用户访问Key为key2、Value为value2的所有Object,RAM Policy配置示例如下。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "oss:GetObject",
          "Resource": "*",
          "Condition": {
            "StringEquals": {
              "oss:ExistingObjectTag/key2": [
                "value2"
              ]
            }
          }
        }
      ]
    }

    您还可以授予该用户其他操作权限(Action),例如向拥有指定标签的Object写入数据、查看Object相关信息等。关于RAM Policy支持的Action信息,请参见RAM Policy概述

使用OSS控制台

  1. 登录OSS管理控制台
  2. 单击Bucket列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择文件管理 > 文件列表
  4. 为Object设置标签。
    1. 选择需要设置标签的Object。
      • Bucket未开启版本控制

        在目标Object右侧操作栏下,选择more > 标签

      • Bucket已开启版本控制

        在指定版本Object右侧操作栏下,选择more > 标签

    2. 标签面板,按标签使用规则说明指定标签的
  5. 单击确定

使用阿里云SDK

以下仅列举常见SDK在简单上传过程中设置Object标签的代码示例。关于其他SDK在简单上传、分片上传、追加上传、拷贝文件过程中设置Object标签的代码示例,请参见SDK简介

import com.aliyun.oss.ClientException;
import com.aliyun.oss.