全部产品
Search
文档中心

表格存储:RAM Policy

更新时间:Jun 18, 2026

RAM Policy是附加在RAM身份(用户、用户组、角色)上的权限策略。管理RAM用户或角色对表格存储资源的访问权限时,可通过RAM Policy定义该身份可以执行的操作和可以访问的资源范围。

工作原理

RAM Policy采用基于身份的授权模式,策略附加在RAM用户、用户组或RAM角色上。策略定义该身份在满足指定条件(Condition)时,可对哪些资源(Resource)执行哪些操作(Action)。

RAM身份发起访问请求时,系统综合评估所有相关策略,按以下顺序判定权限:

  1. 显式拒绝优先:任何策略中存在匹配请求的Deny规则,请求立即被拒绝

  2. 寻找显式允许:不存在Deny规则时,若存在匹配的Allow规则,请求被允许

  3. 默认拒绝:既无Deny也无Allow,请求默认被拒绝

表格存储支持以下两种RAM Policy类型:

  • 系统策略:由阿里云预置,覆盖常用授权场景,仅可使用不可修改。

  • 自定义策略:由用户自行创建和维护,可精细控制资源范围、操作类型和生效条件。

使用系统权限策略授权

系统权限策略由阿里云创建,可在RAM控制台直接为用户身份授权。以下以RAM用户为例。

  1. 前往RAM用户列表,单击目标用户操作列的新增授权

  2. 表格存储支持以下三种系统策略,在搜索框中输入目标策略名称并勾选:

  3. 单击确认新增授权,完成权限设置。

使用自定义权限策略授权

自定义策略由用户自主创建和维护,授权分两步:先创建权限策略,再将策略关联到目标用户身份。

步骤一:创建自定义权限策略

  1. 前往权限策略列表,单击创建权限策略

  2. 选择脚本编辑,在编辑框内输入JSON格式的权限策略。

    示例权限策略:允许对名为example-instance的实例及该实例下所有数据表的全部操作。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "ots:*",
          "Resource": [
            "acs:ots:*:*:instance/example-instance",
            "acs:ots:*:*:instance/example-instance/table/*"
          ]
        }
      ]
    }

    完整的权限策略包含Version(版本号)和Statement(授权语句)。

    • Version:权限策略版本,固定为1,不允许修改。

    • Statement:策略主体,包含一条或多条授权或拒绝规则。每条规则包含Effect(授权效力)、Action(授权操作)、Resource(授权资源)和Condition(授权条件)。

      策略元素

      说明

      Effect

      策略的效力,可选值为Allow(允许)或Deny(拒绝)。

      Action

      对资源执行的具体操作,需添加ots:前缀,支持使用通配符*

      Resource

      策略作用的资源范围,格式为acs:ots:[region]:[user_id]:instance/[instance_name]/table/[table_name]

      Condition

      策略生效的条件。

      配置多个条件时,所有条件必须同时满足(AND关系),策略才会生效。

    完整的策略元素及语法说明,请参见授权语法与元素

  3. 单击确定,输入策略名称,然后单击确定,完成自定义策略创建。

步骤二:为用户身份进行授权

将上一步创建的策略关联到目标用户身份。以下以RAM用户为例。

  1. 前往RAM用户列表,单击目标用户操作列的新增授权

  2. 单击确认新增授权,完成权限设置。

常见授权场景

以下为RAM Policy在表格存储中的典型授权场景,每个场景提供完整的JSON策略示例。

场景一:组合IP、时间和传输协议条件授权读写权限

允许IP地址在10.10.XX.XX/24网段的用户对online-01online-02实例及其下所有数据表执行读写操作。访问要求:仅限2028-01-01 00:00:00之前,且必须通过HTTPS访问。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ots:*",
      "Resource": [
        "acs:ots:*:*:instance/online-01",
        "acs:ots:*:*:instance/online-01/table*",
        "acs:ots:*:*:instance/online-02",
        "acs:ots:*:*:instance/online-02/table*"
      ],
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": [
            "10.10.XX.XX/24"
          ]
        },
        "DateLessThan": {
          "acs:CurrentTime": "2028-01-01T00:00:00+08:00"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    }
  ]
}

场景二:拒绝指定IP对特定实例的写入请求

拒绝IP地址为10.10.XX.XX的用户对华北2(北京)地域中名称以onlineproduct开头的实例下所有数据表执行写操作。该规则不限制对实例本身的操作。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": [
        "ots:Create*",
        "ots:Insert*",
        "ots:Put*",
        "ots:Update*",
        "ots:Delete*",
        "ots:BatchWrite*"
      ],
      "Resource": [
        "acs:ots:cn-beijing:*:instance/online*/table*",
        "acs:ots:cn-beijing:*:instance/product*/table*"
      ],
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": [
            "10.10.XX.XX"
          ]
        }
      }
    }
  ]
}

场景三:限制RAM用户只能管理指定实例

仅允许RAM用户管理指定的实例。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ots:ListInstance",
        "ots:ListTagResources"
      ],
      "Resource": "acs:ots:*:*:instance/*"
    },
    {
      "Effect": "Allow",
      "Action": "ots:*",
      "Resource": [
        "acs:ots:*:*:instance/yourInstance",
        "acs:ots:*:*:instance/yourInstance/table*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": "cms:Query*",
      "Resource": "*"
    }
  ]
}

策略中各Statement的作用说明如下。

权限策略

说明

{
  "Effect": "Allow",
  "Action": [
    "ots:ListInstance",
    "ots:ListTagResources"
  ],
  "Resource": "acs:ots:*:*:instance/*"
}

表格存储控制台的概览页面需加载实例列表和标签列表,因此该Statement授予RAM用户对应的查询权限。

说明

RAM用户通过控制台管理实例时必须授予此权限。

{
  "Effect": "Allow",
  "Action": "ots:*",
  "Resource": [
    "acs:ots:*:*:instance/yourInstance",
    "acs:ots:*:*:instance/yourInstance/table*"
  ]
}

授予RAM用户拥有yourInstance实例及实例下数据表的所有权限。

{
  "Effect": "Allow",
  "Action": "cms:Query*",
  "Resource": "*"
}

授予RAM用户云监控的权限,允许查看实例和表的监控数据。