资源描述方式

最近更新时间: 2024-10-17 17:10:00

资源 resource 元素描述一个或多个操作对象,如 CVM 资源、COS存储桶等。本文档主要介绍 CAM 的资源描述信息。

六段式

所有资源均可采用下述的六段式描述方式。每种产品都拥有其各自的资源和对应的资源定义详情。有关如何指定资源的信息,请参阅对应的产品文档。 六段式定义方式如下所示:

qcs:project_id:service_type:region:account:resource

其中:

  • qcs 是 qcloud service 的简称,表示是云平台的云资源。该字段是必填项。

  • project_id 描述项目信息,仅兼容 CAM 早期逻辑。当前策略语法禁止填写该信息。

  • service_type 描述产品简称,如 CVM、CDN等,产品的检测具体细节请参考对应的产品文档。值为*的时候表示所有产品。该字段是必填项。

  • region 描述地域信息。值为空的时候表示所有地域。云平台新版地域统一命名方式请参考 地域和可用区。云平台现有的地域命名方式定义如下:

地域缩写 描述
gz 广州
sh 上海
shjr 上海金融区
bj 北京
cd 成都
  • account 描述资源拥有者的根账号信息。目前支持两种方式描述资源拥有者,uin 和 uid 方式。

    • uin 方式,即根账号的 QQ 号,表示为uin/${uin},如 uin/12345678;
    • uid 方式,即根账号的 APPID,表示为uid/${appid},如 uid/10001234。
    • 值为空的时候表示创建策略的 CAM 用户所属的根账号。目前COS和CAS业务的资源拥有者只能用uid方式描述(如不涉及,无需关注),其他业务的资源拥有者只能用 uin 方式描述。
  • resource 描述各产品的具体资源详情。

    1. 有几种描述方式,该字段是必填项。
      1. 表示某个资源子类下的资源 ID 。如 VPC 产品的 instance/ins-abcdefg
        <resource_type>/<resource_id> 
        1. 表示某个资源子类下的带路径的资源 ID 。如 COS 产品的prefix//10001234/bucket1/object2。该方式下,支持目录级的前缀匹配。如prefix//10001234/bucket1/*,表示 bucket1 下的所有 Object 。
          <resource_type>/<resource_path>
      2. 表示某个资源子类下的所有资源。如 instance/*
        <resource_type>/*
        1. 表示某产品下的所有资源。 ```

    *

    2. 在某些场景下,资源 resource 元素也可以用`*`来描述,含义定义如下,详细信息也请参阅对应的产品文档。
    3.  操作 action 是需要关联资源的操作时,resource 定义为`*`,表示关联所有资源。
    4.  操作 action 是不需要关联资源的操作时,resource 都需要定义为`*`。
    

CAM 的资源定义

CAM 包含了用户、组、策略等资源,CAM 资源的描述方式如下所示:

根账号:

qcs::cam::uin/164256472:uin/164256472

qcs::cam::uin/164256472:root 

子账号:

qcs::cam::uin/164256472:uin/73829520

组:

qcs::cam::uin/164256472:groupid/2340

所有用户:

qcs::cam::anonymous:anonymous

*

策略:

qcs::cam:: uin/12345678:policyid/*

qcs::cam:: uin/12345678:policyid/12423

资源的重要说明

  • 资源的拥有者一定是根账号。如果资源是子账号创建的,不会自动拥有资源的访问权限,需要由资源拥有者授权。
  • COS、CAS等业务支持跨账号授权资源的访问权限。被授权账号可以通过权限传递方式将资源授权给其子账号。