【DataWorks最佳实践】权限及安全-权限管理与规范化数据开辟
DataWorks工作空间类型分为“简朴模式”、“尺度模式”两种,两种类型在权限管理上有细分区别。本实践将基于DataWorks尺度模式空间完成从“数据建模”到“数据生产”的基本流程,帮助您快速掌握规范化的数据体系建设流程,提升在数据开辟过程中的规范性、安全性、稳定性。配景信息
DataWorks采取RBAC权限模子供用户管理DataWorks全部页面可见功能以及API的使用权限,同时这套权限体系与MaxCompute的RBAC角色体系存在自然的映射关系,详情可参见空间级模块权限管控。不同工作空间类型的权限管理特性与优缺点不划一,以下表格为您对比先容两种空间类型的权限细分特点。
细分特点
简朴模式
尺度模式
描述
在简朴模式工作空间下,一个DataWorks空间下层对应一个MaxCompute项目(或一个EMR集群、Hologres数据库等),该环境即视为生产(PROD)环境。
https://img-blog.csdnimg.cn/img_convert/7a385cb49d9145ca93f4a3ecac991213.png
在尺度模式工作空间下,一个DataWorks空间下层对应两个MaxCompute项目(或两个EMR集群、Hologres数据库等),一个视为开辟(DEV)环境,一个视为生产(PROD)环境。
https://img-blog.csdnimg.cn/img_convert/0a973b08528534fa95a42cf67caa2ceb.png
权限概述
在简朴模式空间下,DataWorks的“开辟”角色因为与MaxCompute数据源的“Role_Project_Dev” Role进行了映射,因此DataWorks开辟角色自然可以或许读取MaxCompute项目内的全部数据。
在尺度模式空间下,DataWorks的“开辟”角色因为与MaxCompute数据源(dev环境)的“Role_Project_Dev” Role进行了映射,因此:
[*] DataWorks开辟角色自然可以或许读取MaxCompute项目(dev环境)内的全部数据。
[*] 由于没有和MaxCompute项目(PROD环境)的role映射,因此默认环境下DataWorks开辟角色无MaxCompute(PROD环境)的数据权限。
优点
简朴、方便、易用。
仅必要授权数据开辟人员“DataWorks开辟角色”即可完成全部数据堆栈开辟工作。
安全、规范。
[*] 具备安全、规范的代码发布管控流程(包含代码评审、代码DIFF查察等功能),保障生产环境稳定性,制止不必要的因代码逻辑引起的脏数据伸张或使命报错等非预期环境。
[*] 数据访问得到有效管控,数据安全得以保障。
缺点
存在不稳定、不安全的风险。
[*] 开辟角色可以不经过任何人审批,随时新增、修改代码并提交至调度系统,给生产环境带来不稳定因素。
[*] 面向MaxCompute盘算引擎时,开辟角色默认拥有当前MaxCompute项目全部表的读写权限,可随意对表进行增长、删除和修改等利用,存在数据安全风险。
流程相对复杂,一般环境下无法一人完成全部数据开辟、生产流程。
阐明
关于简朴模式与尺度模式差别详情可参考文档:必读:简朴模式和尺度模式的区别
尺度模式对使用流程的影响
如图,尺度模式“生产、开辟隔离”的模式将影响数据模子计划、数据处置惩罚逻辑代码发布等流程。
https://img-blog.csdnimg.cn/img_convert/d482934d0fa1d9ce4b97c44766c429b9.png
实践利用流程
以下以一个具体的实践为您演示,尺度模式下规范化的数据开辟流程。
[*] Step1:开通产品与创建空间
[*] Step2:角色管理
[*] Step3:权限管理
[*] Step4:数据建模
[*] Step5:数据开辟与生产
Step1:开通产品与创建空间
[*] 开通DataWorks与MaxCompute。
[*] 开通DataWorks服务
[*] 开通MaxCompute
[*] 创建DataWorks工作空间。
阐明
阿里云主账号可直接利用创建工作空间,如需使用RAM用户创建工作空间,则需对RAM用户授权后再利用,详情可参见创建RAM用户。
[*] 设置工作空间基本信息。
登录DataWorks控制台,切换至目的地区后,单击左侧导航栏的工作空间,进入工作空间列表页面。单击创建工作空间,参数根据界面提示设置,完成后单击创建工作空间。
[*] 为工作空间创建MaxCompute数据源。具体利用,请参见创建MaxCompute数据源。
其中生产环境的MaxCompute访问身份即调度访问身份,是开辟使命发布到生产环境进行周期性调度运行时所使用的身份,通常环境下为包管调度使命顺遂进行,比起开辟者本身的身份来,调度访问身份往往拥有较大数据范围读写权限。
生产环境MaxCompute访问身份默认环境下为阿里云主账号,如您存在不同部门使用不同空间并要求调度访问身份权限隔离,则可以选择独立RAM用户作为该空间专属调度身份。
Step2:角色管理
在DataWorks工作空间下,您可以根据不同的业务场景为不同的RAM用户设置不同的工作空间权限,DataWorks现在有预设角色,同时也支持您自界说角色。您在将RAM用户添加到DataWorks工作空间时,可以选择添加为当前工作空间的预设角色大概自界说角色。
阐明
DataWorks权限体系与MaxCompute权限体系是相互独立的,某个用户拥有DataWorks使用权限不代表一定拥有MaxCompute使用权限,但工作空间的两种模式权限的环境破例,如配景信息所示。
[*] 角色规划。
[*] 预设角色
DataWorks提供预设角色供用户进行快速授权,具体权限请参见附录:预设角色权限列表(空间级),除此之外,预设角色权限控制大要可以参考以下阐明。
[*] 空间级别-空间管理员角色:可以做当前空间全部利用。
[*] 空间级别-开辟角色:可以做使命开辟的工作,如DataStudio使命开辟、数据服务开辟、DQC设置等。
[*] 空间级别-运维角色:负责设置资源与使命部署,如设置数据源、发布使命。
[*] 空间级别-部署角色:仅负责发布使命。
[*] 空间级别-模子计划师角色:仅能利用建模工作,无法界说数据尺度。
同时,为方便用户进行数据开辟工作,这些DataWorks预设角色与MaxCompute数据源Role存在映射关系,详情请参见配景信息。
以下以一个案例为您示例。
[*] DataWorks上给一个RAM用户授予开辟角色,他可以在DataWorks上开辟代码而且提交,但是他不能将代码直接发布到生产,发布生产利用必要有运维权限(项目全部者、管理员、运维角色拥有此权限)。
[*] 在MaxCompute引擎层面,DataWorks上为RAM用户授予开辟角色这个利用,在MaxCompute引擎层面就是为这个RAM用户授予了一个role_project_dev这个角色,这个角色会被赋予一些当前MaxCompute项目的表和项目的权限。
阐明
查察MaxCompute Role所拥有权限请参考用户规划与管理。
https://img-blog.csdnimg.cn/img_convert/49c26868d2e0087c8e91d7b58b960bad.png
[*] DataWorks自界说角色
您可以通过自界说角色控制是否让某个RAM用户只能访问部分模块,同时您也可以自行控制设置引擎权限映射利用给该自界说角色默认的底层MaxCompute引擎相关的权限。
https://img-blog.csdnimg.cn/img_convert/3f56453c4c6bc6b89ce1ca1d1718898d.png
[*] 角色分配。
在本案例中,您必要准备至少5个RAM用户,并对其赋予如下几种角色:
https://img-blog.csdnimg.cn/img_convert/bc326c0c4acf809f76dc57ea4e8076ad.png
授权步骤请参考用户授权与管理,其中:
[*] 数据团队主管被赋予“空间管理员”权限。
[*] 数据开辟人员被赋予“开辟角色”权限。
[*] 数据建模人员被赋予“模子计划师角色”权限。
[*] 运维人员被赋予“运维角色”权限。
[*] 数据分析师人员被赋予“开辟角色”权限。
Step3:权限管理
在上述“角色管理”中已对角色相关内容进行了先容,固然部分默认设置涉及数据权限管理(如配景信息),但DataWorks仍提供了更为专业的概述,帮助您快速构建平台的数据内容、个人隐私等相关的安全能力,实现更加精细化、场景化的数据权限及高危风险行为管控,满足企业面向高风险场景的各类安全要求(例如,审计),无需您额外设置即可直接使用该功能。
[*] 准备工作。
请参考如下步骤打开相关设置,以实现更加精细化的权限管控能力。
登录DataWorks控制台,切换至目的地区后,单击左侧导航栏的工作空间,进入工作空间列表页面。,单击创建工作空间,选择生产、开辟环境隔离,其他参数根据界面提示设置,完成后单击创建工作空间。
[*] 启动列级别访问控制。详情请参见Label权限控制。
[*] 进入安全中心平台安全诊断,打开数据下载控制。
利用详情请参见进入平台安全诊断。打开后即可实现odpscmd tunnel download,数据下载权限需申请后才气执行。
https://img-blog.csdnimg.cn/img_convert/60a45db9418c6680cd9b21be6246329b.png
[*] 尺度模式下的数据权限管理。
在尺度模式下,当数据产出至生产环境后,默认环境下任何人均无数据读写权限。
https://img-blog.csdnimg.cn/img_convert/16c83ae2acd33319f96039907d58da9d.png
此时,如开辟人员或分析师需读取生产环境数据进行数据分析或用于生产,则可以发起相关权限申请流程。
[*] 默认数据权限申请流程。
[*] 登录数据舆图定位至某张表。
https://img-blog.csdnimg.cn/img_convert/2285b7c14776b83fc363d7cd006e1ea3.png
[*] 点击权限申请。
https://img-blog.csdnimg.cn/img_convert/c15f4cc287bc5010d8b57a0ee1ebe71a.png
[*] 选择所需申请的权限点以及字段并发起申请。
https://img-blog.csdnimg.cn/img_convert/55e17e04443059aa9c5e75b903aaa8dd.png
[*] 执行审批。
表责任人(Owner)或空间管理员角色进入DataWorks审批中心-待我审批,即可完成表权限审批。
https://img-blog.csdnimg.cn/img_convert/afab44a370ba351e80c67a6fcc04389b.png
[*] 自界说数据权限申请流程。
在上述步骤中,表权限申请流程仅需由“表责任人(Owner)”或“空间管理员”执行审批即可,但对于权限管控相对严格的企业来说,远远无法满足其需求,仍需更加复杂的审批流程来支持权限申请与审批。
DataWorks支持管理员通过界说MaxCompute项目维度、数据保护伞分级分类维度的审批计谋来进行数据权限申请审批,满足企业在不同场景下、针对不同种别数据的审批流程界说,实现更加安全的授权流程。
Step4:数据建模
数据建模的流程包罗:创建数据尺度、创建数据模子、修改数据模子、保存模子至模子库、提交模子至开辟环境盘算引擎。利用详情请参见数据建模。
Step5:数据开辟与生产
进行数据开辟与生产前,您必要了解几个告急的概念。
[*] 生产开辟数据源
DataWorks支持基于尺度模式工作空间对应的两个环境这一特性,来分别为这两个环境设置不同的数据库访问地址。即您可以在数据源设置界面分别为开辟环境(DataStudio)测试运行时和生产调度时指定不同的数据库访问地址。
同一个名称的数据源存在开辟环境和生产环境两套设置,您可以通过数据源隔离使其在不同环境隔离使用。DataWorks将通过判定使命执行环境来主动访问对应环境下该同名数据源对应的设置信息。详情请参考数据源开辟和生产环境隔离。
https://img-blog.csdnimg.cn/img_convert/edfd825c363fe7adb07c6ced70ced543.png
[*] 调度参数
调度参数是DataWorks在调度场景下支持主动根据业务时间更换为具体值的参数,节点中使用调度参数后,在调度场景下,可以实现将对应业务时间的业务数据动态写入对应的时间分区中。详情请参见调度参数支持的格式。
[*] 依赖关系
调度依赖就是调度场景下节点间的上鄙俚依赖关系,在DataWorks调度场景中,上游节点运行成功,鄙俚使命节点才会开始运行。
根据表血缘来设置节点调度依赖后,可以保障调度使命在运行时能取到精确的数据,制止鄙俚节点取数据时,上游表数据还未正常产出,导致鄙俚节点取数出现问题。
在DataWorks依赖设置中,上游节点的输出作为鄙俚节点的输入,形成节点依赖关系。平台支持通过主动解析快速设置节点依赖,关于调度依赖详情可参考文档调度依赖设置指引。
了解相关概念后,您可进行数据开辟与生产的利用步骤。
[*] 以管理员权限创建生产开辟数据源。
https://img-blog.csdnimg.cn/img_convert/86778c6b615866a938057b08c47d8861.png
[*] 开辟人员创建业务流程。
https://img-blog.csdnimg.cn/img_convert/8e9048a8ebf1aa2ed8fa53d5e7030edf.png
[*] 开辟人员在业务流程内新建节点。
https://img-blog.csdnimg.cn/img_convert/f673718d6b392cdff8be2d0d2a7265ae.png
[*] 开辟人员设置节点使命并设置调度属性、依赖关系。
https://img-blog.csdnimg.cn/img_convert/70bbb77dacb06556299fbc7ec9e18f78.png
https://img-blog.csdnimg.cn/img_convert/3350c4fbef00539c009d9234484c6437.png
[*] 开辟人员提交使命并发起代码审核。
https://img-blog.csdnimg.cn/img_convert/fd2cfbc5f01e4cc7424386fd67e1b09c.png
[*] 代码审批人员进行代码审核决定是否通过审批进入待发布状态。
https://img-blog.csdnimg.cn/img_convert/9aaaf84665dd93d2cfcaac563b0fe644.png
[*] 有运维权限的同学可将节点发布生产大概根据节点变更内容来决定是否取消发布。
https://img-blog.csdnimg.cn/img_convert/44fcfecb59870a6327acc91f9a59a584.png
[*] 运维同学或开辟人员进入发布包界面查察发布状态。
https://img-blog.csdnimg.cn/img_convert/a656e559009355d1988c375d783beaaf.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]