给业务部门授予独立的资源权限
通常一个企业可能会分设多个业务部门,各业务部门之间的数据需要独立管理。在此场景下,可以考虑给各业务部门分配各自所需的IAM用户,通过桶策略给每个业务部门下的IAM用户授予独立的资源权限。
场景假设
假设某企业下有A和B两个不同的业务部门,希望各业务部门的数据存放在自己的桶中,且各业务部门的用户分别拥有本部门桶的上传权限。
在本场景下两个部门的管理员、用户与桶之间的逻辑关系如图1所示。
本例中仅为部门用户配置上传权限,您可根据实际业务需求配置其他的权限。关于桶策略的权限说明,请参见桶策略。
前提条件
已拥有企业账号。
详细配置步骤
- 创建部门管理员和用户。
部门管理员和用户都属于IAM用户,需要使用企业账号创建,部门用户也可以使用部门管理员创建。本例中需要分别为A、B部门创建一个管理员,并根据各部门的实际用户数创建用户。
由于部门管理员需要执行创建用户、创建桶、配置桶策略等操作,因此需要将部门管理员加入“admin”用户组。而部门用户不需要执行创建用户、创建桶、配置桶策略等操作,需要能够列举账号下的所有桶,因此一般将部门用户加入具有“OBS Buckets Viewer”权限的用户组。有关权限的详细介绍请参见用户权限。
- 创建桶。
部门A、B的管理员用户分别创建属于自己部门的桶。
- 分别使用部门A、B的管理员用户登录控制台首页。
- 在控制台首页选择“服务列表 > 存储 > 对象存储服务 OBS”,进入OBS控制台。
- 在OBS控制台左侧导航栏选择“桶列表”,单击页面右上角的“创建桶”按钮。
- 根据页面提示,选择“区域”、“桶名称”、“存储类别”及“桶策略”等,详情请参见创建桶。
为确保数据安全,“桶策略”建议选择“私有”,其他参数请根据页面提示进行配置。
- 单击“立即创建”,完成桶创建。
- 配置允许上传权限。
部门A、B的管理员用户分别在自己部门的桶中为本部门用户配置上传权限。
- 分别使用部门A、B的管理员用户登录控制台首页。
- 在控制台首页选择“服务列表 > 存储 > 对象存储服务”,进入OBS控制台。
- 在OBS控制台左侧导航栏选择“桶列表”,在桶列表单击本部门的桶名称,进入桶对象页面。
- 在左侧导航栏单击“访问权限控制 > 桶策略”。
- 单击“创建”。
- 根据使用习惯,策略配置方式以可视化视图为例。单击“可视化视图”。
- 配置如下参数,授予部门内用户访问桶(列举对象)和上传对象的权限。
表1 授予访问桶和上传对象的权限参数配置 参数
说明
策略名称
输入自定义策略的名称
策略内容
效力
允许
被授权用户
- 被授权用户:当前账号
- 选择子用户:选择部门中允许上传数据的用户
授权资源
- 方式一:
- 资源范围:整个桶(包括桶内对象)
- 方式二:
- 资源范围:当前桶、指定对象
- 指定对象 - 资源路径:*(*表示桶内所有对象)
说明:
如果只允许上传到桶中的某个或多个文件夹下,桶内对象选择“指定对象”后,资源路径填写可上传的文件夹路径+通配符(例如:example-folder/*),支持配置多个资源路径。
授权操作
- 动作范围:自定义配置
- 选择动作:
- ListBucket(列举桶内对象,获取桶元数据)
- PutObject(可用作于PUT上传,POST上传,上传段,初始化上传段任务,合并段)
- 单击右下角的“创建”,完成桶策略创建。
- 权限配置信息可以在桶策略列表查看。
图3 查看桶策略列表权限配置信息
- 验证权限。
权限授予成功后,部门A、B的用户可以通过OBS控制台、OBS Browser+以及API&SDK等多种方式验证上传权限。
验证的关键点如下(以A部门用户进行验证为例):
- A部门用户在A部门的桶中上传对象成功。
如果进一步规定了用户仅拥有某个文件夹的上传权限,需同时确保:
- 在策略指定的文件夹中上传对象成功。
- 在其他文件夹或桶的根目录上传对象失败。
- A部门用户在B部门的桶中上传对象失败。
- A部门用户在A部门的桶中下载、删除对象失败。
- A部门用户在B部门的桶中下载、删除对象失败。
同时满足以上几点要求,说明权限配置成功。
- A部门用户在A部门的桶中上传对象成功。
部门管理员权限控制说明
按照上述方法配置后,所有部门管理员会拥有其他部门桶资源的全部权限。如果要拒绝其他部门管理员访问本部门的桶资源,请按照下述步骤配置桶策略。
- 使用本部门管理员用户登录控制台首页。
- 在控制台首页选择“服务列表 > 存储 > 对象存储服务”,进入OBS控制台。
- 在OBS控制台左侧导航栏选择“桶列表”,在桶列表单击本部门的桶名称,进入桶对象页面。
- 在左侧导航栏单击“访问权限控制 > 桶策略”。
- 单击“创建”。
- 根据使用习惯,策略配置方式以可视化视图为例。单击“可视化视图”。
- 配置如下参数,拒绝其他部门管理员访问本部门的桶。
表2 拒绝其他部门管理员访问本部门的桶 参数
说明
策略名称
输入自定义策略的名称
策略内容
效力
拒绝
被授权用户
- 被授权用户:当前账号
- 选择子用户:选择其他部门管理员
授权资源
- 方式一:
- 资源范围:整个桶(包括桶内对象)
- 方式二:
- 资源范围:当前桶、指定对象
- 指定对象 - 资源路径:*(*表示桶内所有对象)
授权操作
- 动作范围:自定义配置
- 选择动作:*(表示所有动作)
- 单击右下角的“创建”,完成桶策略创建。
- 权限配置信息可以在桶策略列表查看。
图4 查看桶策略列表权限配置信息