Zeppelin连接Spark实现SQLStdBasedAuthorization权限验证

1、zeppelin简介

zeppelin是基于Web的可视化交互应用,以notebook为抽象提供服务,支持jdbc、spark、python、md、shell等解析器,其可视化功能非常强大,且提供定时任务和文档共享,非常方便数据分析使用。因为zeppelin先天对spark有很好的支持,故生产上采用它来作为使用spark计算引擎的接口,可是zeppelin的权限功能尚不完善,尤其与spark sql对接使用时不能提供完善的权限验证功能,故需要一些改造。

2、业务背景

当前spark的ThriftServer默认是cli模式(参考Hive的三种权限认证模型),设计上仅支持Storage based Authorization标准的权限验证,不能像hive的HiveServer2一样提供很好的鉴权服务;通过调研,为了让zeppelin通过jdbc连接spark实现SQL based Authorization标准权限验证,本文采用对zeppelin、spark和hive三端进行源代码改造的方式实现更完善的权限验证功能。

3、实现的功能

最终我们实现zeppelin多租户使用,不同用户提交的query对应到不同的yarn的队列上,同时对用户提交的query实现表级鉴权,增强访问安全性。后期还打算对zeppelin使用编码模式提交的SQL进行鉴权,达到全面开放zeppelin的spark应用。

整个验证流程如下图:

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值