【摘要】作为公有云的数据底座,大量的应用场景产生的数据都会存储到OBS对象存储服务中,如直播、电商、大数据可视化、机器学习、物联网等。作为公有云的海量存储基础服务, OBS提供了灵活的权限配置功能,解决如共享少部分数据或者数据全部托出等实际应用场景的数据管理诉求。
 
OBS目前有四种权限管理的方式供大家来选择,可以满足您对权限管理的需求。如果您需要设置更复杂的权限策略,控制子用户使用,通过阅读以下内容,四种方式配合使用效果更佳。
 
以下依次讲解四种方式的使用方式和特点:
  1. 统一身份认证服务(IAM)——设置用户组对桶的访问权限,适用于管理多部门人员对OBS资源的访问权限。
  2. 企业项目管理——用户只能列举到”自己”的桶。适用多企业项目,需要配合IAM权限。
  3. 高级桶策略——实时生效,简单粗暴。适用单个桶灵活设置权限,可以指定任何人用。
  4. ACL——指定账户共享,范围小于高级桶策略,但是共享资源更精确。适用于对单个文件有共享读写需求的场景。

统一身份认证服务

介绍:
IAM是一个总开关(相当于一个大超市,提供平台和规则的),各个服务(包括OBS)如果需要提供细粒度服务,就需要和IAM合作(按照IAM细粒度平台的规则),把自己的细粒度控制加入到IAM功能中(相当于超市中入住的品牌)。如果想详细的了解下IAM可参考https://support.huaweicloud.com/usermanual-obs/obs_03_0110.html
OBS系统权限:
应用场景:如下为 OBS常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。https://support.huaweicloud.com/productdesc-obs/obs_03_0045.html
 
系统权限和系统角色已经满足大部分使用OBS的场景,但是仍有高端玩家想通过手术刀般精确的方式控制用户组和OBS桶\资源\操作\请求条件的权限,那么IAM权限配置的奥义,duang!的一声出现在您面前——自定义权限配置。
 
自定义权限配置:
  • 可视化视图创建
  • IAM的OBS细粒度权限配置时,可视化视图分为ReadOnly、ReadWrite、ListOnly、Permissions 四大类操作分类,需要仔细关注Action。
如下图所示。
特别注意!
 
这四大类的规则之间其实是没有继承性的,并且包含的相关Action项也并不完全。例如,客户如果只希望策略为允许“只读”,除了需要勾选 ReadOnly 之外,还需要 ListOnly 中的 obs:bucket:ListAllMyBuckets 和 obs:bucket:ListBucket 操作项。
  • 没有obs:bucket:ListAllMyBuckets将无法列举所有桶——这对于通过Web页面访问OBS会产生致命影响,因为无法进入OBS控制台,但是对于API访问OBS服务没有影响。
  • 没有obs:bucket:ListBucket 将无法列举桶内对象——这对于大数据业务中批量操作对象“列举目录”的操作是必须的。
再例如,如果客户希望策略为允许“读写”,则需要同时勾选 ReadOnly、ReadWrite、ListOnly 中的各目标项,而不是仅仅勾选一个 ReadWrite,如下图所示

JSON视图创建:

例OBS OperateAccess的json模式:
自定义策略示例样例:
此策略表示用户可以对OBS进行任何操作。
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:*:*" ] } ] }
 
其他自定义策略样例详见:
自定义权限书写注意事项:
应用案例:
配置某一个子用户,通过IAM权限设置,只能从源ip:100.125.125.125访问桶:obs-test,并且只有只读权限(包括查询桶ACL,桶策略,桶cors的权限等)。
 
步骤1:xxxxx
步骤2:配置特定资源:
步骤3:配置特定条件,(可以根据例子写的更明确)
建议采用最小权限原则,避免数据泄露,造成不必要的损失。
 
注意事项:

OBS细粒度特性白名单

当前要开通IAM的OBS细粒度权限控制特性,务必记得要申请将目标账号加入在目标Region的OBS细粒度特性白名单:
 
当前IAM细粒度这个超市还处于试用期,OBS这个品牌是一个全局品牌(对应于全局服务概念),但是每个OBS商品是不同地方的生产厂生产的,当前在IAM细粒度超市试用期,OBS商品入驻超市之后,并不是任何一个人都随意买,而是需要在白名单中的人才能买,并且这个白名单当前是按照Region来制作的,四川的客户只能买四川省生成的OBS产品,广东省客户只能买广东省生产的OBS商品,所以需要使用OBS细粒度的客户,必须要申请加入这个白名单(截止2020/2/4)。申请方式如下:
由于缓存的存在,IAM权限设置生效延迟

企业项目管理:

介绍:
可实现企业项目级别资源隔离,不同企业项目的用户只能列举自己的桶。创建企业项目迁入资源添加组配置权限策略
 
应用案例:
配置某一个子用户,通过多企业项目+IAM权限,实现单用户对某一个桶有所有权限:
  • 在IAM控制台创建一个子账号,一个用户组,并把子账号加入到该组;
  • 登录进企业项目管理,创建企业项目;
  • 迁入指定的桶资源;
  • 添加组;
  • 配置权限策略;
  • 配置成功
注意:权限需要在企业项目管理侧配置,在IAM侧配置可能会导致不生效。
 
以上内容即为如何进行OBS权限配置的统一身份认证服务(IAM)和企业项目管理两种方式,再下一期我们将继续为大家带来高级桶策略和ACL应用的具体内容,敬请期待。
 
 

十分钟从入门到精通(上)——OBS权限配置的更多相关文章

  1. Jmeter(十六) - 从入门到精通 - JMeter前置处理器(详解教程)

    1.简介 前置处理器是在发出“取样器请求”之前执行一些操作.如果将前置处理器附加到取样器元件,则它将在该取样器元件运行之前执行.前置处理器最常用于在取样器请求运行前修改其设置,或更新未从响应文本中提取 ...

  2. Jmeter(十八) - 从入门到精通 - JMeter后置处理器 -下篇(详解教程)

    1.简介 后置处理器是在发出“取样器请求”之后执行一些操作.取样器用来模拟用户请求,有时候服务器的响应数据在后续请求中需要用到,我们的势必要对这些响应数据进行处理,后置处理器就是来完成这项工作的.例如 ...

  3. Jmeter(三十九) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 上篇(详解教程)

    ------------------------------------------------------------------- 转载自:北京-宏哥 https://www.cnblogs.co ...

  4. Spring Boot从入门到精通(二)配置GitHub并上传Maven项目

    简单介绍一下GitHub,它是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub. GitHub于2008年4月10日正式上线,除了Git代码仓库托管 ...

  5. 十分钟快速入门 Python,看完即会,不用收藏!

    本文以 Eric Matthes 的<Python编程:从入门到实践>为基础,以有一定其他语言经验的程序员视角,对书中内容提炼总结,化繁为简,将这本书的精髓融合成一篇10分钟能读完的文章. ...

  6. WebSocket协议:5分钟从入门到精通

    一.内容概览 WebSocket的出现,使得浏览器具备了实时双向通信的能力.本文由浅入深,介绍了WebSocket如何建立连接.交换数据的细节,以及数据帧的格式.此外,还简要介绍了针对WebSocke ...

  7. 十分钟快速入门 Python

    本文以 Eric Matthes 的<Python编程:从入门到实践>为基础,以有一定其他语言经验的程序员视角,对书中内容提炼总结,化繁为简,将这本书的精髓融合成一篇10分钟能读完的文章. ...

  8. Jmeter(三十四) - 从入门到精通进阶篇 - 参数化(详解教程)

    1.简介 前边三十多篇文章主要介绍的是Jmeter的一些操作和基础知识,算是一些初级入门的知识点,从这一篇开始我们就来学习Jmeter比较高级的操作和深入的知识点了.今天这一篇主要是讲参数化,其实前边 ...

  9. Jmeter(三十六) - 从入门到精通进阶篇 - 设置负载阶梯式压测场景(详解教程)

    1.简介 在性能测试中,有时需要模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,然后持续运行一段时间,然后继续加压达到某个值持续运行,如此循环直到达到预期的峰值,运行一 ...

  10. python视频教程:十分钟快速入门python

    想要学习python这门语言,却始终找不到一个全面的Python视频教程,倘若你是真心想学好一门语言,小编建议你亲自动手实践的.下面来看看入门python的学习教程. Python的语言特性 Pyth ...

随机推荐

  1. 开源项目 | 一款基于NodeJs+Vue3的强大的在线设计图片工具

    一.项目概述 一款漂亮且功能强大的在线海报图片设计器,仿稿定设计.适用于海报图片生成.电商分享图.文章长图.视频/公众号封面等多种场景. 二. 技术特性 丝滑的操作体验,丰富的交互细节,基础功能完善 ...

  2. C#学习笔记--进阶

    C#进阶 简单数据结构类 ArrayList 元素类型以Object类型存储,支持增删查改的数组容器. 因而存在装箱拆箱操作,谨慎使用. //ArrayList ArrayList array=new ...

  3. 2023 版 Java和python开发线性代数探索

    目录 前景提示 需求 分析 1.初始化不需要指定矩阵的尺寸,并且可以直接传入数据. 2.可以计算2x2矩阵的逆 3.可以做2x2的矩阵乘法 Java版本开发 一. 开发详情 1.开发一个子类,如图所示 ...

  4. 宏任务和微任务,同步异步,promis,await执行顺序

    本文作为EVENLOOP事件循环的延伸: 执行顺序: ------------循环---------- |                                              | ...

  5. 不同角度理解线程的状态(操作系统 & Java API)

    3.12 五种状态 ( 操作系统 层面) 这是从 操作系统 层面来描述的 [初始状态]仅是在语言层面创建了线程对象,还未与操作系统线程关联 [可运行状态](就绪状态)指该线程已经被创建(与操作系统线程 ...

  6. Chromium VIZ架构详解

    1. VIZ的三个端 在设计层面上 viz 的架构如下图所示: 在设计上 viz 分了三个端,分别是 client 端, host 端和 service 端. client 端用于生成要显示的画面(C ...

  7. 一次完整的Http请求过程(转)

    一次完整的Http请求过程 在网上看了很多关于http完整流程的介绍文档,都讲的很不错,但是还是各有缺失,所以自己就根据学习及理解整理了一张图,给大家分享下http一次完整的交互流程,只是大概画了下流 ...

  8. Centos7.5镜像获取

    Centos.7.5镜像可从以下地址获取 镜像源地址:https://mirrors.tuna.tsinghua.edu.cn/ 1.下拉找到cc目录下的centos-vault 2.点击进入下一级目 ...

  9. idea的git插件,可以显示每一行代码的git版本记录,很好用

    再给大家推荐一款idea的git插件----GitToolBox,可以显示每一行代码的git版本记录,很好用 效果图如下 可以在光标所在行代码的后面显示git的版本记录信息(提交的用户名,提交的时间等 ...

  10. [WPF]浅析资源引用(pack URI)

    WPF中我们引用资源时常常提到一个概念:pack URI,这是WPF标识和引用资源最常见的方式,但不是唯一的方式.本文将介绍WPF中引用资源的几种方式,并回顾一下pack URI标识引用在不同位置的资 ...