用于云文件系统的认证和授权技术方案

技术编号:29011129 阅读:36 留言:0更新日期:2021-06-26 05:11
提供了用于通过以下处理来改进多租户公共云环境中的由网络文件系统服务进行的用户认证和访问控制的方法和系统,从文件系统客户端(客户端)接收连接到文件系统的请求,向控制系统发送用于客户端的身份认证的识别请求,从控制系统接收响应,在基于与客户端相关联的云租户信息确定到文件系统的连接被允许时,建立到文件系统的连接,从客户端接收由子用户对文件系统的访问尝试,基于云租户信息来认证子用户,发出安全令牌,所述安全令牌包括该子用户的全局唯一子用户标识符,以及使用安全令牌来为后续请求确定子用户对文件系统的访问权。为后续请求确定子用户对文件系统的访问权。为后续请求确定子用户对文件系统的访问权。

【技术实现步骤摘要】
【国外来华专利技术】用于云文件系统的认证和授权

技术介绍

[0001]文件系统用于控制在计算中如何存储和取得数据。通过将数据分成片段并给各个片段赋予名称,可以容易地分离和识别信息。每组数据称为“文件”,并且用于管理信息组及其名称的结构和逻辑规则称为“文件系统”。网络文件系统或分布式文件系统服务器在提供文件系统,服务器由一组客户端经由远程文件访问协议访问。网络文件系统客户端向用户提供与本地文件相同的接口和语义,例如安装/卸载、列出目录、字节边界处的读/写、系统的本地许可模型。
[0002]租户或顶层云用户是一组云用户,诸如组织或学校,它们共享对云服务的具有特定特权的公共访问。子用户是租户下的具有其自己的用户名、用户标识符(ID)和凭证的单独实体。
[0003]通常使用的网络文件系统协议,例如服务器消息块(SMB)和网络文件系统协议,仅称为NFS,已经发展为包括用户认证和文件访问授权。SMB,也称为公共因特网文件系统(CIFS),是主要用于在网络上的节点间共享访问文件和打印机的网络文件系统协议,并且还提供经认证的进程间通信机制。NFS允许客户端计算机上的用户像访问本地存储器那样通过计算机网络访问文件。
[0004]然而,这样的协议主要被设计成在企业内联网中工作,并且依赖于用户维护的集中式用户目录来提供进一步的子用户认证和访问控制。这些协议设计不足以解决公共云的异构、多租户性质。
附图说明
[0005]参照附图给出详细说明。在附图中,附图标记的最左边的数字表示附图标记首次出现的附图。在不同附图中使用相同的附图标记表示相似或相同的项目或特征。
[0006]图1例示了基于TCP连接的租户认证和授权的示例处理100。
[0007]图2例示了图1的多个框中的一个框的示例细节。
[0008]图3例示了图1的另一个框的示例细节。
[0009]图4例示了文件系统服务器的示例框图,其中示出了相关组件。
[0010]图5例示了利用SMB的文件系统客户端认证处理的示例框图。
[0011]图6例示了在文件系统客户端认证之后利用SMB的子用户认证处理的示例框图600。
[0012]图7例示了用于SMB操作授权处理的示例框图。
具体实施方式
[0013]本文所讨论的方法和系统涉及改进由多租户公共云环境中的网络文件系统服务进行的用户认证和细粒度访问控制,并且更具体地涉及使用两级用户认证和授权处理来改进安全性,其中,服务首先在传入连接(可以是传输控制协议(TCP)连接)处认证顶层租户,然后利用转嫁传递(pass

through)认证机制借助于中央用户数据库来认证全局唯一子用
户。
[0014]受完全管理的多租户公共云文件服务的关键要求可以是隔离由不同租户订购的资源,然后控制来自同一租户下的不同子用户的访问。然而,由于这种受完全管理的服务直接与由租户管理的用户数据库通信,因此会存在许多技术困难和安全问题。例如,由于与其它操作系统的协议兼容性困难,引入诸如Kerberos服务的受完全管理的多租户公共云网络认证可能不是理想的选项。
[0015]在公共云环境中由文件系统服务使用的一种认证/授权方案可以是使用标准安全协议提供租户级认证。例如,当建立SMB会话时,文件存储可以使用NTLAN管理器(NTLM)协议在集中式租户数据库的帮助下确认租户即存储帐户的用户名和密码是否正确。如果用户名和密码是正确的,则将不进一步验证子用户凭证,并且每个子用户将被视为顶层租户。然而,该方案不为子用户提供细粒度的访问控制,并且会受到潜在的攻击,因为认证仅基于租户凭证。
[0016]另一种方案可以是通过使用专用或私有网络来在网络层上隔离对文件系统的访问。利用这种方案,各个文件系统的安装目标实例必须驻留在专用IP网络中,并且仅允许指定的专用IP网络中的主机/虚拟机(VM)访问规定的文件系统,而拒绝来自指定的专用IP网络外部的客户端的访问。虽然该方案可以提供文件系统的良好隔离,但是需要在各个文件系统客户端在至少一个专用或私有网络内的环境中工作。在公共云环境中,该要求将增加所有权的总成本并降低云部署的灵活性,即,租户可以选择使系统在租户处于同一连接网络中的经典网络中运行。此外,对于子用户认证,该方案会要求租户维护其自己的子用户数据库,以保持子用户ID在文件系统客户端上一致,从而向小承租人增加成本,并且使用将限于NFS协议。
[0017]在不损失由单独的网络文件系统协议提供的安全能力的情况下,可以如下所述提供公共云中的增强且经济的认证和授权。
[0018]在公共云环境中,现代网络文件系统主要利用TCP作为传输协议。例如,SMB协议支持TCP、网络基本输入/输出系统(NetBIOS)和远程直接存储器访问(RDMA)作为传输协议。虽然由于网络基础设施限制和使用场景,SMB客户端可以仅通过公共云中的TCP协议连接到SMB文件系统服务器,但是基于TCP的面向连接的属性仍然可以实现面向连接的认证和资源授权。
[0019]图1例示了基于TCP连接的租户认证和授权的示例处理。
[0020]在框102处,为了安装文件系统,或者当文件系统服务器发生故障并且文件系统客户端针对服务而切换到另一服务器时,文件系统客户端或租户可以尝试建立到文件系统的连接(可以是TCP连接),例如通过在Windows操作系统(OS)中发出“net use”命令或在Linux OS中发出“安装”命令。其他示例可以包括:1)当文件系统被删除或文件系统的访问控制策略被改变或更新时,来自访问被删除/更新的文件系统的文件系统客户端的现有连接可以被文件系统服务器关闭,并且可以导致来自这些文件系统客户端的重新连接请求,以及2)当恶意攻击者构造文件系统协议数据分组,然后创建到文件服务器的TCP连接以尝试获得他人拥有的文件系统的访问权时。
[0021]当在框104处接收到来自文件系统客户端接收的新的TCP连接请求时,即尝试建立到文件系统的TCP连接,文件系统服务器可以在框106处开始同步认证和授权处理。文件系
统服务器和控制系统之间的所有通信可以在利用预先协商的会话密钥建立的安全通道上。当文件系统服务器处理来自文件系统客户端的连接请求(诸如上述请求)时,可执行租户认证,随后是文件系统级授权,以仅允许属于拥有该文件系统的租户的授权客户端建立到文件系统服务器的TCP连接,并阻止来自未授权客户端的连接请求。在该处理完成时,在授权文件系统客户端和文件系统服务器之间可以建立一个且仅一个TCP连接。然后,可以将文件系统的所有者预先定义的所有访问策略应用于TCP连接,以在正常操作期间授权单独的文件操作请求。附加地,在建立TCP连接时的认证可以增加文件系统的可用性,因为当认证子系统发生故障时,只有当前正在建立连接的文件系统客户端会受到影响,而当认证子系统发生故障时,具有已建立的TCP连接的客户端不会受到影响。
[0022]在框108处,文件系统服务器可以向控制系统发送识别请求以进行文件系统客户端的身份认证,并且可以在框110本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种文件系统服务器中的方法,所述方法包括:从文件系统客户端接收连接请求,所述连接请求是连接到文件系统的请求;向控制系统发送用于所述文件系统客户端的身份认证的识别请求;接收来自所述控制系统的对所述识别请求的响应;基于所述响应,确定到所述文件系统的连接是否被允许;在确定到所述文件系统的连接被允许时,建立到所述文件系统的连接;从所述文件系统客户端接收由子用户对所述文件系统的访问尝试;认证所述子用户;发出安全令牌,所述安全令牌包括所述子用户的全局唯一子用户标识符;以及使用所述安全令牌来为所述子用户的后续请求确定所述子用户对所述文件系统的访问权。2.根据权利要求1所述的方法,其中,所述连接请求是TCP连接请求,所述TCP连接请求是对到所述文件系统的TCP连接的请求。3.根据权利要求1所述的方法,所述方法还包括:在确定到所述文件系统的连接不被允许时,拒绝所述连接请求。4.根据权利要求1所述的方法,其中,对来自所述控制系统的识别请求的响应包括:来自所述控制系统的对是否允许连接到所述文件系统的决定,所述决定是基于所述文件系统客户端的源IP的当前所有者的身份的。5.根据权利要求4所述的方法,其中,在客户端识别应用程序编程接口API中检查所述当前所有者的身份,并且确定对应于所述当前所有者的身份的云租户是否能够访问所述文件系统。6.根据权利要求5所述的方法,其中,认证所述子用户包括:基于使用所述子用户的凭证协商的安全协议发起子用户认证会话;基于所述连接将所述云租户的域名附加到所述子用户的用户名,以创建全局唯一子用户用户名;以及作为代理以在所述文件系统客户端和所述控制系统之间传递协议协商消息,直到所述控制系统作出认证决定。7.根据权利要求5所述的方法,其中,认证所述子用户包括:基于所述云租户从所述控制系统取得对应的子用户信息;以及针对所述连接请求接收所述子用户的全局唯一用户名。8.根据权利要求7所述的方法,所述方法还包括:在接收到所述子用户的无效全局唯一用户名时,拒绝所述连接请求,所述无效全局唯一用户名包括以下中的至少一个:所述云租户的无效域名,或所述子用户的无效用户名。9.根据权利要求1所述的方法,其中,建立到所述文件系统的连接包括:接受所述连接请求;记录与所述连接相关联的访问控制;将所记录的访问控制策略应用于所述连接;以及
服务于所述连接上的请求。10.根据权利要求9所述的方法,其中,使用所述安全令牌来为后续请求确定所述子用户对所述文件系统的访问权包括:使用所述安全令牌来应用文件级访问控制策略,以对于所述后续请求确定是否允许所述子用户访问所述文件系统。11.根据权利要求9所述的方法,其中,所述访问控制策略还与所述文件系统客户端的要应用于到所述文件系统的连接的源IP相关联。12.根据权利要求9所述的方法,所述方法还包括:在检测到对所述文件系统的所述访问控制策略的改变时,从所述控制系统接收通知,其中,所述通知被发送到与所述文件系统连接的所有文件系统服务器。13.根据权利要求1所述的方法,所述方法还包括:在建立到所述文件系统的连接时,通知所述控制系统关于所述连接的信息,所述信息包括连接的建立时间、所述文件系统客户端和所述文件系统。14.一种文件系统服务器,所述文件系统服务器包括:一个或更多个处理器;以及联接到所述一个或更多个处理器的存储器,所述存储器存储能够由所述一个或更多个处理器执行的计算机可执行指令,所述指令在被执行时使所述一个或更多个处理器执行包括以下内容的操作:从文件系统客户端接收连接请求,所述连接请求是连接到文件系统的请求;向控制系统发送用于所述文件系统客户端的身份认证的识别请求;接收来自所述控制系统的对所述识别请求的响应;基于所述响应,确定到所述文件系统的连接是否被允许;在确定到所述文件系统的连接被允许时,建立到所述文件系统的连接;从所述文件系统客户端接收由子用户对所述文件系统的访问尝试;认证所述子用户;发出安全令牌,所述安全令牌包括所述子用户的全局唯一子用户标识符;以及使用所述安全令牌来为所述子用户的后续请求确定所述子用户对所述文件系统的访问权。15.根据权利要求14所述的文件系统服务器,其中,所述连接请求是TCP连接请求,所述TCP连接请求是对到所述文件系统的TCP连接的请求。16.根据权利要求14所述的文件系统服务器,其中,所述操作还包括:在确定到所述文件系统的连接不被允许时,拒绝所述连接请求。17.根据权利要求14所述的文件系统服务器,其中,对来自所述控制系统的识别请求的响应包括:来自所述控制系统的对是否允许连接到所述文件系统的决定,所述决定是基于所述文件系统客户端的源IP的当前所有者的身份的。18.根据权利要求17所述的文件系统服务器,其中,在客户端识别应用程序编程接口API中检查所述当前所有者的身份,并且确定对应于所述当前所有者的身份的云租户是否能够访问所述文件系统。
19.根据权利要求17所述的文件系统服务器,其中,认证所述子用户包括:基于使用所述子用户的凭证协商的安全协议发起子用户认证会话;基于所述连接将所述云租户的域名附加到所述子用户的用户名,以创建全局唯一子用户用户名;以及作为代理以在所述文件系统客户端和所述控制系统之间传递协议协商消息,直到所述控制系统作出认证决定...

【专利技术属性】
技术研发人员:陆庆达陈俊朴叶庆华王磊林志勇鲍利平吴结生徐立裴晓辉张锋田磊磊
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1