使用管控策略,设定多账号组织全局访问边界

简介: 企业上云多账号架构中,如何做到从上到下管理的同时,处理好员工的权限边界问题?

由多账号上云模式说起

多账号上云模式的产生

我们的企业客户上云,一般都是从尝试部署少量业务开始,然后逐步将更多业务采用云上架构。随着企业上云的进一步深入,越来越多的企业业务被放在了云端,这使得企业采购的云资源迅速增多,资源、项目、人员、权限的管理变得极其复杂,仅仅使用一个账号,使得问题被放大,很难得到有效解决。单账号负载过重已无力支撑,许多企业开始创建更多账号以分散业务压力。于是,许多企业选择使用了更多账号,对应其不同的业务。因此,从账号的使用方面看,企业使用的账号数量逐步增多,多账号上云模式逐渐成为多业务上云的重要选项。

 

多账号模式的优势

诸多企业选择采用多账号模式上云,也是由于多账号相对单账号而言,有着不可替代的优势。

 

  • 使用多账号的逻辑强隔离,实现企业不同业务应用间的相互独立

账号与账号之间默认是隔离的。这将避免不同业务间发生依赖项冲突或资源争用,甚至可以支持为每个业务设置明确的资源限制。

  • 利用多账号分散风险,最大程度提升资源安全边界,尽可能将危害降到最低

消除安全“核按钮”。当非法用户窃取到一个高权限时,“爆炸半径”被限定到单个账号内,而不影响企业所有业务。

  • 轻松应对大型企业多分公司关系,支持多种法律实体、多种结算模式共存

每个账号都可对应唯一一个法律主体,多账号环境天然支持集团企业的多分公司主体、以及不同业务的不同结算模式。

  • 多账号易于结构化管理,业务的拆分和融合变得简单

业务过多导致“臃肿”不利于管理,业务间也非扁平形态,存在业务关联的“组织性”要求,单个账号很难解决,多账号却易于实现;同时,借助账号的独立性,它们可轻松地拆分或融合于不同的管控域,与企业业务适配联动。
 

多账号架构的挑战

多账号的采用,如果不去有序的管理它,也会有很多麻烦。

 

比如,账号散落没有集中、没有结构化,就无法做到组织化管理。再比如,上层管理者如何能够一眼全局、如何能够集中管控,都是影响企业业务效率的问题,需要解决。

 

无序管理的多账号一盘散沙,有序管理是企业多账号模式促进生产效率的第一要务。

 

从多账号组织化问题看,阿里云的资源目录产品,可以很好地解决多账号有序管理问题。这是资源目录的基础能力之一。

资源目录是阿里云面向企业客户,提供的基于多账号的管理与治理服务。详细了解资源目录

 

大家可以看到,上图中,利用资源目录的组织能力,企业可以很快的构建属于自己的业务架构,将企业多账号按照业务关系聚合,形成结构化易管理的形态,并提供闭环的企业云资源管理服务,以此来适配业务的管理需要。

多账号模式下的权限管控问题

 

阿里云诸多大客户对于企业TopDown管控越来越重视。

 

随着客户业务的大量上云,员工(user)被密集且复杂的授予各种资源、服务的权限以运作这些业务,企业管理端很难非常细致地考量每个业务的具体授权,但希望能够从顶层做出企业的全局管控,即制定企业“大规范”以限定用户权限边界,以免超出公司的合规范围。

 

如何能够简单高效的解决这个问题?以下是资源目录管控策略产品设计的初衷。

管控策略产品定义与实现

 

管控策略(Control Policy,下文简称CP) 是一种基于资源结构(资源目录中的组织单元或成员账号)的访问控制策略,可以统一管理资源目录各层级内资源访问的权限边界,建立企业整体访问控制原则或局部专用原则。管控策略只定义权限边界,并不真正授予权限,您还需要在某个成员账号中使用访问控制(RAM)设置权限后,相应身份才具备对资源的访问权限。

 

从企业上云的角度看,管控策略的实施对象是企业用户对所需云资源的操作行为。从企业用户订购云资源、配置和使用云资源、最后到销毁云资源,管控策略可以对企业用户操作云资源的整个生命周期行为作出预设的前置校验,阻止不符合预设规则的操作发生,最终达到规范企业用户对云资源使用行为的目的。
 

管控策略的实现机制

在鉴权引擎中增加管控策略校验

 

管控策略(CP)是如何实现权限管控效果的呢?

 

上图所示为用户访问资源请求的鉴权流程。管控策略在鉴权引擎中增加前置校验逻辑,在正式鉴权之前就对操作发生的边界进行判定:对于Explicit Deny(显式拒绝)或Implicit Deny(隐式拒绝),将直接做出「拒绝」结果,仅当管控策略的判定结果是Allow(允许)时,鉴权引擎才会进行下一步判定。

 

基于资源目录实现从上至下的管控

 

当企业创建了一个资源目录,并为每个部门创建了成员账号后,如果对各成员账号的行为不加以管控,就会破坏运维规则,带来安全风险和成本浪费。利用资源目录-管控策略功能,企业可以通过企业管理账号集中制定管理规则,并将这些管理规则应用于资源目录的各级组织结构(资源夹、成员账号)上,管控各成员账号内资源的访问规则,确保安全合规和成本可控。例如:禁止成员账号申请域名,禁止成员账号删除日志记录等。

 

当成员账号中的RAM用户或角色访问阿里云服务时,阿里云将会先进行管控策略检查,再进行账号内的RAM权限检查。具体如下:
 

  • 管控策略鉴权从被访问资源所在账号开始,沿着资源目录层级逐级向上进行。
  • 在任一层级进行管控策略鉴权时,命中拒绝(Deny)策略时都可以直接判定结果为拒绝(Explicit Deny),结束整个管控策略鉴权流程,并且不再进行账号内基于RAM权限策略的鉴权,直接拒绝请求。
  • 在任一层级进行管控策略鉴权时,如果既未命中拒绝(Deny)策略,也未命中允许(Allow)策略,同样直接判定结果为拒绝(Explicit Deny),不再进入下一个层级鉴权,结束整个管控策略鉴权流程,并且不再进行账号内基于RAM权限策略的鉴权,直接拒绝请求。
  • 在某一层级鉴权中,如果未命中拒绝(Deny)策略,而命中了允许(Allow)策略,则本层级鉴权通过,继续在父节点上进行管控策略鉴权,直至Root资源夹为止。如果Root资源夹鉴权结果也为通过,则整个管控策略鉴权通过,接下来进入账号内基于RAM权限策略的鉴权,详情请参见权限策略判定流程。

 

管控策略的用法说明

管控策略的语言

CP使用与RAM基本相同的语法结构。

 

CP语法结构中包含版本号和授权语句列表,每条授权语句包括授权效力(Effect)、操作(Action)、资源(Resource)以及限制条件(Condition,可选项)。其中CP较RAM的Condition支持上,多了一种条件Key:acs:PrincipalARN,实现对执行者身份(目前支持Role)的条件检查,主要应用场景为下文中提到的「避免指定云服务访问被管控」。您可以了解更多CP语言的使用方法

 

管控策略的影响效果

您可以将自定义CP绑定到资源目录的任意节点,包含任何一个资源夹或成员账号。CP具备基于资源目录树形结构从上向下继承的特点,例如:为父资源夹设置管控策略A,为子资源夹设置管控策略B,则管控策略A和管控策略B都会在子资源夹及其下的成员账号中生效。

 

  • CP仅影响资源目录内的成员账号下的资源访问。它对资源目录企业管理账号(MA)下的资源访问不会产生影响,因为MA并不属于RD;
  • CP仅影响成员账号内的RAM用户和角色访问,不能管控账号的根用户(Root user)访问。我们建议您在资源目录内使用资源账号类型成员,这一成员类型禁用了根用户;关于资源目录成员类型,请参见文档
  • CP基于资源的访问生效。无论是资源目录内的用户,还是外部用户,访问资源目录内的资源时,都会受到CP的管控;例如,您对资源目录内的A账号绑定了一个CP,同样适用于在资源目录外部的B账号内的用户访问A账号内的资源时的管控
  • CP同样影响基于资源的授权策略。例如,在资源目录内的A账号中OSS bucket上授予资源目录外部的B账号内的用户访问,此访问行为同样受到绑定在A账号的CP影响
  • CP对服务关联角色(Service Linked Role)不生效。关于服务关联角色的详情,请参见服务关联角色

 

避免指定云服务访问被管控

管控策略将对被管控成员账号中的资源访问权限限定边界,边界之外的权限将不允许生效,此限定同样影响阿里云服务对该成员账号访问的有效性。

 

阿里云服务可能使用服务角色(Service Role)访问您账号中的资源,以实现云服务的某些功能。当一个服务角色的权限超过管控策略的边界时,此权限会受到管控策略的约束,这可能导致云服务的某些功能不能正常使用。如果这正是您配置管控策略期望的结果,则无需进行其他额外操作,但是,如果您不希望这些云服务被管控,您可以采用以下方法进行处理:
 

  1. 确认您不希望被管控的云服务所使用的服务角色名称。您可以登录RAM控制台,查看账号下的所有服务角色。
  2. 在造成管控效果的管控策略中增加Condition key: "acs:PrincipalArn"的条件,将受影响的云服务所使用的服务角色名称写入到PrincipalArn字段,以避免该服务角色被误管控。示例如下:
{"Statement": [{"Action": ["ram:UpdateUser"],"Resource": "*","Effect": "Deny",         "Condition": {"StringNotLike": {"acs:PrincipalARN":"acs:ram:*:*:role/<服务角色名称>"}}}],"Version": "1"
}

管控策略使用限制与参考

阿里云资源目录-管控策略目前已支持对152款云产品,您可以查看支持管控策略的云服务

 

管控策略的使用限制如下:
 

  • 资源目录内最多允许创建自定义管控策略的数量为1500个;
  • 每个节点(资源夹、成员账号)最多允许绑定自定义管控策略的数量为10个;
  • 每个自定义策略的最大长度2048个字符。


我们建议您先进行局部小范围测试,确保策略的有效性与预期一致,然后再绑定到全部目标节点(资源夹、成员账号)。

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513164.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用MaxCompute LOAD命令批量导入OSS数据最佳实践—STS方式LOAD开启KMS加密OSS数据

简介&#xff1a; MaxCompute使用load overwrite或load into命令将外部存储的数据&#xff08;如&#xff1a;oss&#xff09;导入到MaxCompute前的授权操作。 MaxCompute使用load overwrite或load into命令将外部存储的数据&#xff08;如&#xff1a;oss&#xff09;导入到M…

pca降维的基本思想_R语言进行PCA分析

点击上方「蓝字」关注我写在前面前面我们知道了降维分析学习了PCoA分析今天学习PCA分析...PCA(Principal Component Analysis)&#xff0c;即主成分分析方法&#xff0c;是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上&#xff0c;这k维是全新的正交特征…

c语言线性分类回归库 台湾,最全的线性回归算法库总结—— scikit-learn篇

原标题&#xff1a;最全的线性回归算法库总结—— scikit-learn篇本文建议收藏后食用更加美味scikit-learn对于线性回归提供了比较多的类库&#xff0c;这些类库都可以用来做线性回归分析&#xff0c;本文就对这些类库的使用做一个总结&#xff0c;重点讲述这些线性回归算法库的…

吉麦新能源与联想签订战略合作协议,共同拥抱智能网联汽车升维时代

11月25日&#xff0c;吉麦新能源汽车与联想战略合作签约仪式成功举行&#xff0c;双方正式建立战略合作伙伴关系。未来&#xff0c;双方将在车联网、云解决方案及服务、IT基础架构产品服务、智慧工厂服务领域开展深入合作&#xff0c;合力推动新能源造车数智化转型&#xff0c;…

供应链商品域DDD实践

简介&#xff1a; DDD是一套方法论&#xff0c;实践能否成功&#xff0c;不仅仅是个技术问题&#xff0c;更是执行贯彻实施的问题。本文将就DDD的基本概念和DDD的实施进行分享。 作者 | 侧帽 来源 | 阿里技术公众号 前言 供应链商品域DDD实践时间不长&#xff0c;在实践过程也…

20岁,Universal GIS拥抱新生的GIS信创

近20年来&#xff0c;在快速发展的IT新技术和国家应用需求的双轮驱动下&#xff0c;我国GIS技术和产业得到了飞速发展&#xff0c;GIS软件应用范围从几个行业深入到了数字中国建设中的数字经济、数字政务、数字社会、数字生态建设的几乎所有行业和领域。GIS软件已成为国家治理体…

如何用Netty写一个高性能的分布式服务框架?

byte[] -->堆外内存 / 堆外内存--> byte[] -->java对象。 优化&#xff1a;省去 byte[] 环节&#xff0c;直接 读/写 堆外内存&#xff0c;这需要扩展对应的序列化框架。 String 编码/解码优化。 Varint 优化&#xff1a;多次 writeByte 合并为 writeShort/writeInt/w…

C语言rec文件如何打开,REC 文件扩展名: 它是什么以及如何打开它?

REC 疑难解答典型的 REC 开放挑战Squared 5 MPEG Streamclip 不在你尝试加载 REC 文件并收到错误&#xff0c;例如 “%%os%% 无法打开 REC 文件扩展名”。 通常&#xff0c;这是因为你没有安装适用于 %%os%% 的 Squared 5 MPEG Streamclip。 操作系统不知道如何处理你的 REC 文…

Quick BI:降低使用门槛,大东鞋业8000家门店的数据导航

简介&#xff1a; 通过引入MaxCompute和Quick BI&#xff0c;大东解决了以往数据查询即刻导致数据库闪崩的状况&#xff0c;还搭建起完善的报表体系&#xff0c;稳定应对高频、高并发的数据分析。 大东鞋业一季大约有500款的新品。大区下辖的各个分公司要对这500款新品进行订货…

绿盟科技发布安全知识图谱技术白皮书

随着全球数字化和万物互联的加速发展&#xff0c;近年来勒索病毒的攻击手段不断升级&#xff0c;例如今年美国最大燃油管道受攻击导致美国17个州和华盛顿特区进入紧急状态&#xff0c;引起全球关注。当下企业如何提高安全运营知识以面对不断升级的威胁攻击&#xff1f; 近日&a…

「应用管理与交付」为什么会成为云原生新的价值聚焦点?

简介&#xff1a; 为什么“云原生应用管理与交付”会成为 Kubernetes 之上重要的价值聚焦点&#xff1f;CNCF App Delivery SIG 在推动 Kubernetes 之上应用层技术快速演进的过程中将扮演什么角色&#xff1f;这个领域又将发生哪些值得大家期待的创新&#xff1f;让我们一起了解…

android 4.4官方下载,安卓系统电脑版-android x86 4.4 iso下载官方最新版【pc版】-西西软件下载...

Android-X86是由Beyounn和Cwhuang主持设计的。提供了一套完整的可行源代码树&#xff0c;配套文档以及Live CD与Live USB。Android系统主要应用在智能手机以及平板电脑设备上。日前&#xff0c;越来越多使用英特尔和AMD处理器的计算机也开始运行Android系统。如何才 能让Androi…

dataframe iloc_如何使用iloc和loc 对Pandas Dataframe进行索引和切片

在这篇文章中&#xff0c;我们将使用iloc和loc来处理数据。更具体地说&#xff0c;我们将通过iloc和loc例子来学习切片和索引。一旦我们将一个数据集加载为Pandas dataframe&#xff0c;我们通常希望根据某些条件开始访问该数据的特定部分。例如&#xff0c;如果我们的数据集包…

Flink 和 Iceberg 如何解决数据入湖面临的挑战

简介&#xff1a; 4.17 上海站 Meetup 胡争老师分享内容&#xff1a;数据入湖的挑战有哪些&#xff0c;以及如何用 Flink Iceberg 解决此类问题。 一、数据入湖的核心挑战 数据实时入湖可以分成三个部分&#xff0c;分别是数据源、数据管道和数据湖&#xff08;数仓&#xf…

高并发下的 HashMap 为什么会死循环

作者 | tech-bus.七十一来源 | 程序员巴士前言HashMap并发情况下产生的死循环问题在JDK 1.7及之前版本是存在的&#xff0c;JDK 1.8 通过增加loHead头节点和loTail尾节点进行了修复&#xff0c;虽然进行了修复&#xff0c;但是如果涉及到并发情况下需要使用hash表&#xff0c;建…

唯品会:在 Flink 容器化与平台化上的建设实践

简介&#xff1a; 唯品会 Flink 的容器化实践应用&#xff0c;Flink SQL 平台化建设&#xff0c;以及在实时数仓和实验平台上的应用案例。 转自dbaplus社群公众号 作者&#xff1a;王康&#xff0c;唯品会数据平台高级开发工程师 自 2017 年起&#xff0c;为保障内部业务在平…

python怎么变成exe_Python怎样打包成exe?

分类&#xff1a;Python &#xff5c; 作者&#xff1a;凹凸曼 &#xff5c; 发表于2011/03/01Python怎样打包成exe&#xff1f;已关闭评论 发现PyInstaller 是个不错的东东&#xff0c;解决打包单个exe的问题&#xff0c;使用非常简单&#xff0c;不用编写setup脚本&#xff1…

PolarDB-X 2.0:使用一个透明的分布式数据库是一种什么体验

简介&#xff1a; 透明分布式&#xff0c;是PolarDB-X即将发布的能力&#xff0c;它能让应用在使用PolarDB-X的过程中&#xff0c;犹如使用单机数据库一般的体验。与传统的中间件类型的“分布式数据库”相比&#xff0c;有了透明分布式能力的PolarDB-X&#xff0c;不再需要应用…

Chrome 96 又更新了 5 个巨巨巨好用的功能

作者 | 零一来源 | 前端印象‍‍‍‍‍‍‍大家好&#xff0c;收到了 Chrome 96 版本的更新推送&#xff0c;简单看了一下&#xff0c;还是更新了几个挺有趣的东西的&#xff0c;一起来看看到底都有啥~先下载 Chrome Beta 版本才能体验 Chrome 96 哈Chrome Beta我们顺便来给每个…

编译优化 | LLVM代码生成技术详解及在数据库中的应用

简介&#xff1a; 作者&#xff1a;长别 1. 前言 随着IT基础设施的发展&#xff0c;现代的数据处理系统需要处理更多的数据、支持更为复杂的算法。数据量的增长和算法的复杂化&#xff0c;为数据分析系统带来了严峻的性能挑战。近年来&#xff0c;我们可以在数据库、大数据系…