DataWorks的数据访问控制,为您提供了访问MaxCompute引擎数据时的权限管控能力,包括权限申请、权限审批、权限审计。您可以通过我的申请单查看权限申请记录,通过我的审批任务进行权限审批及查看审批记录。本文为您介绍MaxCompute数据访问权限管控。
背景信息
若您需要在DataWorks标准工作空间中访问生产环境的MaxCompute数据源的表数据、资源和函数,则需申请相应的权限。这有助于实现对生产环境资产的安全管理与管控。
本文适用于:需要访问生产环境MaxCompute数据源的表数据、资源、函数的场景。
在标准模式工作空间中,DataWorks处理开发环境的项目时,会默认在MaxCompute的项目角色中添加成员。这样,成员将具备所有数据的读取权限。详情请参见MaxCompute引擎在不同模式工作空间访问资源与权限说明。
在标准工作空间模式中,DataWorks处理生产环境的项目时,默认不会在MaxCompute的项目角色中添加成员。
权限申请者在申请MaxCompute的表数据、资源、函数后,需经过审批者同意后,方可使用。
前提条件
已了解DataWorks工作空间简单模式和标准模式的区别。
数据访问权限管控流程
应用场景
场景 | |
同工作空间内,开发环境用户访问生产环境表、资源或函数。 | 当DataWorks的子账号未被添加为生产环境计算引擎访问身份时,默认该账号无法在数据开发界面直接操作本工作空间的生产表,如果子账号需要拥有生产表权限,需要在安全中心概述发起申请,待审批通过后,便可在数据开发界面对表进行相关操作。 |
开发或生产环境用户访问跨工作空间的开发或生产环境表、资源或函数。 | 默认不在工作空间下的子账号无法在数据开发界面跨项目访问开发表或生产表。如果需要跨项目操作开发表或生产表,子账号需要在安全中心概述发起申请,待审批通过后,便可在数据开发界面对表进行相关操作。 |
权限申请流程
数据访问控制功能支持您进行权限申请、权限审批、权限审计的操作,还支持您查看权限申请记录、权限审批记录。在RAM用户(子账号)在开发过程中若无相关表权限,可通过权限申请界面申请对应权限。待审批人员(空间管理员或者表Owner)在权限审批页面通过申请后,便可获得权限。
DataWorks的安全中心为您提供默认的权限申请审批流程,同时也支持您在审批中心自定义审批流程。当您申请MaxCompute引擎表字段权限时,DataWorks会根据申请的表字段来识别需要进行哪种类型的审批流程。
资源与函数权限申请,不支持自定义审批与权限审计管理。
权限申请
在数据访问控制页面进行权限申请,需要配置申请内容与申请信息两个模块的信息。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的,在右侧页面中单击进入安全中心。
在安全中心的左侧导航栏单击进入页面。
在数据访问控制页面,选择权限申请页签,申请MaxCompute表、资源或函数。
表权限申请
在申请表权限时,在添加目标表后,您可以按需申请表级权限或列级权限
申请配置项
配置说明
申请内容
数据源类型
选择MaxCompute类型。
申请类型
表工作空间
选择需要申请
表所在的工作空间。MaxCompute项目
表所在的工作空间绑定的MaxCompute项目。Schema
表所在的Schema
待添加表
申请表级权限
支持申请表维度的
Select、Update、Download、Describe、Alter、Drop权限。申请列级权限
支持申请列维度的
Select、Update、Download权限。申请行权限
可选。在已选表的行权限列输入行条件,限制申请对象可以查询、下载的数据行。详见表格下方的行权限说明。
说明您可以申请 MaxCompute 项目中的表级或字段级权限。申请表级权限后,新增字段是否自动继承表级权限,取决于项目是否启用
labelsecurity:MaxCompute 项目未启用
labelsecurity:您成功申请表级别的Select、Update权限后,表中新增列时会自动继承Select、Update权限。MaxCompute 项目启用
labelsecurity:表级权限不会自动继承给新增字段。您成功申请表级别的Select、Update权限后,表中新增列时,需额外申请新增列的字段权限才能访问。
行权限说明
行权限用于限制申请对象可以访问的数据行。为目标表填写行条件并通过审批后,DataWorks会在MaxCompute中为申请对象创建行级访问策略(Row Access Policy),申请对象只能查询、下载满足行条件的数据。MaxCompute行级访问策略的说明请参见行级访问控制。
填写方式:在行权限列输入SQL WHERE条件表达式,无需写
WHERE关键字,例如region = 'cn-hangzhou' AND ds >= '20260101'。行条件最多2000个字符。每张表只能填写一个行条件,多张表需分别填写。生效范围:行条件仅限制
Select和Download的数据范围。同时申请的Update、Describe、Alter、Drop等其他权限按普通权限授予,不受行条件限制。因此,填写行条件时,需要在表级或列级同时勾选Select或Download。与列级权限同时申请:支持。列级的
Select、Download权限同样受行条件限制。条件校验:提交申请时,DataWorks会通过MaxCompute校验行条件的语法和字段。校验不通过时,页面弹出行条件校验未通过对话框并显示具体原因,本次申请不会提交,已填写的内容会保留,修改行条件后重新提交即可。如果提示暂时无法校验行条件,请稍后重试。
适用范围:仅支持表,不支持资源和函数。在主动授权页签为MaxCompute表授权时,同样可以配置行权限。
资源权限申请
申请配置项
配置说明
申请内容
数据源类型
选择MaxCompute类型。
申请类型
资源工作空间
选择需要申请资源所在的工作空间。
项目
资源所在的工作空间绑定的MaxCompute项目。
资源名称
需要申请权限的资源。
函数权限申请
申请配置项
配置说明
申请内容
数据源类型
选择MaxCompute类型。
申请类型
函数工作空间
选择需要申请函数所在的工作空间。
项目
函数所在的工作空间绑定的MaxCompute项目。
函数名称
需要申请权限的函数名称。
配置申请信息。
申请配置项
配置说明
申请信息
使用者
选择需要为谁申请目标资源权限。
当前登录账号:表示为当前登录DataWorks工作空间的阿里云账号申请目标表权限。
调度访问账号:表示为被设置为调度访问身份的RAM用户(子账号)申请目标表权限。
代他人申请:表示当前登录DataWorks工作空间的阿里云账号为其他阿里云账号申请目标表权限。选择该选项时,需要配置用户名参数。
申请时长
支持自定义权限的有效时长,过期后权限将自动回收。
说明使用此功能前需要表所在的MaxCompute项目开启Policy授权,详情请参见:MaxCompute数据权限控制详情,关于MaxCompute Policy的说明请参见:Policy权限控制。
申请原因
简要说明申请权限的原因,便于审批人理解。
单击申请权限,提交申请。
您可以在权限申请记录页签,查看当前申请的审批详情及审批记录。
权限审批
权限申请人提交权限审批后,权限审批人即可在我的审批任务页面进行审批。
在左侧导航栏,选择申请与审批 > 我的审批任务,单击数据访问控制页签。在待审批列表中,您可以根据申请账号、申请时间、工作空间、项目名称、对象名称等条件进行筛选,查看目标条件下,当前登录的阿里云账号名下需要审批的申请信息。
说明同一个申请单提交的多张表权限申请,会按照表Owner的不同自动拆分成多个申请单。
单击目标申请操作列的审批,您可以在审批详情对话框查看目标申请的申请详情、审批记录等详细信息,在审批详情弹窗内可进行以下操作:
根据申请的详细内容及当前需求判断是否同意审批该申请,填写审批意见,选择同意或拒绝当前申请
修改申请单的申请内容和到期时间。
说明未处理的环节:显示具有审批权限的全部审批人。
已处理的环节:仅显示处理该申请单的审批人。
除过在审批详情内单个审批,您也可以直接在我的审批任务页面,勾选全部申请,单击批量同意或批量拒绝,填写审批意见,批量处理目标申请。
查看权限申请记录
在左侧导航栏,选择申请与审批 > 我的申请单,单击数据访问控制页签。您可以根据审批状态、申请时间、工作空间等条件进行筛选,查看当前登录的阿里云账号名下涉及的申请记录。
您还可以单击目标申请操作列的查看详情,查看申请的详细信息。同时,对于审批状态为审批中的申请,您可以继续后续的审批操作。
包含行权限的申请,会在对象名称旁显示行权限标签,在申请详情中可以查看每张表的行条件。
查看权限审批记录
数据访问控制页面的「权限审批记录」原Tab入口已下线,列表已迁移至「申请与审批 > 我的审批任务」页面。在原Tab中已不再展示审批记录列表,仅保留一条迁移提示。请按以下路径查看权限审批记录。
在左侧导航栏,选择申请与审批 > 我的审批任务,单击数据访问控制页签,选择任务状态为全部。您可以根据申请账号、审批结果、工作空间等条件进行筛选,查看当前登录的阿里云账号的审批记录。
您还可以单击目标申请操作列的查看详情,查看申请的详细信息。
权限审计
完成权限审批后,您可在权限审计页签内通过筛选项查找并审计目标资源,查看目标资源的授权信息,以及在操作列回收权限或查看权限。
权限审计Tab当前仅支持MaxCompute引擎;Hologres、DLF、Hive、Lindorm、StarRocks等其他引擎暂不支持在此Tab进行权限审计。
权限审计Tab暂不展示行条件,也不支持单独回收行权限。
前置筛选
权限审计列表需要先完成以下筛选项才会加载数据:
申请类型:当前固定为表。
数据源类型:当前固定为MaxCompute。
工作空间:选择目标工作空间。
项目:选择目标MaxCompute项目。
Schema:仅当所选项目开启了三层模型时显示。支持多选。
页面顶部固定提示:权限审计不支持筛选已删除的工作空间、已删除的项目、已删除的对象。已删除的对象会在审计列表中过滤掉。
列表说明
筛选完成后,列表展示当前条件下的所有可审计的表资源;单击行首展开图标可查看该表的授权详情。展开后包含以下列:
列 | 说明 |
账号 | 拥有该表权限的账号。 |
授权方式 | 该权限来源(通过权限申请获得 / 通过主动授权获得 / 其他)。 |
权限 | 已授予的权限点(Select / Update / Download / Describe / Alter / Drop 等)。 |
到期时间 | 该权限的有效截止时间;永久权限显示为永久。 |
回收与查看字段权限
展开行的操作列提供以下两个按钮:
回收权限:勾选要回收的权限点后确认,立即从该账号回收对应表级权限。
查看权限:弹出详情对话框,列出该账号在该表上的所有列级权限。可在弹窗中多选字段执行回收字段权限。
若当前账号未开通权限审计能力,展开行区域将显示「无权限」缺省页。请联系租户管理员为该账号开通权限审计相关能力后再使用。