10.4 hadoop安全性kerberos安全验证和委托令牌

1.1  安全性

HDFS的文件许可模块可以组织程序漏洞而毁坏文件系统,也能阻止运行hadoop fs –rmr删除文件指令,但是无法组织恶意的用户假冒root身份来访问或者删除数据。需要使用Kerberos实现用户认证。

1.1.1         Kerberos和Hadoop

(1)客户端请求认证的步骤

 

 

 

 

1) 认证。客户端向认证服务器获取含时间票据授权票据(Ticket-Granting Ticket,TGT)。

2) 授权。客户使用TGT向票据授权服务器请求服务器票据。

3) 服务请求。客户端使用服务器票据向服务器发送请求。

(2)hadoop配置使用Kerberos

1)hadoop配置文件如何配置

core-site.xml文件中属性hadoop.security.authentication设置为kerberos启动kerberos认证。同时要将hadoop.security.authorization属性设置为true。用户调用kinit命令来执行认证,这个过程需要输入密码,用户申请到的TGT具有时效性,默认10小时,可以是一周。采用单次登陆(single sign-on)到hadoop。如果不希望输入密码,可以用ktutil命令创建一个Kerberos的keytab文件,保存密码使用命令kinit –t keytab执行认证。hadoop-policy.xml文件中访问控制列表ACL(access control list)配置哪些用户对哪些hadoop服务具有访问权限。

2)启动一个KDC(key distribution center)验证授权服务器

3)执行初始化验证任务kinit

可以输入kinit命令,会提示输入密码。或者kinit –t keytab指定密码文件。验证之后就可以hadoop fs –put qu.txt上传文件。

4)klist命令查看票据的过期时间,kdestory指令可销毁票据。

1.1.2         委托令牌

(1)委托令牌创建

一个HDFS读操作会与namenode和datanode多次交互,如果每次交互都要认证,则KDC压力会很大,所以使用委托令牌来支持后续认证。委托令牌由hadoop服务器创建。客户端首次登陆之后,从namenode服务器取得委托令牌,用令牌作为后续验证。

(2)块访问令牌

客户端执行HDFS块操作的委托令牌,客户端向namenode获取的委托令牌可以去datanode验证以获取数据,因为namenode会通过心跳将令牌传给datanode。通过设置属性dfs.block.access.token.enable属性为true来开启块访问令牌。

(3)HDFS之间共享令牌

将属性mapreduce.job.hdfs-servers设置为逗号隔开的HDFS URI列表,才能在其他HDFS共享令牌。

1.1.3         采用认证后安全性提高

(1)   分布式缓存分共享缓存和私有缓存。

(2)   用户只能操作自己的作业,需要将mapreduce.cluster.acls.enabled属性设置为true,mapreduce.job.acl-view-job和mapreduce.job.acl.modify-job属性设置可以查看和修改的的用户,用逗号隔开。

(3)   阻止遏抑的namenode和datanode或节点管理器加入集群,需要加入的节点要进行验证配置,例如datanode,把dfs.datanode.keytab.file设置为保存密码的keytab文件,其次在dfs.datanode.keyberos.principal和hadoop-policy.xml文件中的security.datanode.protocal.acl属性设置为datanode的用户名。配置权限验证。

(4)   任务只与父application master通讯,阻止攻击者获取数据。

(5)多个服务之间数据传输采用加密方式。

自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取:

https://www.cnblogs.com/bclshuai/p/11380657.html

posted @   一字千金  阅读(782)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示