Linux7 下Hadoop集群用户管理方案之一 用户管理集群方案概述

xiaoxiao2021-02-28  110

分为几个步骤 方案调研CM的部署Kerberos的安装与集成方案的实践 实现添加用户功能 第一部分:方案的调研与确认 需要做一个大数据教育平台,面向学校,培训机构等,可以基于同一个大数据基础环境,学生可以进行大数据实践,而不需要复杂的搭建过程。 HDFS章节: 想做到这一点,不可避免的就是数据隔离的问题,文件不能被互删,只能读取自己的文件,这是我们首要面临的问题。为了解决这个问题调研了很多种方式。最终选用的方式是: 基于Kerberos的认证,基于HDFS的权限管理的方案。 我们知道HDFS的权限是基于POXIS接口模型,类似于linux的权限管理。可以实现基本的数据权限管理。但是HDFS有一个问题就是,默认是没有用户认证的。他采用的是当前系统用户,即在linux下输入命令 'whoami' 得到的用户,而其他的客户端访问HDFS时,也可以设置系统变量来修改这个用户名,导致所有的客户端访问HDFS主节点都可以有最高的权限,删除所有的文件。这是一个件非常危险的事情。 通过两个图来说明一下更直接明了。 图中在hdfs中创建了目录,并且拥有人设置为shihy,权限是700,只有拥有人有权限操作。 用户shihy访问时,通过设置系统用户shihy可以访问。 用户liulei访问时,设置为liulei不可以访问。这是没有问题的。 但是,用户liulei设置系统用户为shihy,那hdfs就认为访问用户就是shihy,就可以访问了,而真实用户其实是liulei。 可以可出,不同的用户,可以通过修改  "HADOOP_USER_NAME" 这个内部属性来修改HDFS识别到的系统用户。 这就需要使用其他方式来做用户的认证,来确认,访问用户A就是A,而不是B。 这里就引入了hdfs支持的一种网络认证协议Kerberos。非常的安全,感兴趣的可以调到这里详细看一下原理。 http://biz.chinabyte.com/189/2038189.shtml 最终就确定了我们的 方案。 使用Kerberos做用户认证。证明A就是A,而不是B。规避伪造用户的风险。使用HDFS的原生协议做权限认证。为每个用户创建自己的私有目录。
转载请注明原文地址: https://www.6miu.com/read-85120.html

最新回复(0)