一种基于Hadoop的多租户网盘鉴权方法及系统与流程

文档序号:12493344阅读:459来源:国知局

本发明涉及网络认证领域,特别是涉及一种基于Hadoop的多租户网盘鉴权方法及系统。



背景技术:

Hadoop(Apache基金会所开发的分布式系统基础架构)提供了两种安全机制:Simple和Kerberos。如果希望实现存储在hadoop之上的安全性,可以使用hadoop支持的kerberos(网络认证协议)安全机制。Kerberos是一个基于共享密钥对称加密的安全网络认证系统,它避免了将密码(包括密码hash)在网上传输,而是将密码作为对称加密的密钥,通过能不能解密来验证用户的身份;

负责管理发放Ticket(记录)和记录授权的中心服务器被称为KDC(Key Distribution Center),它知道所有用户和服务的密码。在Kerberos域(realm)中每添加一个服务或者用户就要添加一条principal(安全个体),每个principal都有一个密码。用户principal的密码用户自己记住,服务的principal密码服务自己记录在硬盘上(keytab文件中);

用户principal的命名类似elis/admin@EXAMPLE.COM,形式是用户名/角色/realm域。服务principal的命名类似ftp/station@EXAMPLE.COM,形式是服务名/地址(提供者)/realm域。

对于基于Hadoop并且通过Kerberos来保证集群安全的多租户网盘系统来说,每个用户在客户机上使用网盘读写功能之前,均需要先进行kerberos权限校验,但是,无论是输入用户名密码还是keytab文件,都无法与现有网盘系统进行集成。



技术实现要素:

为了克服上述现有技术的缺陷,本发明要解决的技术问题是提供一种基于Hadoop的多租户网盘鉴权方法及系统。

为解决上述技术问题,本发明中的一种基于Hadoop的多租户网盘鉴权方法,包括:

客户端中鉴权模块接收用于用户检验的登录配置数据;

所述鉴权模块在接收后,将所述登录配置数据发送给kerberos中心的Keytab文件管理模块;

所述Keytab文件管理模块将所述登录配置数据发送给统一用户鉴权系统;

所述统一用户鉴权系统将校验结果响应给所述Keytab文件管理模块。

可选地,所述客户端中鉴权模块接收用于用户检验的登录配置数据,包括:

所述客户端在检测到网盘程序启动时,调用鉴权模块接收用于用户检验的登录配置数据。

可选地,所述统一用户鉴权系统将校验结果响应给所述Keytab文件管理模块之后,还包括:

所述Keytab文件管理模块根据所述校验结果,向所述鉴权模块反馈对应的Keytab文件。

具体地,所述Keytab文件管理模块根据所述校验结果,向所述鉴权模块反馈对应的Keytab文件之后,还包括:

所述鉴权模块根据所述Keytab文件,完成鉴权,得到Token字符串;

客户端向Hadoop集群发起网盘读写操作请求,所述请求携带所述Token字符串;

所述Hadoop集群对所述Token字符串进行校验,在校验通过时,执行所述读写操作。

具体地,所述得到Token字符串之后还包括:

所述鉴权模块将所述Keytab文件删除。

为解决上述技术问题,本发明中的一种基于Hadoop的多租户网盘鉴权系统,包括:

客户端中鉴权模块,用于接收用于用户检验的登录配置数据;以及在接收后,将所述登录配置数据发送给kerberos中心的Keytab文件管理模块;

所述Keytab文件管理模块,用于将所述登录配置数据发送给统一用户鉴权系统;

所述统一用户鉴权系统,用于将校验结果响应给所述Keytab文件管理模块。

可选地,所述所述客户端还包括:

调用模块,用于在检测到网盘程序启动时,调用所述鉴权模块接收用于用户检验的登录配置数据。

可选地,所述Keytab文件管理模块,还用于根据所述校验结果,向所述鉴权模块反馈对应的Keytab文件。

具体地,所述鉴权模块,还用于根据所述Keytab文件,完成鉴权,得到Token字符串;

所述调用模块,还用于向Hadoop集群发起网盘读写操作请求,所述请求携带所述Token字符串;

所述Hadoop集群对所述Token字符串进行校验,在校验通过时,执行所述读写操作。

具体地,所述鉴权模块,还用于删除所述Keytab文件。

本发明有益效果如下:

本发明中方法及系统当用户在客户机执行Hadoop相关程序时,通过客户端鉴权模块,仅一次性输入用户名和密码,即可完成用户在两个系统的鉴权过程,保证了鉴权过程的唯一性和可靠性。

附图说明

图1是本发明实施例中一种基于Hadoop的多租户网盘鉴权的时序图。

具体实施方式

为了解决现有技术的问题,本发明提供了一种基于Hadoop的多租户网盘鉴权方法及系统,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不限定本发明。

如图1所示,一种基于Hadoop的多租户网盘鉴权方法,包括:

客户端中鉴权模块接收用于用户检验的登录配置数据;

所述鉴权模块在接收后,将所述登录配置数据发送给kerberos中心的Keytab文件管理模块;

所述Keytab文件管理模块将所述登录配置数据发送给统一用户鉴权系统;

所述统一用户鉴权系统将校验结果响应给所述Keytab文件管理模块。

进一步说,所述客户端中鉴权模块接收用于用户检验的登录配置数据,包括:

所述客户端在检测到网盘程序启动时,调用鉴权模块接收用于用户检验的登录配置数据。

进一步说,所述统一用户鉴权系统将校验结果响应给所述Keytab文件管理模块之后,还包括:

所述Keytab文件管理模块根据所述校验结果,向所述鉴权模块反馈对应的Keytab文件。

具体说,所述Keytab文件管理模块根据所述校验结果,向所述鉴权模块反馈对应的Keytab文件之后,还包括:

所述鉴权模块根据所述Keytab文件,完成鉴权,得到Token字符串;

客户端向Hadoop集群发起网盘读写操作请求,所述请求携带所述Token字符串;

所述Hadoop集群对所述Token字符串进行校验,在校验通过时,执行所述读写操作。

具体说,所述得到Token字符串之后还包括:

所述鉴权模块将所述Keytab文件删除。

本发明实施例描述了一种将Kerberos鉴权与业务系统的鉴权系统进行有机结合的方式,当用户在客户机执行Hadoop相关程序时,通过封装的客户端鉴权模块,仅一次性输入用户名和密码,即可完成用户在两个系统的鉴权过程,保证了鉴权过程的唯一性和可靠性。

举例说明,如图1所示:

1、当某用户登录安装有kerberos的客户机(即客户端)后,启动操作网盘之前,先调用封装的鉴权客户端程序(即鉴权模块),输入用户名和密码(即登录配置数据),鉴权客户端程序将用户名和密码发送到Kerberos中心的Keytab文件管理模块;

2、Keytab文件管理模块并不在kerberos中心进行用户校验,而是将用户名和密码发送到业务系统的统一用户鉴权系统;

3、统一用户鉴权系统将校验通过后,反馈给Keytab文件管理模块;

4、Keytab文件管理模块将该用户的Keytab文件反馈给客户机的鉴权客户端程序;

5、鉴权客户端程序代替该用户完成kinit鉴权过程,获得Token字符串,然后将Keytab文件删除,避免被截获利用;

6、客户端程序通过API向Hadoop集群发起网盘读写操作请求;

7、Hadoop集群校验Token是否有效,有效则运行操作,返回操作结果。

本发明实施例中方法避免了在Kerberos中心和业务系统的鉴权系统中分别维护两套用户名和密码;同时客户端获得token后及时删除用户的keytab文件,避免被恶意拷贝利用。

本发明进一步提供一种基于Hadoop的多租户网盘鉴权系统。

如图1所示,本发明实施例中一种基于Hadoop的多租户网盘鉴权系统,包括:

客户端中鉴权模块,用于接收用于用户检验的登录配置数据;以及在接收后,将所述登录配置数据发送给kerberos中心的Keytab文件管理模块;

所述Keytab文件管理模块,用于将所述登录配置数据发送给统一用户鉴权系统;

所述统一用户鉴权系统,用于将校验结果响应给所述Keytab文件管理模块。

进一步说,所述所述客户端还包括:

调用模块,用于在检测到网盘程序启动时,调用所述鉴权模块接收用于用户检验的登录配置数据。

进一步说,所述Keytab文件管理模块,还用于根据所述校验结果,向所述鉴权模块反馈对应的Keytab文件。

具体说,所述鉴权模块,还用于根据所述Keytab文件,完成鉴权,得到Token字符串;

所述调用模块,还用于向Hadoop集群发起网盘读写操作请求,所述请求携带所述Token字符串;

所述Hadoop集群对所述Token字符串进行校验,在校验通过时,执行所述读写操作。

具体说,所述鉴权模块,还用于删除所述Keytab文件。

本发明实施例中系统当用户在客户机执行Hadoop相关程序时,通过封装的客户端鉴权程序,仅一次性输入用户名和密码,即可完成用户在两个系统的鉴权过程,保证了鉴权过程的唯一性和可靠性;避免了在Kerberos中心和业务系统的鉴权系统中分别维护两套用户名和密码;同时客户端获得token后及时删除用户的keytab文件,避免被恶意拷贝利用。

虽然本申请描述了本发明的特定示例,但本领域技术人员可以在不脱离本发明概念的基础上设计出来本发明的变型。

本领域技术人员在本发明技术构思的启发下,在不脱离本发明内容的基础上,还可以对本发明做出各种改进,这仍落在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1