安全设置是您可以对数据安全及访问进行精细化控制、对SPARK Batch任务(Spark Jar、PySpark)的开关及鉴权模式的设置,来保障数据的安全性。本文为您介绍如何设置严格权限模式和SPARK Batch任务(Spark Jar、PySpark)。
前提条件
需购买智能研发版或基础研发版才能使用安全设置功能。
严格权限模式
背景信息
Dataphin管理中心支持项目安全模式设置功能,在未设置的情况下,会存在以下安全问题:
不同项目,在项目管理员不知情的情况下,用户可以随意跨项目进行DDL操作。
说明DDL语句详情,请参见DDL语句。
同一项目,用户可以在Dev环境直接操作Prod环境的数据,造成Prod环境数据泄漏或意外变更。
下表以开发者角色为例,介绍安全模式开启与关闭的情况下,对项目的操作权限。
操作
默认(权限模式均未开启)
跨项目安全模式(开启)
生产数据安全模式(开启)
当前项目Dev环境的所有表操作
支持
-
-
当前项目Prod环境的所有表操作
支持
-
不支持
跨项目查询
支持
-
-
跨项目DDL
支持
不支持
-
重要设置安全模式后,项目数据有更高的安全性,但是会导致系统使用流畅程度下降,建议您根据业务需求进行设置。
表示当前操作不受跨项目安全模式或生产数据安全模式功能管控。
严格权限模式的默认配置
在Dataphin首页的顶部菜单栏,选择管理中心 > 规范设置。
在左侧导航栏选择数据访问 > 安全设置,进入安全设置页面。
在安全设置页面,单击严格权限模式页签,在默认配置区域,开启或关闭跨项目安全模式、生产数据安全模式。
严格权限模式
描述
跨项目安全模式
关闭:在具备操作目标对象权限的前提下,允许跨项目执行DDL任务。
开启:禁止跨项目执行和提交DDL任务(包括建表、删表、改表等)。
生产数据安全模式
关闭:允许在Dev环境修改Prod环境数据。
开启:在Dev环境将不能修改Prod环境的数据(包括表的增删改)。
说明开启后,如需修改Prod环境的数据,需要走发布流程,详情请参见发布中心。
严格权限模式的项目配置
未单独配置的项目以默认配置为准。
每个项目仅可配置一次安全模式。
在严格权限模式页签,单击添加安全模式配置按钮。
在添加安全模式配置对话框,选择需要开启严格权限模式的项目。
参数
描述
项目
选择需要配置安全模式的项目,支持多选。
跨项目安全模式
开启:禁止从任意项目到当前项目DDL(create、drop、alter)。
关闭:允许有权限的账号跨项目执行DDL操作。
生产数据安全模式
开启:禁止从任意项目DDL(create、drop、alter)该项目的生产环境。
关闭:允许有权限的账号DDL该项目的生产环境数据。
说明开启后,如需修改Prod环境的数据,需要走发布流程,详情请参见发布中心。
单击确定,完成项目级的严格权限模式配置。
项目配置列表
支持在项目配置列表查看项目的名称、跨项目安全模式和生产数据安全模式的状态。
(可选)您可以根据项目的名称搜索目标项目。
您可以对目标项目执行如下操作。
操作
描述
查看安全模式说明
可单击跨项目安全模式或生产数据安全模式后的
图标,再单击查看图解,了解跨项目安全模式和生产数据安全模式的管控详情。
编辑
可添加或减少项目、开启或关闭跨项目安全模式和生产数据安全模式的状态。
删除
项目安全模式配置删除后不可撤销,请谨慎操作。
SPARK_JAR_ON_MAX_COMPUTE任务
使用限制
在使用SPARK_JAR_ON_MAX_COMPUTE任务时,需要对逻辑表的访问进行鉴权(读、写等权限)。
不同的计算引擎支持不同版本的SPARK_JAR_ON_MAX_COMPUTE任务(MaxCompute引擎中的SPARK_JAR_ON_MAX_COMPUTE任务默认使用SPARK V2.4.5。Hadoop引擎中的SPARK_JAR_ON_MAX_COMPUTE任务使用的版本为TBD)。
MaxCompute引擎下可开启SPARK_JAR_ON_MAX_COMPUTE任务鉴权模式。Hadoop引擎下(除Inceptor外)不可开启SPARK_JAR_ON_MAX_COMPUTE任务鉴权模式。
当计算引擎为ArgoDB、Lindorm(计算引擎)、StarRocks、GaussDB(DWS)、Databricks、Doris、SelectDB时,不支持配置该任务。
操作步骤
在安全设置页面,单击SPARK_JAR_ON_MAX_COMPUTE任务页签,开启或关闭SPARK_JAR_ON_MAX_COMPUTE任务、鉴权模式。
SPARK_JAR_ON_MAX_COMPUTE任务
描述
SPARK_JAR_ON_MAX_COMPUTE
关闭:原有的SPARK_JAR_ON_MAX_COMPUTE任务仍可进行编辑、删除、执行、提交、发布等操作。
开启:支持创建SPARK_JAR_ON_MAX_COMPUTE任务。
鉴权模式
关闭:需开启OpenAPI功能模块的情况下才可开启。
开启:鉴权开启后,SPARK Batch任务(Spark Jar、PySpark)的数据访问将进行权限校验,原有的任务若无相应权限,则将导致任务执行失败。
说明开启后可访问逻辑表,且使用逻辑项目和板块的方式访问数据表。
单击确定,完成配置。
函数鉴权配置
默认所有项目下的离线函数可以通过项目名.函数名
的方式被调用,添加了函数鉴权的项目,需申请函数的使用权限。
背景信息
在本项目中创建的函数,可以被跨项目调用,对数据的安全性造成很大风险,需对离线函数的调用加以管控,增加数据安全性。
在安全设置页面,单击函数鉴权设置页签,再单击添加项目按钮。
在添加项目对话框中,配置参数。
项目:添加函数的所属项目。
重要如果生产环境中的任务调用了所选项目的函数,此操作可能导致生产任务报错,请谨慎操作。
单击确定,完成添加。
项目设置列表
您可查看已添加项目的名称、环境、描述信息。
您可通过项目名称关键字进行搜索。
支持对目标项目执行如下操作。
删除:单击目标项目操作列下的删除图标,删除后,该项目下的函数被跨项目调用时,将不再进行鉴权。