使用Ranger对Hive数据进行脱敏

简介: Ranger支持对Hive数据的脱敏处理(Data Masking),它对`select`的返回结果进行脱敏处理,对用户屏蔽敏感信息。

Ranger支持对Hive数据的脱敏处理(Data Masking),它对select的返回结果进行脱敏处理,对用户屏蔽敏感信息。

备注:
该功能针对HiveServer2的场景(如beeline/jdbc/Hue等途径执行的select),对于使用Hive Client(如hive -e 'select xxxx')不支持。

接下来介绍如何在E-MapReduce中使用该功能的步骤。

1.Hive组件配置Ranger

参见文档: Enable Hive Ranger Plugin

2. 配置Data Mask Policy

在Ranger UI的emr-hive的service页面可以对用户访问Hive数据进行脱敏处理。

  • 支持多种脱敏处理方式,比如显示开始的4个字符/显示最后的4个字符/Hash处理等
  • 配置Mask Policy时不支持通配符(如policy中table/column不能配置为*)
  • 每个policy只能配置一个列的mask策略,多个列需要配置各自的mask policy

配置Policy流程:
mask_1

mask_2

mask_4

最后保存即可。

3. 测试数据脱敏

场景:
用户test在select表testdb1.testtbl中列a的数据时,只显示最开始的4个字符。

流程:
a) 配置policy
在上面一节的最后一个截图,其实就是配置了该场景的一个policy,可参考上图(其中脱敏方式选择了show first 4)。

b) 脱敏验证
test用户使用beeline连接HiveServer2,执行select a from testdb1.testtbl

mask5

如上图所示,test用户执行select命令后,列a显示的数据只有前面4个字符是正常显示,后面字符全部用x来脱敏处理。

相关实践学习
数据湖构建DLF快速入门
本教程通过使⽤数据湖构建DLF产品对于淘宝用户行为样例数据的分析,介绍数据湖构建DLF产品的数据发现和数据探索功能。
快速掌握阿里云 E-MapReduce
E-MapReduce 是构建于阿里云 ECS 弹性虚拟机之上,利用开源大数据生态系统,包括 Hadoop、Spark、HBase,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。 本课程主要介绍阿里云 E-MapReduce 的使用方法。
目录
相关文章
|
1月前
|
SQL 分布式计算 Hadoop
创建hive表并关联数据
创建hive表并关联数据
41 0
|
8月前
|
SQL Java 大数据
Hive实战(03)-深入了解Hive JDBC:在大数据世界中实现数据交互
Hive实战(03)-深入了解Hive JDBC:在大数据世界中实现数据交互
290 1
|
9月前
|
SQL 分布式计算 算法
大数据Hive数据查询语言DQL
大数据Hive数据查询语言DQL
64 0
|
9月前
|
SQL 存储 分布式计算
大数据Hive数据操纵语言DML
大数据Hive数据操纵语言DML
111 0
|
8月前
|
SQL 存储 分布式数据库
【通过Hive清洗、处理和计算原始数据,Hive清洗处理后的结果,将存入Hbase,海量数据随机查询场景从HBase查询数据 】
【通过Hive清洗、处理和计算原始数据,Hive清洗处理后的结果,将存入Hbase,海量数据随机查询场景从HBase查询数据 】
134 0
|
2天前
|
SQL 分布式计算 HIVE
实时计算 Flink版产品使用问题之同步到Hudi的数据是否可以被Hive或Spark直接读取
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2天前
|
消息中间件 存储 SQL
实时计算 Flink版产品使用问题之kafka2hive同步数据时,如何回溯历史数据
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6天前
|
SQL 分布式计算 NoSQL
使用Spark高效将数据从Hive写入Redis (功能最全)
使用Spark高效将数据从Hive写入Redis (功能最全)
|
6天前
|
SQL 关系型数据库 MySQL
基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)
基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)
|
23天前
|
SQL 分布式计算 关系型数据库
使用 Spark 抽取 MySQL 数据到 Hive 时某列字段值出现异常(字段错位)
在 MySQL 的 `order_info` 表中,包含 `order_id` 等5个字段,主要存储订单信息。执行按 `create_time` 降序的查询,显示了部分结果。在 Hive 中复制此表结构时,所有字段除 `order_id` 外设为 `string` 类型,并添加了 `etl_date` 分区字段。然而,由于使用逗号作为字段分隔符,当 `address` 字段含逗号时,数据写入 Hive 出现错位,导致 `create_time` 值变为中文字符串。问题解决方法包括更换字段分隔符或使用 Hive 默认分隔符 `\u0001`。此案例提醒在建表时需谨慎选择字段分隔符。