使用Ranger对Hive数据进行脱敏

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 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 的使用方法。
目录
相关文章
|
2月前
|
SQL 分布式计算 Hadoop
创建hive表并关联数据
创建hive表并关联数据
46 0
|
9月前
|
SQL Java 大数据
Hive实战(03)-深入了解Hive JDBC:在大数据世界中实现数据交互
Hive实战(03)-深入了解Hive JDBC:在大数据世界中实现数据交互
365 1
|
10月前
|
SQL 分布式计算 算法
大数据Hive数据查询语言DQL
大数据Hive数据查询语言DQL
70 0
|
10月前
|
SQL 存储 分布式计算
大数据Hive数据操纵语言DML
大数据Hive数据操纵语言DML
114 0
|
9月前
|
SQL 存储 分布式数据库
【通过Hive清洗、处理和计算原始数据,Hive清洗处理后的结果,将存入Hbase,海量数据随机查询场景从HBase查询数据 】
【通过Hive清洗、处理和计算原始数据,Hive清洗处理后的结果,将存入Hbase,海量数据随机查询场景从HBase查询数据 】
151 0
|
29天前
|
SQL 分布式计算 HIVE
实时计算 Flink版产品使用问题之同步到Hudi的数据是否可以被Hive或Spark直接读取
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
1月前
|
SQL 分布式计算 NoSQL
使用Spark高效将数据从Hive写入Redis (功能最全)
使用Spark高效将数据从Hive写入Redis (功能最全)
|
1月前
|
SQL 关系型数据库 MySQL
基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)
基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)
|
2月前
|
SQL 分布式计算 关系型数据库
使用 Spark 抽取 MySQL 数据到 Hive 时某列字段值出现异常(字段错位)
在 MySQL 的 `order_info` 表中,包含 `order_id` 等5个字段,主要存储订单信息。执行按 `create_time` 降序的查询,显示了部分结果。在 Hive 中复制此表结构时,所有字段除 `order_id` 外设为 `string` 类型,并添加了 `etl_date` 分区字段。然而,由于使用逗号作为字段分隔符,当 `address` 字段含逗号时,数据写入 Hive 出现错位,导致 `create_time` 值变为中文字符串。问题解决方法包括更换字段分隔符或使用 Hive 默认分隔符 `\u0001`。此案例提醒在建表时需谨慎选择字段分隔符。
|
2月前
|
SQL 数据采集 存储
Hive实战 —— 电商数据分析(全流程详解 真实数据)
关于基于小型数据的Hive数仓构建实战,目的是通过分析某零售企业的门店数据来进行业务洞察。内容涵盖了数据清洗、数据分析和Hive表的创建。项目需求包括客户画像、消费统计、资源利用率、特征人群定位和数据可视化。数据源包括Customer、Transaction、Store和Review四张表,涉及多个维度的聚合和分析,如按性别、国家统计客户、按时间段计算总收入等。项目执行需先下载数据和配置Zeppelin环境,然后通过Hive进行数据清洗、建表和分析。在建表过程中,涉及ODS、DWD、DWT、DWS和DM五层,每层都有其特定的任务和粒度。最后,通过Hive SQL进行各种业务指标的计算和分析。
435 1
Hive实战 —— 电商数据分析(全流程详解 真实数据)