drill 学习 五 配置说明- 安全

安全是一个比较重要的,但是在实际的开发中,大家可能关注的不是很多,drill 安全配置包含:

  • 认证: 基于Kerberos模式,用户密码模式,签名
  • 加密: 基于Kerberos提供数据的保密以及一致性
  • 授权: 当前主要基于hive 授权配置模拟用户
  • 模拟: 配置模拟用户,配置入展模拟,使用hive配置用户模拟

drill 安全通信模式

drill 包含了5个安全的通信模式,如下图

 

 

  • web客户端的安全模式

web client 的功能:提交查询,监控查询,配置存储插件
比较遗憾的是官方文档关于认证部分文档缺失(目前版本没看到),但是官方提供了一种基于;linux
pam也是一个不错的选择,参考图

 

 


加密部分主要是基于tls 的通信模型,用户模拟从官方文档的介绍更多是关于数据存储通信的

  • drill 客户端以及drillbit 到zk 的安全
    认证不支持,加密部分可以通过zk 的ssl 模式
  • driilbit 到hive 存储插件的安全
    这部分主要依赖的是hive 的模式,当然并不是一个特别通用的模式

角色以及权限

drill 支持两类不同的角色: 用户以及管理员

  • 用户角色
    这个更多是关于存储插件对于数据员的配置的
  • 管理员角色(似乎没有实现,而且缺少相关文档)
    当开启管理员模式的时候,只要管理员的用户才能进行如下操作:
 
修改系统级别的配置选项 
基于web 以及api 更新存储插件的配置
用户以及管理员有不用的界面操作
查看当前集群运行查询状态的profile
取消当前运行的查询

说明

关于drill 安全部分官方文档也不是特别清晰,而且有一些文档的缺失,比如对于存储插件的安全管理也是一个风险,比较
期待官方会有比较完整的解决方案,整理的文档不是很全,主要是发现官方的信息不是很完整 ,只摘录了部分

参考资料

https://drill.apache.org/docs/configuring-user-impersonation/#impersonation-and-views
https://drill.apache.org/docs/using-jpam-as-the-pam-authenticator/
https://drill.apache.org/docs/using-libpam4j-as-the-pam-authenticator/

posted on 2020-10-04 15:09  荣锋亮  阅读(341)  评论(0编辑  收藏  举报

导航