配置IAM权限策略

更新时间:2025-08-18 15:58:52

本章将通过实例来介绍如何配置策略,以便您更好的理解策略的实际应用场景。

策略类型

1. 系统策略

策略名称 权限范围 功能说明
CDNWCloudWOSReadOnlyAccess 所有WOS资源 (对象存储) 仅读权限:对WOS(对象存储)的所有资源具有读取访问权
CDNWCloudWOSResourceCreatorAccess 用户创建的WOS资源 完全管理权限:仅对自己创建的存储空间及内容具有完全操作权限
CDNWCloudWOSFullAccess 所有WOS资源 (对象存储) 超级管理员权限:对所有存储空间及文件有完全控制权

注意:当您向子账号授予多个系统策略时,系统将使用更小/最小的策略(最小权限原则)。若需完全控制(FullAccess)权限,应单独授予CDNWCloudWOSFullAccess

2. 自定义策略
自定义策略是一种由用户自己定义的权限控制策略,用于在身份和访问管理系统(IAM)中精细化管理资源的访问权限。与系统预定义的策略不同,自定义策略允许用户根据特定的业务需求设定权限规则。

在控制台配置权限策略

配置系统策略

  1. 登录到 CDNetworks控制台 并点击自己的账户头像找到访问控制
  2. 依次点击权限管理 > 授权 > 添加授权,在选择策略板块搜索“WOS”后选择您想要配置的系统策略,并根据您的需求完成其他配置。

配置自定义策略

使用可视化配置创建新策略

  1. 登录到 CDNetworks控制台 并点击自己的账户头像找到访问控制
  2. 依次点击权限管理 > 权限策略管理 > 创建权限策略,在创建策略板块选择可视化配置
  3. 非CDN产品服务 板块点击 对象存储(wos) 后选择 下一步
  4. 根据您的需求完成其他配置后选择下一步
  5. 在完成策略板块输入策略名称(必填)和描述之后选择下一步完成策略创建

使用脚本创建新策略

  1. 登录到 CDNetworks控制台 并点击自己的账户头像找到访问控制
  2. 依次点击权限管理 > 权限策略管理 > 创建权限策略,在创建策略板块选择脚本配置
  3. 根据您的需求完成脚本配置后选择下一步
  4. 在完成策略板块输入策略名称(必填)和描述之后选择下一步完成策略创建

进行自定义策略配置
创建新的自定义策略后,您可以将自定义策略授权给指定用户

  1. 登录到 CDNetworks控制台 并点击自己的账户头像找到访问控制
  2. 依次点击权限管理 > 授权 > 添加授权,在选择策略板块点击您创建好的自定义策略,并根据您的需求完成其他配置。

脚本策略示例

示例1:访问空间列表

创建的授权策略示例如下:

{
    "version": "1",
    "statement": [{
        "effect": "allow",
        "action": ["wos:GetService"],
        "resource": ["wsc:wos:*:*:*"]
    }]
}

注意:要使用控制台的子账号,您需要具备获取空间列表的权限,否则可能无法正常使用控制台上的其他操作。

示例2:完全管理某个存储空间的权限

假设存储桶名称为"testbucket"。那么创建的授权策略如下:

{
    "version": "1",
    "statement": [
        {
            "effect": "allow",
            "action": ["wos:*"],
            "resource": [
                "wsc:wos:*:*:testbucket",
                "wsc:wos:*:*:testbucket/*"
            ]
        }
    ]
}

示例3:操作存储空间资源的权限

假设存储空间名称为"testbucket",创建的授权策略如下:

{
    "version": "1",
    "statement": [
        {
            "effect": "allow",
            "action": ["wos:GetBucket"],
            "resource": ["wsc:wos:*:*:testbucket"]
        },
        {
            "effect": "allow",
            "action": [
                "wos:PutObject",
                "wos:GetObject",
                "wos:DeleteObject",
                "wos:AbortMultipartUpload",
                "wos:ListParts"
            ],
            "resource": [
                "wsc:wos:*:*:testbucket/*"
            ]
        }
    ]
}

示例4:操作WOS 目录级权限

假设存储桶名称为"testbucket",该存储桶下有一些目录,分别是photo、video和music;每个目录都有分类目录。目录树结构如下:

testbucket (空间)
├── photo
│   ├── 2017
│   └── 2018
├── video
│   ├── 2016
│   ├── 2017
│   └── 2018 // 给此目录授予只读权限
└── music
    ├── 2017
    └── 2018

假设我们需要授权一个子账号对testbucket/video/2018/目录具有只读访问权限。下面介绍两种场景。

场景1: 子账号知道文件的路径,仅需要读取文件内容的权限,而不需要列出文件的权限。
此场景的特点是子账号知道文件的完整路径,可以使用完整的文件路径直接读取文件内容。通常,我们会将这种权限授予软件系统,系统中的文件路径遵循某种规则(例如,文件名是员工ID)。

{
    "version": "1",
    "statement": [
        {
            "effect": "allow",
            "action": [
                "wos:GetObject"
            ],
            "resource": [
                "wsc:wos:*:*:testbucket/video/2018/*"
            ]
        }
    ]
}

场景2:子账号使用对象存储控制台访问目录testbucket/video/2018/,需要创建以下权限:

  • 列出所有存储空间的权限
  • 查看testbucket下所有资源的权限
  • 操作testbucket/video/2018下资源的权限
{
    "version": "1",
    "statement": [
        {
            "effect": "allow",
            "action": [
                "wos:GetService"
            ],
            "resource": [
                "wsc:wos:*:*:*"
            ]
        },
        {
            "effect": "allow",
            "action": [
                "wos:GetBucket"
            ],
            "resource": [
                "wsc:wos:*:*:testbucket"
            ]
        },
        {
            "effect": "allow",
            "action": [
                "wos:PutObject",
                "wos:DeleteObject",
                "wos:PutFolder",
                "wos:PutMediaOperation"
            ],
            "resource": [
                "wsc:wos:*:*:testbucket/video/2018/*"
            ]
        }
    ]
}

示例5:访问查看统计分析

创建的授权策略示例如下:

{
    "version": "1",
    "statement": [{
        "action": ["wos:GetBucketAnalysis"],
        "effect": "allow",
        "resource": ["wsc:wos:*:*:*"]
    }]
}
本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!