资源描述方式
最近更新时间: 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 方式描述。
- uin 方式,即根账号的 QQ 号,表示为
resource 描述各产品的具体资源详情。
- 有几种描述方式,该字段是必填项。
- 表示某个资源子类下的资源 ID 。如 VPC 产品的
instance/ins-abcdefg
。<resource_type>/<resource_id>
- 表示某个资源子类下的带路径的资源 ID 。如 COS 产品的
prefix//10001234/bucket1/object2
。该方式下,支持目录级的前缀匹配。如prefix//10001234/bucket1/*
,表示 bucket1 下的所有 Object 。<resource_type>/<resource_path>
- 表示某个资源子类下的带路径的资源 ID 。如 COS 产品的
- 表示某个资源子类下的所有资源。如
instance/*
。<resource_type>/*
- 表示某产品下的所有资源。 ```
- 表示某个资源子类下的资源 ID 。如 VPC 产品的
*
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等业务支持跨账号授权资源的访问权限。被授权账号可以通过权限传递方式将资源授权给其子账号。