文件操作方法、装置、设备、系统及计算机可读存储介质与流程

文档序号:18941879发布日期:2019-10-23 01:13阅读:179来源:国知局
文件操作方法、装置、设备、系统及计算机可读存储介质与流程

本发明涉及金融科技(fintech)技术领域,尤其涉及一种文件操作方法、装置、设备、系统及计算机可读存储介质。



背景技术:

随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链blockchain、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。

在计算机中,文件系统(filesystem)是命名文件及放置文件的逻辑存储和恢复的系统。目前,银行等金融机构的很多服务都需要访问到各文件系统进行相关的文件操作,对应的,各文件系统提供了相应的api(applicationprogramminginterface,应用程序编程接口)给到用户进行文件相关的操作,例如新增、删除、读写等。目前,本地文件系统和hdfs(hadoopdistributedfilesystem,分布式文件系统)等文件系统提供的api一般只能使用户对自身的文件进行访问与操作,而没法在一个进程服务里面对所有用户的文件进行访问与操作,除非是采用超级用户权限启动的服务才可以拥有所有文件的权限,然而,为各用户开启超级用户权限,即使得各用户拥有所有文件的操作权限,会导致用户权限的不可控和文件系统操作访问的安全性较低。



技术实现要素:

本发明的主要目的在于提供一种文件操作方法、装置、设备、系统及计算机可读存储介质,旨在提高用户权限管理的可控性和文件系统操作访问的安全性。

为实现上述目的,本发明提供一种文件操作方法,所述文件操作方法包括:

在接收到文件操作请求时,根据所述文件操作请求获取用户信息、目标文件存储路径和目标操作;

基于所述用户信息、所述目标文件存储路径和所述目标操作对用户进行身份验证和操作权限验证;

当身份验证和操作权限验证均通过时,根据所述目标文件存储路径和预设规则确定目标远程文件服务;

通过所述目标远程文件服务获取超级用户权限,并基于所述超级用户权限调用与所述目标操作对应的目标操作方法、对与所述目标文件存储路径对应的目标文件执行所述目标操作。

可选地,所述用户信息包括用户账号信息、令牌token信息和互联网协议ip信息,所述基于所述用户信息、所述目标文件存储路径和所述目标操作对用户进行身份验证和操作权限验证的步骤包括:

获取与所述用户账号信息对应的验证token,将所述token信息与所述验证token进行比对,并检测所述ip信息是否在预设ip白名单中,以对用户进行身份验证;

根据所述用户账号信息获取用户的操作权限信息,并根据所述目标文件存储路径、所述目标操作和所述操作权限信息对用户进行操作权限验证。

可选地,所述根据所述目标文件存储路径和预设规则确定目标远程文件服务的步骤包括:

根据所述目标文件存储路径确定目标文件系统,并获取与所述目标文件系统对应的已启动的各远程文件服务下的请求数量,记作第一请求数量;

将所述第一请求数量中的最小数值所对应的远程文件服务确定为目标远程文件服务。

可选地,所述文件操作方法还包括:

定期获取已启动的各远程文件服务下的当前请求数量,记作第二请求数量;

检测所述第二请求数量中的各个数值是否均大于第一预设阈值;

若所述第二请求数量中的各个数值均大于第一预设阈值,则启动新的远程文件服务。

可选地,所述定期获取已启动的各远程文件服务下的当前请求数量,记作第二请求数量的步骤之后,还包括:

检测所述第二请求数量中是否存在小于第二预设阈值的数值;

若存在,则停止所存在的小于所述第二预设阈值的数值所对应的远程文件服务。

可选地,所述文件操作方法还包括:

在操作执行完成后,生成对应的操作执行结果,并返回至与所述文件操作请求对应的用户端。

此外,为实现上述目的,本发明还提供一种文件操作装置,所述文件操作装置包括:

第一获取模块,用于在接收到文件操作请求时,根据所述文件操作请求获取用户信息、目标文件存储路径和目标操作;

用户验证模块,用于基于所述用户信息、所述目标文件存储路径和所述目标操作对用户进行身份验证和操作权限验证;

服务确定模块,用于当身份验证和操作权限验证均通过时,根据所述目标文件存储路径和预设规则确定目标远程文件服务;

操作执行模块,用于通过所述目标远程文件服务获取超级用户权限,并基于所述超级用户权限调用与所述目标操作对应的目标操作方法、对与所述目标文件存储路径对应的目标文件执行所述目标操作。

此外,为实现上述目的,本发明还提供一种文件操作设备,所述文件操作设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的文件操作程序,所述文件操作程序被所述处理器执行时实现如上所述的文件操作方法的步骤。

此外,为实现上述目的,本发明还提供一种文件操作系统,所述文件操作系统包括文件操作设备和用户端;其中,

所述文件操作设备为如上所述的文件操作设备;

所述用户端,用于接收用户触发的文件系统对象查询请求,并获取所述文件系统对象查询请求中携带的文件系统类型和代理用户信息;根据所述文件系统类型和所述代理用户信息得到代理的文件系统对象,并进行显示;接收用户基于所述代理的文件系统对象触发的文件操作请求,并将所述文件操作请求发送至所述文件操作设备。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有文件操作程序,所述文件操作程序被处理器执行时实现如上所述的文件操作方法的步骤。

本发明提供一种文件操作方法、装置、设备、系统及计算机可读存储介质,在接收到用户端发送的文件操作请求时,根据该文件操作请求获取用户信息、目标文件存储路径和目标操作,然后基于上述获取到的用户信息、目标文件存储路径和目标操作对用户进行身份验证和操作权限验证;当身份验证和操作权限验证均通过时,先根据该目标文件存储路径和预设规则确定目标远程文件服务,然后通过目标远程文件服务获取超级用户权限,并基于超级用户权限调用与该目标操作对应的目标操作方法、对与目标文件存储路径对应的目标文件执行目标操作。通过上述方式,本发明中只需对用户进行身份验证和操作权限验证,当身份验证和操作权限验证均通过之后,即可获取超级用户权限对代理用户(即其他用户)的文件进行操作,相比于现有技术,本发明无需为各用户开启超级用户权限,可实现对用户权限管理的完全可控,可提高不同文件系统操作访问的安全性。

附图说明

图1为本发明实施例方案涉及的硬件运行环境的设备结构示意图;

图2为本发明文件操作方法第一实施例的流程示意图;

图3为本发明文件操作装置第一实施例的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1,图1为本发明实施例方案涉及的硬件运行环境的设备结构示意图。

本发明实施例文件操作设备可以是智能手机,也可以是pc(personalcomputer,个人计算机)、平板电脑、便携计算机等终端设备。

如图1所示,该文件操作设备可以包括:处理器1001,例如cpu,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的文件操作设备结构并不构成对文件操作设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及文件操作程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的文件操作程序,并执行以下操作:

在接收到文件操作请求时,根据所述文件操作请求获取用户信息、目标文件存储路径和目标操作;

基于所述用户信息、所述目标文件存储路径和所述目标操作对用户进行身份验证和操作权限验证;

当身份验证和操作权限验证均通过时,根据所述目标文件存储路径和预设规则确定目标远程文件服务;

通过所述目标远程文件服务获取超级用户权限,并基于所述超级用户权限调用与所述目标操作对应的目标操作方法、对与所述目标文件存储路径对应的目标文件执行所述目标操作。

进一步地,所述用户信息包括用户账号信息、令牌token信息和互联网协议ip信息,处理器1001可以调用存储器1005中存储的文件操作程序,还执行以下操作:

获取与所述用户账号信息对应的验证token,将所述token信息与所述验证token进行比对,并检测所述ip信息是否在预设ip白名单中,以对用户进行身份验证;

根据所述用户账号信息获取用户的操作权限信息,并根据所述目标文件存储路径、所述目标操作和所述操作权限信息对用户进行操作权限验证。

进一步地,处理器1001可以调用存储器1005中存储的文件操作程序,还执行以下操作:

根据所述目标文件存储路径确定目标文件系统,并获取与所述目标文件系统对应的已启动的各远程文件服务下的请求数量,记作第一请求数量;

将所述第一请求数量中的最小数值所对应的远程文件服务确定为目标远程文件服务。

进一步地,处理器1001可以调用存储器1005中存储的文件操作程序,还执行以下操作:

定期获取已启动的各远程文件服务下的当前请求数量,记作第二请求数量;

检测所述第二请求数量中的各个数值是否均大于第一预设阈值;

若所述第二请求数量中的各个数值均大于第一预设阈值,则启动新的远程文件服务。

进一步地,处理器1001可以调用存储器1005中存储的文件操作程序,还执行以下操作:

检测所述第二请求数量中是否存在小于第二预设阈值的数值;

若存在,则停止所存在的小于所述第二预设阈值的数值所对应的远程文件服务。

进一步地,处理器1001可以调用存储器1005中存储的文件操作程序,还执行以下操作:

在操作执行完成后,生成对应的操作执行结果,并返回至与所述文件操作请求对应的用户端。

基于上述硬件结构,提出本发明文件操作方法的各实施例。

本发明提供一种文件操作方法。

参照图2,图2为本发明文件操作方法第一实施例的流程示意图。

在本实施例中,该文件操作方法包括:

步骤s10,在接收到文件操作请求时,根据所述文件操作请求获取用户信息、目标文件存储路径和目标操作;

本实施例的文件操作方法是由文件操作设备实现的,该设备以服务器为例进行说明。其中,该设备搭载有引擎管理器服务(io-em,input/output-enginemamager)和远程文件服务(io-engine),并提供兼容的api(applicationprogramminginterface,应用程序编程接口)接收用户端发送的文件操作请求,其中,io-em用于接收用户触发的文件操作请求,并根据文件操作请求获取用户信息、目标文件存储路径和目标操作,进而对用户进行身份验证和操作权限验证,还用于监测各远程文件服务io-engine的负载情况,进而确定目标远程文件服务,还用于根据io-engine的负载情况控制对应io-engine的启停,还用于接收io-engine发送的操作执行结果,并返回至用户端;远程文件服务io-engine用于获取文件系统的超级用户权限,并基于超级用户权限调用与获取到的目标操作所对应的文件操作方法对目标文件系统上的目标文件进行文件操作,还用于生成对应的操作执行结果,并发送至io-em。需要说明的是,io-engine是与文件系统的类型相对应的,文件系统可包括本地文件系统(local)、分布式文件系统(hdfs)和其他类型的文件系统,各类型的文件系统所对应的io-engine也包括多个。通过该文件操作设备,可实现远程对多种类型文件系统的访问操作。

在本实施例中,服务器通过io-em接收用户端通过其兼容的api接口远程发送的文件操作请求,在通过io-em接收到用户端发送的文件操作请求时,根据该文件操作请求获取用户信息、目标文件存储路径和目标操作,其中,用户信息可以包括但不限于账号信息、token(令牌)信息和ip(internetprotocol,互联网协议)信息。

步骤s20,基于所述用户信息、所述目标文件存储路径和所述目标操作对用户进行身份验证和操作权限验证;

在获取到用户信息、目标文件存储路径和目标操作之后,服务器中的io-em基于用户信息、目标文件存储路径和目标操作对用户进行身份验证和操作权限验证,其中,用户信息包括用户账号信息、token(令牌)信息和ip(internetprotocol,互联网协议)信息,用户账号信息即为用户的账号名,token信息可以是预先分配给用户的一个固定的token码,也可以是由分配给用户的token生成设备实时生成的一个随机的token码,ip信息即为用户端的ip地址,步骤s20包括:

步骤a1,获取与所述用户账号信息对应的验证token,将所述token信息与所述验证token进行比对,并检测所述ip信息是否在预设ip白名单中,以对用户进行身份验证;

对于身份验证,可先获取与该用户账号信息对应的验证token,对应的,该验证token可以是预先保存的分配给用户的固定token码,也可以是token生成设备同步发送过来的随机token码,然后将该token信息与验证token进行比对,并检测ip信息是否在预设ip白名单中,以对用户进行身份验证。当比对结果为token信息与验证token相同,且ip信息在预设ip白名单中时,则身份验证通过。当比对结果为token信息与验证token不相同,且/或ip信息不在预设ip白名单中时,则身份验证不通过。需要说明的是,在具体实施例中,可以只基于token信息和ip信息中的其中一种对用户进行身份验证,当然,也可以基于其他的信息对用户进行身份验证。

步骤a2,根据所述用户账号信息获取用户的操作权限信息,并根据所述目标文件存储路径、所述目标操作和所述操作权限信息对用户进行操作权限验证。

对于操作权限的验证,可先根据用户账号信息获取用户的操作权限信息,其中,操作权限信息可以包括用户所拥有的对其他哪些用户(代理用户)的哪些文件系统、哪些文件(夹)的哪些操作权限。具体的,可以预先设定用户账号信息与操作权限信息之间的映射关系,进而根据用户账号信息和预先设定的用户账号信息与操作权限信息之间的映射关系,来获取得到用户的操作权限信息。

然后,根据目标文件存储路径、目标操作和操作权限信息判断用户是否拥有相应的操作权限,以对用户进行操作权限验证,具体的,可检测目标文件存储路径和目标操作是否在操作权限信息所对应的权限范围内;若在权限范围内,则操作权限验证通过,若不在权限范围内,则操作权限验证失败。其中,目标文件存储路径与目标代理用户、目标文件系统和目标文件(夹)相对应,即可根据目标文件存储路径确定出对应的目标代理用户、目标文件系统和目标文件(夹),进而根据确定出的目标文件存储路径、目标操作与操作权限信息判断用户是否拥有相应的操作权限。需要说明的是,在实际应用过程中,可根据操作权限信息所具体限定的信息类型,来确定判断用户是否拥有操作权限所需的信息类型,例如,若操作权限信息只限定了有操作权限的代理用户、文件系统和文件(夹),而未对目标操作进行限定,则可以基于目标文件存储路径和操作权限信息判断用户是否拥有操作权限。

此外,还需要说明的是,在具体实施例中,步骤a1和a2的执行顺序不分先后。可以理解的是,当执行a1和a2中的任一步骤,结果为验证失败时,则无需执行另一步骤,例如,当先进行身份验证,结果为身份验证失败时,则无需继续进行操作权限的验证,此时,可直接生成对应的提示信息,并发送至用户端,以提示用户验证失败。

当然,可以理解的是,管理人员也可以根据实际需要对相应的安全验证规则进行个性化配置,例如,只进行身份验证或操作权限验证,或采用其他的安全验证方式。

步骤s30,当身份验证和操作权限验证均通过时,根据所述目标文件存储路径和预设规则确定目标远程文件服务;

当身份验证和操作权限验证均通过时,服务器中的io-em根据该目标文件存储路径和预设规则确定目标远程文件服务,具体的,步骤“根据所述目标文件存储路径和预设规则确定目标远程文件服务”包括:

步骤b1,根据所述目标文件存储路径确定目标文件系统,并获取与所述目标文件系统对应的已启动的各远程文件服务下的请求数量,记作第一请求数量;

步骤b2,将所述第一请求数量中的最小数值所对应的远程文件服务确定为目标远程文件服务。

当文件系统类型包括多个时,可先根据目标文件存储路径确定目标文件系统,并获取与目标文件系统对应的已启动的各远程文件服务下的请求数量,为便于区分和后续描述,可将与目标文件系统对应的已启动的各远程文件服务io-engine下的请求数量记作第一请求数量,由于io-engine包括多个,对应的第一请求数量也包括多个。然后,为实现负载均衡,可将第一请求数量中的最小数值所对应的远程文件服务io-engine确定为目标远程文件服务。

步骤s40,通过所述目标远程文件服务获取超级用户权限,并基于所述超级用户权限调用与所述目标操作对应的目标操作方法、对与所述目标文件存储路径对应的目标文件执行所述目标操作。

在确定得到目标远程文件服务后,可通过该目标远程文件服务获取超级用户权限,并基于超级用户权限调用与该目标操作对应的目标操作方法、对与目标文件存储路径对应的目标文件执行目标操作。具体的,从底层来看,io-em确定得到目标远程文件服务后,可由超级用户启动目标io-engine(即采用超级用户的账号登录后启动目标io-engine),并将文件操作请求发送至该目标远程文件服务(目标io-engine),以使得目标io-engine获取超级用户权限,进而目标io-engine可基于超级用户权限调用与该目标操作对应的目标操作方法、对与目标文件存储路径对应的目标文件执行所述目标操作。

本发明在银行等金融机构的文件操作过程中,在获取到用户信息、目标文件存储路径和目标操作后,先对用户进行身份验证和操作权限验证,在验证通过后,确定目标远程文件服务,进而通过目标远程文件服务获取超级用户权限,并基于超级用户权限调用与该目标操作对应的目标操作方法、对与目标文件存储路径对应的目标文件执行目标操作,无需为企业的各用户开启超级用户权限,可实现对企业用户权限管理的完全可控,即提高了企业用户权限的可控性,同时,还可以提高文件系统操作访问的安全性。

本发明实施例提供一种文件操作方法,在接收到用户端发送的文件操作请求时,根据该文件操作请求获取用户信息、目标文件存储路径和目标操作,然后基于上述获取到的用户信息、目标文件存储路径和目标操作对用户进行身份验证和操作权限验证;当身份验证和操作权限验证均通过时,先根据该目标文件存储路径和预设规则确定目标远程文件服务,然后通过目标远程文件服务获取超级用户权限,并基于超级用户权限调用与该目标操作对应的目标操作方法、对与目标文件存储路径对应的目标文件执行目标操作。通过上述方式,本发明实施例中只需对用户进行身份验证和操作权限验证,当身份验证和操作权限验证均通过之后,即可获取超级用户权限对代理用户(即其他用户)的文件进行操作,相比于现有技术,本发明实施例无需为各用户开启超级用户权限,可实现对用户权限管理的完全可控,可提高不同文件系统操作访问的安全性。

进一步地,基于图2所示的第一实施例,提出本发明文件操作方法的第二实施例。

在本实施例中,该文件操作方法还包括:

步骤a,定期获取已启动的各远程文件服务下的当前请求数量,记作第二请求数量;

在本实施例中,服务器可通过引擎管理器(io-em)监测各远程文件服务(io-engine)的负载情况,并根据负载情况控制io-engine的启停,以达到负载均衡的目的。具体的,io-em可定期获取已启动的各远程文件服务下的当前请求数量,为便于区别和后续表述,可将获取到的已启动的各远程文件服务下的当前请求数量记作第二请求数量。其中,远程文件服务下的当前请求数量,即为远程文件服务下需处理的文件操作请求的数量。定期可设为每隔3小时一次,当然,也可以根据实际需要进行设定,此处不做具体限定。由于远程文件服务包括多个,对应的,第二请求数量也包括多个。

步骤b,检测所述第二请求数量中的各个数值是否均大于第一预设阈值;

在获取到第二请求数量之后,检测第二请求数量中的各个数值是否均大于第一预设阈值,其中,第一预设阈值可设为10个,当然,也可以根据实际需要进行设定,此处不做具体限定。

步骤c,若所述第二请求数量中的各个数值均大于第一预设阈值,则启动新的远程文件服务。

若第二请求数量的各个数值均大于第一预设阈值,说明所有的io-engine均负载过高,此时,则启动新的远程文件服务io-engine。

需要说明的是,由于各远程文件服务io-engine是与文件系统的类型相对应的,例如文件系统可包括本地文件系统(local)、分布式文件系统(hdfs)和其他类型的文件系统,各类型的文件系统所对应的io-engine也包括多个,因此,在具体实施例中,还可以按文件系统的类型,分别获取各类型文件系统的已启动的远程文件服务io-engine下的当前请求数量(分别记作第三请求数量、第四请求数量、……第n请求数量),进而分别检测第三请求数量、第四请求数量、……第n请求数量中的各个数值是否均大于第一预设阈值,若存在某一请求数量中的各个数值均大于第一预设阈值时,可启动该请求数量所对应的文件系统下的新的io-engine。例如,第三请求数量对应本地文件系统,当检测到第三请求数量中的各个数值均大于第一预设阈值时,则启动本地文件系统所对应的新的io-engine。

进一步地,在步骤a之后,该文件操作方法还可以包括:

步骤d,检测所述第二请求数量中是否存在小于第二预设阈值的数值;

若存在,则执行步骤e:停止所存在的小于所述第二预设阈值的数值所对应的远程文件服务。

此外,在获取到第二请求数量之后,还可以检测第二请求数量中是否存在小于第二预设阈值的数值,其中,第二预设阈值可设为0,当然,也可以根据实际需要进行设定,此处不做具体限定。若检测到第二请求数量中存在小于第二预设阈值的数值,说明存在空闲的远程文件服务,此时,则停止所存在的小于第二预设阈值的数值所对应的远程文件服务,即停止空闲的远程文件服务。

当然,需要说明的是,在具体实施例中,还可以通过外部设备,如ir(intelligentrouting,智能路由),来监测各io-engine的负载情况(即当前请求数量),即,通过ir定期获取已启动的各远程文件服务下的当前请求数量,记作第二请求数量;进而通过ir检测所述第二请求数量中的各个数值与第一预设阈值的大小关系,根据检测结果生成对应的通知信息,并发送至io-em,以使得io-em根据通知信息控制对应的io-engine的启停。其中,具体的检测方法与上述实施例中相同,即,检测所述第二请求数量中的各个数值是否均大于第一预设阈值;若所述第二请求数量中的各个数值均大于第一预设阈值,则生成启动新的远程文件服务的通知信息,并发送至io-em,以使得io-em根据通知信息启动对应的新的io-engine;同时,检测第二请求数量中是否存在小于第二预设阈值的数值,若第二请求数量中存在小于第二预设阈值的数值,则生成停止远程文件服务的通知信息,并发送至io-em,以使得io-em根据通知信息停止对应的空闲的io-engine。

可以理解,在上述第一实施例中,在根据目标文件存储路径和预设规则确定目标远程文件服务的过程中,第一请求数量除可由io-em直接获取外,也可以通过ir获取得到。

进一步地,基于图2所示的第一实施例,提出本发明文件操作方法的第三实施例。

在本实施例中,在步骤s40之后,该文件操作方法还包括:

在操作执行完成后,生成对应的操作执行结果,并返回至与所述文件操作请求对应的用户端。

在本实施例中,为便于用户了解操作的执行结果,可在操作执行完成后,生成对应的操作执行结果,并将操作执行结果返回至与该文件操作请求对应的用户端。其中,操作执行结果包括操作执行成功和操作执行失败等,其中,对于操作执行失败时,还可返回对应的失败原因,以便于用户进行更正处理。

本发明还提供一种文件操作系统,该文件操作系统包括文件操作设备和用户端。其中,所述文件操作设备为如图1所示的文件操作设备,用于执行上述文件操作方法实施例中的各步骤,具体的功能和实现过程可参照上述实施例,此处不作赘述。

所述用户端,用于接收用户触发的文件系统对象查询请求,并获取所述文件系统对象查询请求中携带的文件系统类型和代理用户信息;根据所述文件系统类型和所述代理用户信息得到代理的文件系统对象,并进行显示;接收用户基于所述代理的文件系统对象触发的文件操作请求,并将所述文件操作请求发送至所述文件操作设备。

本实施例中,该用户端可以为智能手机、pc等终端,集成有由多个模块封装而成的sdk(softwaredevelopmentkit,软件开发工具包)。具体的,该由多个模块封装而成的sdk可包括fsfactory(文件系统工厂)、proxyfs(代理文件系统)和io-client(输入/输出)3个模块,其中,fsfactory用于从接收到的文件系统对象查询请求中获取到文件系统类型和代理用户信息;proxyfs用于接收fsfactory传输的文件系统类型(如本地文件系统、hdfs文件系统等)和代理用户信息,并对文件系统类型和代理用户信息按预设方式进行封装,得到对应的代理的文件系统对象,其中,该代理的文件系统对象包括代理用户对应的文件系统中对文件(夹)的操作方法,例如,获取文件(夹)大小,创建、删除文件(夹),读写文件等操作的操作方法;io-client用于接收到用户触发的文件操作请求,并将该文件操作请求通过兼容的api接口发送至文件操作设备;还可以用于接收文件操作设备返回的操作执行结果,并进行显示。

具体的,当用户需要对某一目标文件存储路径对应的文件(夹)进行某一目标操作时,用户可先根据该目标文件存储路径确定得到目标文件系统的类型和目标代理用户,通过用户终端中的对应软件或app(application,应用程序)输入文件系统类型(即目标文件系统的类型)和代理用户信息(即目标代理用户的信息,可以为目标代理用户的用户名),输入完成后即可触发文件系统对象查询请求,此时,用户端在接收到用户触发的文件系统对象查询请求时,获取该文件系统对象查询请求中携带的文件系统类型和代理用户信息,其中,文件系统类型可以包括本地文件系统、hdfs文件系统等,代理用户信息可以为所需访问的其他用户(即代理用户)的用户名。然后,对文件系统类型和代理用户信息进行封装,得到代理的文件系统对象,并在用户端的屏幕中进行显示,其中,代理的文件系统对象中包括目标操作对应的操作方法,当用户在查询到代理的文件系统对象后,即可对代理用户的文件进行操作,具体的,用户可基于该代理的文件系统对象中的目标操作的操作方法、目标文件存储路径,来触发文件操作请求,此时,用户端在接收到该文件操作请求时,将该文件操作请求发送至文件操作设备,以使得文件操作设备对该文件操作请求进行处理。

本实施例提供一种文件操作系统,该文件操作系统包括文件操作设备和用户端,通过构建上述文件操作系统,可便于用户通过用户端对远程文件系统进行访问操作,同时,通过文件操作设备可实现对各文件系统进行统一管理,无需为各用户开启超级用户权限,即可实现对用户权限管理的完全可控,可提高不同文件系统操作访问的安全性。

本发明还提供一种文件操作装置。

参照图3,图3为本发明文件操作装置第一实施例的功能模块示意图。

如图3所示,所述文件操作装置包括:

第一获取模块10,用于在接收到文件操作请求时,根据所述文件操作请求获取用户信息、目标文件存储路径和目标操作;

用户验证模块20,用于基于所述用户信息、所述目标文件存储路径和所述目标操作对用户进行身份验证和操作权限验证;

服务确认模块30,用于当身份验证和操作权限验证均通过时,根据所述目标文件存储路径和预设规则确定目标远程文件服务;

操作执行模块40,用于通过所述目标远程文件服务获取超级用户权限,并基于所述超级用户权限调用与所述目标操作对应的目标操作方法、对与所述目标文件存储路径对应的目标文件执行所述目标操作。

进一步地,所述用户信息包括用户账号信息、令牌token信息和互联网协议ip信息,所述用户验证模块20包括:

身份验证单元,用于获取与所述用户账号信息对应的验证token,将所述token信息与所述验证token进行比对,并检测所述ip信息是否在预设ip白名单中,以对用户进行身份验证;

权限验证单元,用于根据所述用户账号信息获取用户的操作权限信息,并根据所述目标文件存储路径、所述目标操作和所述操作权限信息对用户进行操作权限验证。

进一步地,所述服务确认模块30包括:

第一获取单元,用于根据所述目标文件存储路径确定目标文件系统,并获取与所述目标文件系统对应的已启动的各远程文件服务下的请求数量,记作第一请求数量;

第一确定单元,用于将所述第一请求数量中的最小数值所对应的远程文件服务确定为目标远程文件服务。

进一步地,所述文件操作装置还包括:

第二获取模块,用于定期获取已启动的各远程文件服务下的当前请求数量,记作第二请求数量;

第一检测模块,用于检测所述第二请求数量中的各个数值是否均大于第一预设阈值;

服务启动模块,用于若所述第二请求数量中的各个数值均大于第一预设阈值,则启动新的远程文件服务。

进一步地,所述文件操作装置还包括:

第二检测模块,用于检测所述第二请求数量中是否存在小于第二预设阈值的数值;

服务停止模块,用于若存在,则停止所存在的小于所述第二预设阈值的数值所对应的远程文件服务。

进一步地,所述文件操作装置还包括:

结果返回模块,用于在操作执行完成后,生成对应的操作执行结果,并返回至与所述文件操作请求对应的用户端。

其中,上述文件操作装置中各个模块的功能实现与上述文件操作方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。

本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有文件操作程序,所述文件操作程序被处理器执行时实现如以上任一项实施例所述的文件操作方法的步骤。

本发明计算机可读存储介质的具体实施例与上述文件操作方法各实施例基本相同,在此不作赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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