0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MaxCompute大数据安全方案介绍

电子设计 2018-10-29 09:51 次阅读

MaxCompute 是一个支持多租户的统一大数据处理平台,不同的用户对数据安全需求不尽相同。为了满足不同租户对数据安全的灵活需求,MaxCompute 支持项目空间级别的安全配置,ProjectOwner 可以定制适合自己的外部账号支持和鉴权模型并且在某种程度上保障Project的数据安全。

通常情况下,常见的开发模式为__MaxCompute+DataWorks__方式,针对这种场景下数据安全方案如下:

一、禁止数据下载到本地

禁止数据流出或下载本地

方式①:

数据保护机制也被称之为开启项目空间数据保护,可以通过MaxCompute console 开启服务端禁止数据流出:

方式②:

那么更多开发者通过DataWorks进行数据分析,通常会屏显在IDE上并且可以下载结果,这种可以通过项目管理 》 项目配置中打开“在本项目中能下载select结果”,具体如下:

那么这种情况下,在DataWorks查询结果页面就不可以通过“下载”按钮进行下载数据到本地。

开启数据保护机制后的数据流出方法

在您的Project被设置了ProjectProtection之后,您可能很快就会遇到这样的需求:user1向您提出申请,她的确需要将某张表的数据导出您的项目空间。

而且经过您的审查之后,那张表也的确没有泄漏您关心的敏感数据。为了不影响user1的正常业务需要,MaxCompute为您提供了在ProjectProtection被设置之后的两种数据导出途径。

方式①:

ProjectOwner设置ExceptionPolicy,针对已经开启项目数据保护的进行开例外。具体方式如下(需要通过MaxCompute console操作):

SET ProjectProtection=true WITH EXCEPTION 《policyFile》

这种policy不同于Policy授权(尽管它与Policy授权语法完全一样),它只是对项目空间保护机制的例外情况的一种描述,即所有符合policy中所描述的访问情形都可以打破ProjectProtection规则。》》》policy详细文档

ProjectProtection是一种数据流向的控制,而不是访问控制。只有在用户能访问数据的前提下,控制数据流向才是有意义的。

*** 另外,可以通过show grants [for 《username》] [on type 《objectType》] 查看某用户权限,查看是否加例外成功。

方法②:

设置TrustedProject,若当前项目空间处于受保护状态,如果将数据流出的目标空间设置为当前空间的TrustedProject,那么向目标项目空间的数据流向将不会被视为触犯ProjectProtection规则。可以通过如下命令方式进行设置(需通过MaxCompute console进行):

二、IP白名单控制

MaxCompute支持Project级别的IP白名单。

设置IP白名单后,只有白名单列表中的IP(console或者SDK所在的出口IP)能够访问这个Project。

设置IP白名单后,您需要等待五分钟后才会生效。

切记在设置白名单的时候,加上自己当前机器IP,以免把自己屏蔽。

setproject odps.security.ip.whitelist=101.132.236.134,100.116.0.0/16,101.132.236.134-101.132.236.144;

白名单中IP列表的表示格式有三种。

单纯IP:例如101.132.236.134。

子网掩码:100.116.0.0/16。

网段:101.132.236.134-101.132.236.144。

具体详细教程可以参考,》》》》IP白名单控制。

更精细化的管理

当然MaxCompute Policy机制也可以实现控制某个用户/或者角色的用户从具体IP地址来访问具体资源(表、UDF、资源)等。

Policy样例:

授权用户alice@aliyun.com只能在“2013-11-11T23:59:59Z”这个时间点之前、只能从“10.32.180.0/23”这个IP段提交请求, 只允许在项目空间prj1中执行CreateInstance, CreateTable和 List操作,禁止删除prj1下的任何table。具体可以参考Policy文档。

三、数据保护伞(数据脱敏)

数据保护伞为DataWorks的一个数据安全模块,具体可以通过点击进入进行了解,其包括数据脱敏、安全审计等。https://help.aliyun.com/document_detail/86320.html

可以针对敏感数据在DataWorks屏显进行加**显示,如下图所示:

注意:数据保护伞是DataWorks的一个模块,如果使用了数据保护伞且进行了数据脱敏,但是通过console进行tunnel download还是未脱敏状态。

四、细粒度的权限管控

1、列级别LabelSecurity访问控制

项目空间中的LabelSecurity安全机制默认是关闭的,ProjectOwner可以自行开启。

【应用场景】

场景说明:user_profile是某项目空间中的一张含有敏感数据的表,它包含有100列,其中有5列包含敏感数据:id_card, credit_card, mobile, user_addr, birthday. 当前的DAC机制中已经授权了所有用户对该表的Select操作。ProjectOwner希望除了Admin之外,所有用户都不允许访问那5列敏感数据。

ProjectOwner操作步骤如下:

Alice是项目空间中的一员,由于业务需要,她要申请访问user_profile的mobile列的数据,需要访问1周时间。项目空间管理员操作步骤如下:

GRANT LABEL 2 ON TABLE user_profile TO USER alice WITH EXP 7;

更多关于列级别安全控制文档:https://help.aliyun.com/document_detail/34604.html

2、Role Policy管理自定义Role

很多用户会因为DataWorks内置的数据开发、运维、管理员等角色不能满足其个性化需求,会基于ACL创建符合自己业务逻辑的角色如数据分析师、ETL开发等,基于这些role如何进行复杂的授权,如批量授予ods_开头的表权限,但限制条件的,以及Deny类型的角色,这个时候就需要结合Role policy来精细化管理。

一次操作对一组对象进行授权,如所有的函数、所有以”taobao”开头的表。

带限制条件的授权,如授权只会在指定的时段内才会生效、当请求者从指定的IP地址发起请求时授权才会生效、或者只允许用户使用SQL(而不允许其它类型的Task)来访问某张表。

方式①:

Policy操作代码如下所示:

更多关于Policy的介绍以及操作详见文档:http://www.aiwanba.net/plugin/odps-doc/prddoc/odps_security/odps_sec_authorization_dac.html

方式②:

通过DataWorks-项目管理-MaxCompute配置-自定义用户角色中进行。

创建步骤:

【新增角色】点击新建角色,填写角色名称,勾选需要加入该角色的账号(子账号用户)。

【角色授权】包括两种一个是表一个是项目。以表为例:

选择需要授权的表,并赋予相应的操作权限,如下所示针对具体表赋予具体权限。

说明:上述两种方式最大的区别就是,role policy可以进行批量表授权,如以taobao_开头的。但是DataWorks大的方式需要逐个表来进行筛选并配置权限。

四、JDBC 2.4(数据安全加固)

MaxCompute JDBC 2.4针对数据安全加固做了一定的挑战,具体JDBC地址:https://github.com/aliyun/aliyun-odps-jdbc/releases

在JDBC中使用数据安全加固方案具体步骤:

下载JDBC 2.4(建议)

配置jdbc url,通常如下制定Tunnel endpoint地址,如 jdbc:odps:http://service.cn.maxcompute.aliyun-inc.com/api?tunnelEndpoint=http://dt.cn-shanghai.maxcompute.aliyun-inc.com。

具体region对应的MaxCompute Endpoint和Tunnel Endpoint可以参考文档:https://help.aliyun.com/document_detail/34951.html

开启项目保护SET ProjectProtection=true,不需要加exception例外,具体可以想见项目保护机制章节。

打开控制返回数据条数:setproject READ_TABLE_MAX_ROW=1000;

基于JDBC的工具进行查询,数据返回条数会控制在1000条以内。

说明:如果使用的版本小于JDBC 2.4,并且开启了项目保护那么通过JDBC方式会直接报错(无权限)。

作者:云栖社区 祎休

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据库
    +关注

    关注

    7

    文章

    3591

    浏览量

    63369
  • 大数据
    +关注

    关注

    64

    文章

    8649

    浏览量

    136587
收藏 人收藏

    评论

    相关推荐

    使用MaxCompute阿里大数据计算方法详解

    基于MaxCompute搭建社交好友推荐系统,使用MaxCompute阿里的大数据计算的方法可以做哪些事情,如果说是以社交好友的推荐,来给大家去演示一下。
    的头像 发表于 03-19 09:53 9563次阅读
    使用<b class='flag-5'>MaxCompute</b>阿里<b class='flag-5'>大数据</b>计算方法详解

    阿里云MaxCompute,用计算力让数据发声

    、规划和决策,使客户自身的价值获得新的爆发,真正把MaxCompute卓越的计算力转化为巨大的社会效益和市场价值。作为提供快速、完全托管的PB级数据仓库解决方案大数据计算服务,
    发表于 01-22 17:45

    阿里云MaxCompute印度开服,加速大数据产业升级

    开服的阿里云大数据计算服务MaxCompute可向用户提供快速、完全托管的PB级数据仓库解决方案,支持多源异构的数据导入以及多种经典的分布式
    发表于 01-22 17:55

    阿里云MaxCompute大数据)公开数据集---带你玩转人工智能

    /40813/目前阿里云MaxCompute大数据产品已经免费向全部用户开放了多种公用数据集。在此之前,获取,分析,下载自定义的大型分析数据集需要数小时乃至数天才能完成。而现在阿里云的
    发表于 01-23 17:16

    阿里云大数据利器Maxcompute学习之-假如你使用过hive

    的功能以及用法和上述hive功能基本一致。先看下Maxcompute的组件: MaxCompute 主要服务于批量结构化数据的存储和计算,可以提供海量数据仓库的解决
    发表于 01-23 17:44

    阿里云大数据MaxCompute计算资源分布以及LogView分析优化

    摘要: MaxCompute(原ODPS)的概念 海量数据处理平台,服务于批量结构化数据的存储和计算,提供海量数据仓库的解决方案以及针对
    发表于 01-31 16:27

    MaxCompute印尼开服,成为阿里云第十二个大数据服务节点

    数据的存储和计算,可以提供海量数据仓库的解决方案以及针对大数据的分析建模服务。阿里巴巴的离线数据业务全部都运行在
    发表于 02-07 11:15

    基于阿里云数加MaxCompute的企业大数据仓库架构建设思路

    摘要:数加大数据直播系列课程主要以基于阿里云数加MaxCompute的企业大数据仓库架构建设思路为主题分享阿里巴巴的大数据是怎么演变以及怎样利用大数
    发表于 03-15 12:43

    全新一代人工智能计算引擎MaxCompute杭州开服,强化阿里云大数据能力,比肩谷歌微软

    摘要: 3月22日,阿里云将正式开服售卖华东1(杭州)节点的大数据计算服务MaxCompute,以进一步提升对华东区域客户服务的响应速度,推动杭州大数据、人工智能产业的加速发展。日前,全球权威调研
    发表于 03-28 14:33

    MaxCompute理解数据、运算和用户的大脑:基于代价的优化器

    》的分享,为大家分享阿里巴巴大数据计算服务的大脑——基于代价的优化器的设计和架构。MaxCompute简介大数据计算服务(MaxCompute)是一种快速、完全托管的PB/EB级
    发表于 03-30 10:22

    MaxCompute访问TableStore(OTS) 数据

    摘要: MaxCompute作为阿里云大数据平台的核心计算组件,承担了集团内外大部分的分布式计算需求。免费开通大数据服务:https://www.aliyun.com/product/odps前言
    发表于 04-02 11:10

    MaxCompute_2_MaxCompute数据迁移文档

    DataIDE上两个云账号之间数据迁移、还有网络不通的两个MaxCompute项目数据迁移等等下面我们逐个场景介绍。免费开通大数据服务:ht
    发表于 04-13 15:28

    阿里云大数据MaxCompute计算资源分布以及LogView分析优化

    摘要: 海量数据处理平台,服务于批量结构化数据的存储和计算,提供海量数据仓库的解决方案以及针对大数据的分析建模服务.(官方文档有这里就不多做
    发表于 04-26 14:53

    ofo在MaxCompute大数据开发之路

    应用,分享ofo 在MaxCompute大数据开发之路。演讲嘉宾简介:龙利民,ofo大数据大数据副总监。PPT材料下载地址:http://click.aliyun.com/m/10
    发表于 06-21 17:03

    大数据计算服务MaxCompute的使用教程

    阿里云大数据计算服务MaxCompute使用教程
    发表于 04-30 07:57