如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

下面介绍如何在Ranger中配置使用自定义的UDF进行Hive的列脱敏。
  • 测试环境

1.操作系统Redhat7.6

2.CDP DC7.0.3

3.集群已启用Kerberos

4.使用root用户操作

使用自定义UDF进行脱敏    


2.1 授予表的权限给用户

1.在Ranger中创建策略,将ranger_test库下的t1表的select权限授予测试用户

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

2.使用测试用户查询t1表

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

目前用户ranger_user1拥有对t1表的select权限

2.2 授予使用UDF的权限给用户

1.将自定义UDF的jar包上传到服务器,并上传到HDFS,该自定义UDF函数的作用是将数字1-9按照a-j进行转换

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

2.使用hive用户创建UDF函数

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

3.测试UDF函数的使用

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

4.使用测试用户登录Hive并使用UDF函数,提示没有权限

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

5.创建策略,授予测试用户使用该UDF函数的权限

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

6.再次使用测试用户进行验证,使用UDF函数成功

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

2.3 配置使用自定义的UDF进行列脱敏

1.配置脱敏策略,使用自定义UDF的方式对phone列进行脱敏

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

2.使用ranger_user1查看t1表

如何在Kerberos环境下用Ranger对Hive中的列使用自定义UDF脱敏

由上图可见,自定义UDF脱敏成功

1.对于任何可用的UDF函数,都可以在配置脱敏策略时使用自定义的方式配置进策略中,然后指定用户/用户组进行脱敏。

2.在创建脱敏策略之前,需要先确保对应的用户/用户组已经拥有对表以及UDF函数的权限,否则脱敏策略不会默认授予用户/用户组对于表和UDF函数的权限。

3.在配置脱敏策略时,方式选择Custom,在输入框中填入UDF函数的使用方式即可,例如:function_name(arg)

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。