DLI服务不仅在服务本身有一套完善的权限控制机制,同时还支持通过统一身份认证服 务(Identity and Access Management,简称IAM)细粒度鉴权,可以通过在IAM创 建策略来管理DLI的权限控制。两种权限控制机制可以共同使用,没有冲突。
IAM 鉴权使用场景
企业用户在华为云上使用DLI服务时,需要对不同部门的员工使用DLI资源(队列)进 行管理,包括资源的创建、删除、使用、隔离等。同时,也需要对不同部门的数据进 行管理,包括数据的隔离、共享等。
DLI使用IAM进行精细的企业级多租户管理。该服务提供用户身份认证、权限分配、访 问控制等功能,可以帮助您安全地控制华为云资源的访问。
通过IAM,您可以在华为云帐号中给员工创建IAM用户,并使用策略来控制他们对华为 云资源的访问范围。例如您的员工中有负责软件开发的人员,您希望他们拥有DLI的使 用权限,但是不希望他们拥有删除DLI等高危操作的权限,那么您可以使用IAM为开发 人员创建用户,通过授予仅能使用DLI,但是不允许删除DLI的权限策略,控制他们对 DLI资源的使用范围。
说明
对于新建的用户,需要先登录一次DLI,记录元数据,后续才可正常使用。
IAM是华为云提供权限管理的基础服务,无需付费即可使用,您只需要为您帐号中的 资源进行付费。关于IAM的详细介绍,请参见《IAM产品介绍》。
如果华为云帐号已经能满足您的需求,不需要创建独立的IAM用户进行权限管理,您 可以跳过本章节,不影响您使用DLI服务的其他功能。
DLI 系统权限
如表3-1所示,包括了DLI的所有系统权限。
权限类别:根据授权精程度分为角色和策略。
● 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该 机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间
存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角 色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达 到企业对权限最小化的安全管控要求。
● 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资 源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业 对权限最小化的安全管控要求。例如:针对DLI服务,管理员能够控制IAM用户仅 能对某一类云服务器资源进行指定的管理操作。
了解DLI SQL常用操作与系统策略的授权关系,请参考常用操作与系统权限关系。
表3-1 DLI 系统权限 系统角色/策略 名称
描述 类别 授权方式
DLI FullAccess 数据湖探索所有权限。 系统策 略
具体的授权方式请参考创 建IAM用户并授权使用
DLI以及《如何创建子用
户》和《如何修改用户策 略》。DLIReadOnlyAcces s
数据湖探索只读权限。 系统策 略
Tenant
Administrator 租户管理员。
● 操作权限:具有所有云 服务的管理和使用权 限。创建后,可通过 ACL赋权给其他子用户 使用。
● 作用范围:项目级服 务。
系统角 色
DLI Service
Admin DLI服务管理员。
● 操作权限:具有数据湖 探索服务队列、数据的 管理和使用权限。创建 后,可通过ACL赋权给 其他子用户使用。
DLI服务权限分类如表3-2所示,其可控制的资源请参考表3-7。
表3-2 DLI 权限分类
限 Flink作业 请参考Flink作 业权限管理
某互联网公司,主要有游戏和音乐两大业务,使用DLI服务进行用户行为分析,辅助决 策。
如图3-1所示,“基础平台组组长”在华为云上申请了一个“租户管理员”(Tenant Administrator)帐号,用于管理和使用华为云的各个服务。因为“大数据平台组”需 要使用DLI进行数据分析,所有“基础平台组组长”增加了一个权限为“DLI服务管理 员”(DLI Service Admin)的子帐号用于管理和使用DLI服务。“基础平台组组长”
按照公司两个业务对于数据分析的要求,创建了“队列A”分配给“数据工程师A”运 行游戏数据分析业务,“队列B”分配给“数据工程师B”运行音乐数据分析业务,并 分别赋予“DLI普通用户”权限,具有队列使用权限,数据(除数据库)的管理和使用 权限。
图3-1 权限分配
“数据工程师A”创建了一个gameTable表用于存放游戏道具相关数据,userTable表 用于存放游戏用户相关数据。因为音乐业务是一个新业务,想在存量的游戏用户中挖 掘一些潜在的音乐用户,所以“数据工程师A”把userTable表的查询权限赋给了“数 据工程师B”。同时,“数据工程师B”创建了一个musicTable用于存放音乐版权相关 数据。
“数据工程师A”和“数据工程师B”对于队列和数据的使用权限如表3-3所示。
表3-3 使用权限说明
用户 数据工程师A(游戏数据分析) 数据工程师B(音乐数据分析)
队列 队列A(队列使用权限) 队列B(队列使用权限)
数据
(表)
gameTable(表管理和使用权 限)
musicTable(表管理和使用权限)
userTable(表管理和使用权限) userTable(表查询权限)
说明
队列的使用权限包括提交作业和终止作业两个权限。