1、服务器创建用户(所有节点都要创建)
useradd hive
passwd hive
2.1、KERBEROS创建主体
kadmin.local -q "addprinc hive/hive@HADOOP.COM"
2.2、在指定路径下(/root)生成KERBEROS密钥(生成秘钥以后原来的密码就变了,秘钥文件一定要备份一下,以免不小心丢失)
kadmin.local -q "xst -k /root/hive.keytab hive/hive@HADOOP.COM"
3、HUE授权(安装HUE的服务器:8889端口可以进入hue界面)
用户管理界面(服务器ip:8889/hue/useradmin/users/)创建用户组hive、创建用户hive并添加进hive组
角色授权管理界面(服务器ip:8889/hue/security/hive#@roles)创建hive角色,将该角色赋予hive数据库权限,并与hive组关联
心得:
1、权限控制的时候建议都起一样的名字,因为hue用户和分组、服务器用户和分组以及KERBEROS主体名称有一个对应的关系;
2、其中hue中的用户和分组要和服务器中的用户和分组一样;
3、linux服务器通过useradd添加的用户,会默认生成一个与用户名相同的用户组,如果此时hue中用户和分组名称不一样,会出现赋权不成功的情况
4、通过第三方软件、或者直接命令行链接数据库时,不需要hue账户,需要在KERBEROS主体上控制权限。
5、KERBEROS主体上控制权限的方法在hue 角色授权管理界面,把与KERBEROS主体名称相同的分组给予角色就可以实现权限控制(比如,主体名称是hive/hive,在hue角色授权管理界面给分组hive,授予了某一权限,则通过该主体链接到hive数据库后就只有该权限)。