应该是可以通过配置:
修改Druid项目中distribution目录下的pom文件,在project.build.plugins.plugin.executions.execution..configuration.arguments 标签加入以下两行代码:
[mw_shl_code=bash,true]-c
io.druid.extensions:druid-kerberos[/mw_shl_code]
########################
更多:
Druid集成Kerberos
1.为Druid创建用户
根据Druid官网给出的关于Druid-Kerberos插件配置:
[mw_shl_code=bash,true]druid.hadoop.security.kerberos.principal=druid/[email protected]
druid.hadoop.security.spnego.principal=HTTP/[email protected][/mw_shl_code]
Druid内部交流需要用到druid/[email protected]和HTTP/[email protected]用户,因此我们需要为集群中的每台机器创建以上两个用户,在 dev224.sugo.net上执行以下命令:
[mw_shl_code=bash,true]kadmin.local -q "addprinc -randkey druid/[email protected]"
kadmin.local -q "addprinc -randkey druid/[email protected]"
kadmin.local -q "addprinc -randkey druid/[email protected]"
kadmin.local -q "addprinc -randkey HTTP/[email protected]"
kadmin.local -q "addprinc -randkey HTTP/[email protected]"
kadmin.local -q "addprinc -randkey HTTP/[email protected]"[/mw_shl_code]
-randkey标志没有为新principal设置密码,而是指示kadmin生成一个随机密钥。之所以在这里使用这个标志,是因为以上principal不需要用户交互,仅是Druid内部使用,同时也可以隔绝其它principal的访问,保证了Druid内部的安全性.
创建完成后,查看:
[mw_shl_code=bash,true]$ kadmin.local -q "listprincs"
[/mw_shl_code]
2. 创建keytab文件
keytab是包含principals和加密principal key的文件. keytab文件对于每个host是唯一的,因为key中包含 hostname. keytab文件用于不需要人工交互和保存纯文本密码,实现到kerberos上验证一个主机上的