搜索本产品文档关键词
配置BOS多用户访问控制
所有文档
menu

BOS 对象存储

配置BOS多用户访问控制

概述

多用户访问控制,主要用于帮助用户管理云账户下资源的访问权限,适用于企业内的不同角色,可以对不同的工作人员赋予使用产品的不同权限,当您的企业存在多用户协同操作资源时,推荐您使用多用户访问控制。

使用场景

  • 中大型企业客户:对公司内多个员工授权管理;
  • 偏技术型 vendor 或 SaaS 的平台商:对代理客户进行资源和权限管理;
  • 中小开发者或小企业:添加项目成员或协作者,进行资源管理。

创建子用户

  1. 主账号用户登录后在控制台选择“多用户访问控制”进入用户管理页面。

image.png

  1. 在左侧导航栏点击“用户管理”,在“用户管理 > 子用户”列表页,点击“创建子用户”。

image.png

  1. 在弹出的“创建子用户”对话框中,完成填写“用户名”和确认,返回“子用户管理列表”区可以查看到刚刚创建的子用户。(如果子账号需要上传文件,建议授权“编程访问”,否则上传文件会报错“鉴权失败”)

f0e.png

配置策略


策略类型

BOS 支持系统策略和用户自定义策略两种。

  • 系统策略:百度智能云系统为管理资源而预定义的权限集,这类策略可直接为子用户授权,用户只能使用而不能修改。
  • 自定义策略:由用户自己创建,更细化的管理资源的权限集,可以针对单个实例配置权限,更加灵活的满足账户对不同用户的差异化权限管理。

系统策略

系统策略包含 BosFullAccess 和 BosListAndReadAccess 两种,权限范围详细如下:

策略名称
权限说明
权限范围
BosFullAccess BOS 管理权限 管理权限包括 READ、WRITE、LIST对应的API,还包含PutBucketACL, GetBucketACL, PutBucketCors, GetBucketCors, DeleteBucketCors, PutBucketLogging, GetBucketLogging, DeleteBucketLogging。
BosListAndReadAccess BOS 只读权限 权限包括 ListObjects, ListMultipartUploads, GetBucketLocation, HeadBucket, GetObject, GetObjectMeta, ListParts 接口。

自定义策略

主用户可以通过点击“策略管理>创建策略”添加自定义策略来进行实例级权限控制,自定义策略的添加有"按策略生成器创建"、"按标签创建"和"按策略语法创建"三种方式,用户可以根据具体的权限设置修改策略内容。具体配置方法可以参见创建自定义策略

策略创建流程

1. 点击创建策略

页面左侧选择"策略管理",在新的页面中点击"创建策略"。

image.png

2. 选择创建策略的方式

您可以选择"按策略生成器创建"或者"按标签创建"。若您需要对某个标签下的实例创建策略,请选择按标签创建。若您不需要为标签创建策略,则选择按策略生成方式创建。

3. 填写策略基本信息

在创建策略的页面中,填写需要创建的策略的名称,并在说明中填写该策略的备注信息,如该策略应用的实例,希望赋予的子用户或者策略的使用场景,以免将该策略和其他策略混淆。

image.png

4. 填写策略权限配置

填写完策略的基本信息后,您需要填写该策略中包含的使用权限。

  • 首先,您需要填写该策略生效的产品服务。若您希望将该策略生效于 BOS 服务,则在服务中选择"对象存储 BOS";
  • 选择策略的配置方式。其中,策略生成器方式允许您将系统中已生成的权限配置到该策略中;而策略文件需要您编辑 ACL 权限策略,详细的语法可参考文档策略语法。BOS 策略文件的详细解释请参见策略文件说明;您也可以使用BOS ACL编辑工具获取策略模板及自定义策略内容。
  • 若您选择策略生成器方式,您需要进一步该权限对应的效力为允许还是拒绝。若您选择允许,则该策略中选择的权限将允许被授权的用户操作;若您选择拒绝,则该策略中选择的权限将禁止被授权用户操作;
  • 选择权限,您需要选择该策略中包含的权限为只读权限还是管理权限。关于两种权限的区别和说明,请查看本页面上方"系统策略"中的说明;
  • 您还可以选择该策略针对的资源。在 BOS 服务中,您可以指定该策略能够生效的具体 Bucket。若您不选择,那么将对全部 Bucket 生效;
  • 最后,您需要选择该策略在生效时间上的限制条件。您可以指定该策略在某一时刻后或者某一时刻前生效。

image.png

用户授权

当您创建完子用户并生成策略后,即可以为该子用户授予该策略。授予后,子用户在访问主用户资源时,将受到授予策略中已配置权限的限制。

在“用户管理->子用户”列表页中希望授权的子用户后“操作”栏中选择“添加权限”,为用户授予已生成的策略。

image.png

在授权页面中,选择希望授予该子用户的权限对子用户进行访问权限授权。左侧的策略列表中包括全部系统策略和您已经创建的自定义策略。您可以在搜索框中搜索相关的策略名称后,勾选该策略后点击确认完成授权。

image.png

说明:如果在不修改已有策略规则的情况下修改某子用户的权限,只能通过删除已有的策略并添加新的策略来实现,不能取消勾选已经添加过的策略权限。 如果创建子用户时没有勾选“编程访问”,子账号上传文件需要添加 IAMManageAccessKeyPolicy 模板,并创建一个AKSK才可以正常上传文件。

需要说明的是,主子账户中子用户授予权限的优先级低于 BOS 自有 Bucket ACL 鉴权优先级。Bucket ACL 鉴权是根据主用户 UserId 来进行鉴权的。若系统检测到 Bucket ACL 规则中“effect“字段为”Deny”,且"Userid"字段匹配到通配符“*“或子用户所属主账户 UserId 时,那么 BOS 将优先遵循主账号中 Bucket ACL 的权限配置,此时主账号下子账号授予的权限将失效。

Bucket 创建时,Bucket ACL 会包含一条默认规则,表示 Bucket 创建者拥有 FULL_CONTROL 权限。Bucket ACL 设置参考Bucket权限控制

子用户登录

添加完子用户权限后,子用户可以使用以下两种方式使用 BOS 服务。

  • 点击子用户名可以查看 IAM 用户详细信息,包括 AKSK 及子用户的权限等。子用户可以使用 AKSK 通过 BOS 的周边工具、SDK、API 来使用BOS服务。
  • 将控制台上方的子用户登录链接发送给子用户,子用户可以通过该链接登录控制台。登录后,该子用户将根据被授权的策略对主账户资源进行操作和查看。

image.png

相关文档

其他操作请参考多用户访问控制

上一篇
事件通知及数据处理
下一篇
图片审核服务