CN107145531B - 分布式文件系统及分布式文件系统的用户管理方法 - Google Patents

分布式文件系统及分布式文件系统的用户管理方法 Download PDF

Info

Publication number
CN107145531B
CN107145531B CN201710252843.4A CN201710252843A CN107145531B CN 107145531 B CN107145531 B CN 107145531B CN 201710252843 A CN201710252843 A CN 201710252843A CN 107145531 B CN107145531 B CN 107145531B
Authority
CN
China
Prior art keywords
user
file system
distributed file
creating
password
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710252843.4A
Other languages
English (en)
Other versions
CN107145531A (zh
Inventor
任安阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Si Tech Information Technology Co Ltd
Original Assignee
Beijing Si Tech Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Si Tech Information Technology Co Ltd filed Critical Beijing Si Tech Information Technology Co Ltd
Priority to CN201710252843.4A priority Critical patent/CN107145531B/zh
Publication of CN107145531A publication Critical patent/CN107145531A/zh
Application granted granted Critical
Publication of CN107145531B publication Critical patent/CN107145531B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

本发明涉及一种分布式文件系统及用户管理方法。分布式文件系统包括在元数据库中创建元数据用户的元数据用户创建模块;在元数据用户中创建用户信息表和/或用户挂载关系表的数据表创建模块;创建分布式文件系统的超级用户的超级用户创建模块,创建普通用户的普通用户创建模块;根据用户信息表和/或用户挂载关系表判断用户是否有访问权限的文件访问处理模块。本发明解决了传统的分布式文件系统没有自己的用户管理机制,建立了对接入分布式文件系统的客户端的安全鉴别机制,提高了灵活管理用户权限的能力。

Description

分布式文件系统及分布式文件系统的用户管理方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种分布式文件系统及分布式文件系统的用户管理方法。
背景技术
传统的分布式文件系统没有自己的用户管理机制,存储的文件使用的用户依赖于本地操作系统提供的用户。这种方式对于接入的分布式文件系统的客户端缺少安全鉴别机制以及灵活管理用户权限的能力。
传统分布式文件系统中,只要进入到与文件系统连通的网络并且将接入IP改为允许访问的IP网段,即可通过分布式文件系统对客户端的认证。造成对入侵到网络的伪IP安全漏洞,有数据泄漏的风险。
也就是说,传统的分布式文件系统由于没有自己的用户管理机制,从而会存在具有相同登录名的用户,可互相访问彼此存储在分布式文件系统中的文件,从而降低了数据的安全性。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种分布式文件系统及分布式文件系统的用户管理方法。
本发明解决上述技术问题的技术方案如下:一种分布式文件系统,包括:
元数据用户创建模块,用于在分布式文件系统的元数据库中创建元数据用户;
数据表创建模块,用于在元数据用户中创建用户信息表和/或用户挂载关系表;
超级用户创建模块,用于创建分布式文件系统的超级用户,并将超级用户的用户信息经加密处理存储在用户信息表中;
普通用户创建模块,用于超级用户登录分布式文件系统时根据需要创建普通用户,并将普通用户的用户信息经加密处理存储在用户信息表中;
文件访问处理模块,用于在接收到文件访问请求时,根据用户信息表和/或用户挂载关系表判断用户是否有访问权限,在有访问权限时允许访问,否则拒绝访问。
本发明解决上述技术问题的另一技术方案如下:一种分布式文件系统的用户管理方法,包括:
S1,在分布式文件系统的元数据库中创建元数据用户;
S2,在元数据用户中创建用户信息表和/或用户挂载关系表;
S3,创建分布式文件系统的超级用户,并将超级用户的用户信息经加密处理存储在用户信息表中;
S4,超级用户登录分布式文件系统时根据需要创建普通用户,并将普通用户的用户信息经加密处理存储在用户信息表中;
S5,在接收到文件访问请求时,根据用户信息表和/或用户挂载关系表判断用户是否有访问权限,在有访问权限时允许访问,否则拒绝访问。
本发明的有益效果是:本发明不仅可将文件信息保存在分布式文件系统的元数据库中,还可将加密后的用户信息和/或挂载信息存储在元数据库中,采用分布式存储、用户信息加密、普通用户不可见的方式进行灵活管理和安全保障,解决了传统的分布式文件系统没有自己的用户管理机制,建立了对接入分布式文件系统的客户端的安全鉴别机制,提高了灵活管理用户权限的能力。
附图说明
图1为本发明一实施例提供的分布式文件系统的示意性结构框图;
图2为本发明一实施例提供的分布式文件系统的文件访问处理模块示意性结构框图;
图3为本发明另一实施例提供的分布式文件系统的示意性结构框图;
图4为本发明一实施例提供的分布式文件系统的用户管理方法流程图;
图5为本发明一实施例提供的分布式文件系统的用户管理方法中处理访问请求的流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1给出了本发明实施例提供的一种分布式文件系统的示意性结构框图。图1所示的分布式文件系统包括元数据用户创建模块、数据表创建模块、超级用户创建模块、普通用户创建模块和文件访问处理模块。
元数据用户创建模块在分布式文件系统的元数据库中创建元数据用户sroot;数据表创建模块在元数据用户中创建用户信息表和/或用户挂载关系表;超级用户创建模块创建分布式文件系统的超级用户root,并将超级用户的用户信息经加密处理存储在用户信息表中;普通用户创建模块超级用户登录分布式文件系统时根据需要创建普通用户app,并将普通用户的用户信息经加密处理存储在用户信息表中;文件访问处理模块在接收到文件访问请求时,根据用户信息表和/或用户挂载关系表判断用户是否有访问权限,在有访问权限时允许访问,否则拒绝访问。
上述实施例中提供的分布式文件系统,不仅可将文件信息保存在分布式文件系统的元数据库中,还可将加密后的用户信息和/或挂载信息存储在元数据库中,采用分布式存储、用户信息加密、普通用户不可见的方式进行灵活管理和安全保障,解决了传统的分布式文件系统没有自己的用户管理机制,建立了对接入分布式文件系统的客户端的安全鉴别机制,提高了灵活管理用户权限的能力。
应理解,该实施例中,所述数据表创建模块包括用户信息表创建单元和/或用户挂载关系表创建单元。所述用户信息表创建单元用户创建用户信息表,所述用户信息表用于存储用户信息,该实施例中,所述用户信息包括包括用户名、密码、用户组、用户ID、用户组ID、初始路径、失效时间和失效保留天数。该述实施例提供的分布式文件系统,用户登录时可以根据用户信息表使用用户名和密码登录。
所述用户挂载关系创建单元用于创建用户挂载关系表,所述用户挂载关系表用于存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系。该实施例提供的分布式文件系统,用户也可以利用用户挂载关系表,用户挂载信息表存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系。建立了分布式文件系统与本地设备之间的绑定关系,即服务器端用户与本地端用户的绑定关系,从而提升登录的便利性和高效性。
可选地,作为本发明一个实施例,如图2所示,所述文件访问处理模块包括;
首次访问判断单元,用于在接收到文件访问请求时,判断发送文件访问请求的用户是否为首次访问,如果是则调用显隐登录判断单元,否则调用权限校验单元;
显隐登录判断单元,用于根据是否传入用户名和密码判断发送文件访问请求的用户的登录方式,如果为显式登录则调用显式登录单元,如果为隐式登录则调用隐式登录单元;
显式登录单元,用于根据用户信息表判断发送文件访问请求的用户输入的用户名和密码是否正确,如果正确则调用权限校验单元,否则拒绝访问;
隐式登录单元,用于判断发送文件访问请求用户的本地操作系统信息是否在挂载关系表中,如果是则允许免密登录,并调用权限校验单元,否则拒绝访问;
权限校验单元,用于从元数据库获取的文件信息,并根据所述文件信息判断发送文件访问请求的用户是否有操作权限,如果有则允许进行相应的操作,否则不允许对访问的文件进行操作。所述文件信息包括文件所属用户、所属用户组、权限掩码判断。
上述实施例中提供的分布式文件系统,在用户为非首次访问时,直接校验其是否有操作权限,如果为首次访问,则判断用户的登录方式,如果为显示登录,则通过用户名和密码进行校验,校验通过则进行操作权限校验;如果为隐式登录,则通过用户挂载关系表验证是否存在挂载关系,如果存在挂载关系则允许免密登录,进而进行操作权限校验。采用分布式存储、用户信息加密、普通用户不可见的方式进行灵活管理和安全保障,同时为了方便使用分布式文件系统的程序可以使用传统的方式使用文件系统,设计了一个可以免密登录分布式文件系统的用户挂载关系表,用于存储的允许免密登录文件系统的本地操作系统用户、IP等信息,提升了登录的便利性和高效性。
可选地,作为本发明一个实施例,如图3所示,分布式文件系统还包括元数据库用户名密码生成模块,用于在创建分布式文件系统时,生成元数据库用户名和密码,并存储在配置文件中;在进行元数据库操作时,读取经加密的元数据库密码文件并解密,得到元数据库用户名和密码,进而操作元数据库。
上述实施例提供的分布式文件系统,在创建分布式文件系统时,生成元数据库用户名和密码,这里所说的元数据库的用户名以及密码随安装生成,即在安装分布式文件系统时自动生成,并存储在配置文件中。在对元数据库进行操作时,需获得元数据库用户名及密码,结合分布式文件系统的用户名和密码,实现双重密码的安全保障机制,提升了分布式文件系统中文件信息的安全性,确保存储在分布式文件系统上的数据不被窃取。
在本发明中,不仅可将文件信息保存在分布式文件系统的元数据库中,还可将加密后的用户信息存储在元数据库中,所述加密后的用户信息包括存储在用户信息表中的各个用户的用户名以及密码等。通过分布式文件系统的元数据库存储用户信息,该元数据库是一种分布式内存数据库,使用用户管理工具(如可以实现创建suseradd、删除suserdel、编辑susermod等功能的工具,使用每一个工具时都先解密元数据库密码,得到用元数据库的用户名和密码,再使用相应的工具进行操作),通过加密后的数据库的用户名和密码,可以将分布式文件系统的用户信息和加密后的用户密码保存到分布式内存数据库中的用户信息表中。
可根据需求选择使用绑定工具smount,输入需要绑定的操作系统用户名、主机地址、主机标识符hostid等和分布式文件系统中的某一个用户,将该主机的该用户与分布式文件系统用户建立免密登录关系。之后在该主机的指定用户下免密使用分布式文件系统。
分布式文件系统用户的基本特征如下:
1.分布式文件系统用户:分布式文件系统拥有自己的用户管理系统,包含超级用户root(uid:0)和普通用户,超级用户可对普通用户做任意操作(如建立普通用户、修改普通用户、删除普通用户等),并且不对用户总数做硬性限制(即可根据实际情况设置多个)。
2.分布式文件系统用户属性:每个分布式文件系统用户有自己的密码、用户组、uid(用户ID)、gid(用户组ID)、初始路径、失效时间、失效保留天数这几个属性。root用户可以任意修改普通用户的属性不需要普通用户的密码,普通用户无法修改用户属性。用户属性信息存储在元数据库中的用户信息表中。
3.分布式文件系统用户权限:分布式文件系统上每一个目录和文件都有自己的权限属性和文件属性,分为自身用户权限、同组用户权限、其它组用户权限。每组权限又可细分为读、写、执行权限。文件属性目前包含文件和目录两种。上述信息存储在目录信息表中。权限限制机制和本地文件系统一致。
4.分布式文件系统用户显式登录:可以使用登陆工具登录分布式文件系统:在本地终端的登陆工具中输入分布式文件系统中存储的任一用户名,再根据提示输入与改用户名对应的用户密码,以完成登录。登录后命令行前会显示分布式文件系统用户名、分布式文件系统路径,可使用常用的文件系统操作命令进行文件操作,如ls、cat、cd等,并且登录分布式文件系统时使用该用户的权限和属性。
5.分布式文件系统用户隐式登录(免密):通过工具挂载分布式文件系统到本地文件系统,并且建立本地用户和分布式文件系统中的某一用户的绑定关系,直接登录挂载的路径使用分布式文件系统;或者,在绑定的本地用户上执行免密登陆命令(如son),免密登录有挂载关系的分布式文件系统中的、与本地用户绊定的用户。隐式登录的绑定信息加密存储在用户挂载表中。
6.用户管理功能:
添加新用户,创建用户帐户,设置用户密码;
查看当前存在的用户;
删除用户;
过用户名和密码对用户身份进行认证;
设置账户无效,可后期恢复启用账户;
具体方法是,使用susermod工具修改用户的失效时间为当前时间,失效保留天数为0,可使账户无效。修改失效时间为未来的时间可以恢复账户。
上文中多次提到的元数据库中存储的和用户信息相关的表,在下面列出。
目录信息表(SDFS_STRUCT_INFO)
功能介绍:主要存储目录及文件的逻辑路径关系;存储在元数据库的普通用户中。
PARENT_ID VARchar(21) 上一级节点ID
NODE_ID NUMBER(18) 当前节点ID
NODE_NAME VARchar(255) 节点名称,相对路径
NODE_TYPE VARchar(1) 文件类型
NODE_UNAM VARchar(32) 用户名
NODE_GNAM VARchar(32) 用户组
NODE_PERM VARchar(4) 文件权限
●表索引主键
●主键:PARENT_ID,NODE_ID,NODE_NAME
●索引1:IND_NODE_ID ON SDFS_STRUCT_INFO(NODE_ID)
●索引2:IND_PARENT_ID ON SDFS_STRUCT_INFO(PARENT_ID)
●索引3:IND_NODE_NAME ON SDFS_STRUCT_INFO(NODE_NAME)
其中,PARENT_ID为上一节点ID,NODE_ID为当前节点ID,NODE_NAME为节点名称,相对路径,代表文件名,NODE_TYPE为文件类型,包括文件或目录,NODE_UNAM代表所属用户名,NODE_GNAM代表所属用户组,NODE_PERM为文件权限,具体为权限掩码,决定着发起请求的用户具有:相同用户名操作的权限、不同用户名但有相同用户组名的权限、用户名和用户组名都不同的权限。文件的权限有三个:读文件内容、写文件内容和执行。目录的权限有三个:读:读取目录下的文件列表,写:在目录下新建、修改、删除文件执行:进入目录。
用户信息表(SDFS_ETC_PASSWD)
功能介绍:分布式文件系统用户信息表,用于存储分布式文件系统用户的详细信息;存储在单独的分布式元数据库的的sroot用户中。
UNAME VARchar(32) 分布式文件系统的用户名
PASSWD VARchar(128) 分布式文件系统的密码
GNAME VARchar(32) 分布式文件系统用户组名
UID NUMERIC(6), 分布式文件系统用户uid
GID NUMERIC(6), 分布式文件系统用户gid
HOMEPATH VARchar(255) 初始路径
EXPIRY_DATE DATE 失效日期
INACTIVE_DAY NUMERIC(6) 失效日期后多少天后禁用
●表空间分库建:tablespace mem_1000ROUTE TYPE part UNAME;
●主键:UNAME
●索引1:INDEX IND_UNAME ON SDFS_ETC_PASSWD(UNAME)HASH 100;
●索引2:INDEX IND_UID ON SDFS_ETC_PASSWD(UNAME)HASH 100;
其中,UNAME为分布式文件系统的用户名,PASSWD为分布式文件系统的密码,GNAME为分布式文件系统用户组名,UID为分布式文件系统用户ID,GID为分布式文件系统用户组ID,HOMEPATH为初始路径,EXPIRY_DATE为失效日期,INACTIVE_DAY失效日期后多少天后禁用。
用户挂载关系表SDFS_HOST_MOUNT
功能介绍:分布式文件系统用户挂载关系表,存储分布式文件系统用户和本地用户、主机的挂载关系,存在挂载登录的用户可以免密登录分布式文件系统。存储在单独的分布式元数据库的的sroot用户中。
UNAME VARchar(32) 分布式文件系统的用户名
GNAME VARchar(32) 分布式文件系统用户组名
UID NUMERIC(6), 分布式文件系统用户uid
GID NUMERIC(6), 分布式文件系统用户gid
OS_KEY VARchar(255) 由主机IP、用户名加密合成
●表空间分库建:tablespace mem_1000ROUTE TYPE part os_key;
●主键:OS_KEY
●索引1:INDEX IND_OS_KEY ON SDFS_HOST_MOUNT(OS_KEY)HASH 1000。
其中,UNAME为分布式文件系统的用户名,GNAME为分布式文件系统用户组名,UID为分布式文件系统用户ID,GID为分布式文件系统用户组ID,OS_KEY为客户端系统信息集合,由主机IP和用户名加密合成。
本发明实施例提供的分布式文件系统,该分布式文件系统中的元数据库,不仅能够存储文件信息,还能存储用户属性信息,从而扩展了分布式文件系统的功能。本发明实施例提供了一种基于分布式文件系统的安全保障机制,在分布式文件系统的元数据库中存储有加密后的、能够登录该分布式文件系统的用户名以及密码,且分布式文件系统中的元数据库的用户名以及密码加密存储在本体文件系统中。这里所说的元数据库的用户名以及密码随安装生成,即在安装分布式文件系统时自动生成,并存储在配置文件中。因而,实现了登陆分布式文件系统的用户名以及密码的双重加密,提升了分布式文件系统中文件信息的安全性。
自定义的用户管理提供了高效用户管理机制,任何修改用户的指令都直接作用于分布式文件系统的元数据库,一次修改全部客户端都生效。例如,有A、B、C三个客户端都通过use1登录到了分布式文件系统,此时,若D通过root用户将分布式文件系统中的用户use1修改为use2,此时A、B、C三个客户端可通过use2登录分布式文件系统,而不必一一修改。
本发明还提供了更加方便的免密登录方式,该方式相对于需要输入用户名和密码的方式速度更快,同时存储的主机地址、用户名等主机信息也是加密过的,也保证了安全。
上文结合图1至图3,详细描述了根据本发明实施例的分布式文件系统,下面结合图4,详细描述了根据本发明实施例的分布式文件系统的用户管理方法。
图4给出了本发明实施例提供的一种分布式文件系统的用户管理方法流程图。如图4所示的分布式文件系统的用户管理方法,包括:
S1,在分布式文件系统的元数据库中创建元数据用户sroot;
S2,在元数据用户sroot中创建用户信息表和/或用户挂载关系表;
S3,创建分布式文件系统的超级用户root,并将超级用户的用户信息经加密处理存储在用户信息表中;
S4,超级用户登录分布式文件系统时根据需要创建普通用户app,并将普通用户的用户信息经加密处理存储在用户信息表中;
S5,在接收到文件访问请求时,根据用户信息表和/或用户挂载关系表判断用户是否有访问权限,在有访问权限时允许访问,否则拒绝访问。
上述实施例中提供的分布式文件系统的用户管理方法,不仅可将文件信息保存在分布式文件系统的元数据库中,还可将加密后的用户信息和/或挂载关系存储在元数据库中,采用分布式存储、用户信息加密、普通用户不可见的方式进行灵活管理和安全保障,解决了传统的分布式文件系统没有自己的用户管理机制,建立了对接入分布式文件系统的客户端的安全鉴别机制,提高了灵活管理用户权限的能力。
应理解,该实施例中,所述用户信息表用于存储用户信息,所述用户信息包括包括用户名、密码、用户组、用户ID、用户组ID、初始路径、失效时间和失效保留天数等;该述实施例提供的分布式文件系统,用户登录时可以根据用户信息表使用用户名和密码登录。
所述用户挂载关系表用于存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系。该实施例提供的分布式文件系统,用户也可以利用用户挂载关系表,用户挂载信息表存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系。建立了分布式文件系统与本地设备之间的绑定关系,即服务器端用户与本地端用户的绑定关系,从而提升登录的便利性和高效性。
可选地,作为本发明一个实施例,如图5所示,分布式文件系统的用户管理方法中,S5包括:
S5.1,在接收到文件访问请求时,判断发送文件访问请求的用户是否为首次访问,如果是则执行S5.2元,否则执行S5.5;
S5.2,根据是否传入用户名和密码判断发送文件访问请求的用户的登录方式,如果为显式登录则执行S5.3,如果为隐式登录则执行S5.4;
S5.3,根据用户信息表判断发送文件访问请求的用户输入的用户名和密码是否正确,如果正确则S5.5,否则拒绝访问;
S5.4,判断发送文件访问请求用户的本地操作系统信息是否在挂载关系表中,如果是则允许免密登录,并执行S5.5,否则拒绝访问;
S5.5,从元数据库获取的文件信息,并根据所述文件信息判断发送文件访问请求的用户是否有操作权限,如果有则允许进行相应的操作,否则不允许对访问的文件进行操作。
上述实施例中提供的分布式文件系统的用户管理方法,在用户为非首次访问时,直接校验其是否有操作权限,如果为首次访问,则判断用户的登录方式,如果为显示登录,则通过用户名和密码进行校验,校验通过则进行操作权限校验;如果为隐式登录,则通过用户挂载关系表验证是否存在挂载关系,如果存在挂载关系则允许免密登录,进而进行操作权限校验。采用分布式存储、用户信息加密、普通用户不可见的方式进行灵活管理和安全保障,同时为了方便使用分布式文件系统的程序可以使用传统的方式使用文件系统,设计了一个可以免密登录分布式文件系统的用户挂载关系表,用于存储的允许免密登录文件系统的本地操作系统用户、IP等信息,提升了登录的便利性和高效性。
可选地,作为本发明一个实施例,分布式文件系统的用户管理方法,还包括在创建分布式文件系统时,生成数据库用户名和密码,并存储在配置文件中;在进行元数据库操作时,读取经加密的元数据库密码文件并解密,得到元数据库用户名和密码,进而操作元数据库。
可选地,作为本发明一个实施例,在创建用户信息表时,创建用户挂载关系表,所述用户挂载关系表用于存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系。
下面描述在本地安装分布式文件系统的实现过程;
具体地,安装过程中,在分布式文件系统的元数据库中会创建普通用户app和sroot用户;
在元数据用户中创建用户信息表、用户挂载关系表,在app用户创建其它元数据表;
通过创建用户工具suseradd,读取加密过的元数据库密码文件并且解密,得到用元数据库的用户名和密码;再向元数据库中插入加密后的分布式文件系统的用户信息(本发明中每一个工具都先做解密元数据库密码这一步,不再重复赘述),实现创建分布式文件系统的root用户;
使用分布式文件系统登录工具ssu登录root用户,创建其它需要的普通用户,如billing,并且修改默认密码,如果需要还可使用susermod工具修改用户组、uid、gid、用户默认路径、用户失效时间和失效日期后多少天后禁用等;
如果需要免密登录,则在分布式文件系统的root用户下使用smount工具挂载绑定本地用户和分布式文件系统用户的挂载关系,例如,在112.21.4.110主机的plat用户下执行绑定工具:smount billing plat112.21.4.110。
当有程序第一次文件读写请求时,判断请求是需要校验用户名密码,还是需要校验绑定关系,然后在分布式文件系统程序内部,解密配置的元数据库用户和密码,以便于后续连接元数据库时进行校验;
如果需要校验密用户名密码,则连接到分布式元数据用户,校验加密后的用户密码是否正确;
如果需要校验绑定关系,不需要单独连接sroot用户,使用普通用户app的连接,就可校验该进程所在的操作系统主机和用户是否在绑定关系表中。
校验通过后,获取该文件和目录的权限信息,判断该文件是否允许被读写。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种分布式文件系统,其特征在于,包括:
元数据用户创建模块,用于在分布式文件系统的元数据库中创建元数据用户;
数据表创建模块,用于在元数据用户中创建用户信息表和/或用户挂载关系表;
超级用户创建模块,用于创建分布式文件系统的超级用户,并将超级用户的用户信息经加密处理存储在用户信息表中;
普通用户创建模块,用于超级用户登录分布式文件系统时根据需要创建普通用户,并将普通用户的用户信息经加密处理存储在用户信息表中;
文件访问处理模块,用于在接收到文件访问请求时,根据用户信息表和/或用户挂载关系表判断用户是否有访问权限,在有访问权限时允许访问,否则拒绝访问;
所述数据表创建模块包括用户信息表创建单元和/或用户挂载关系表创建单元;
所述用户信息表创建单元用户创建用户信息表,所述用户信息表用于存储用户信息;
所述用户挂载关系创建单元用于创建用户挂载关系表,所述用户挂载关系表用于存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系;
所述文件访问处理模块包括;
首次访问判断单元,用于在接收到文件访问请求时,判断发送文件访问请求的用户是否为首次访问,如果是则调用显隐登录判断单元,否则调用权限校验单元;
显隐登录判断单元,用于根据是否传入用户名和密码判断发送文件访问请求的用户的登录方式,如果为显式登录则调用显式登录单元,如果为隐式登录则调用隐式登录单元;
显式登录单元,用于根据用户信息表判断发送文件访问请求的用户输入的用户名和密码是否正确,如果正确则调用权限校验单元,否则拒绝访问;
隐式登录单元,用于判断发送文件访问请求用户的本地操作系统信息是否在挂载关系表中,如果是则允许免密登录,并调用权限校验单元,否则拒绝访问;
权限校验单元,用于从元数据库获取的文件信息,并根据所述文件信息判断发送文件访问请求的本地操作系统信息是否有操作权限,如果有则允许进行相应的操作,否则不允许对访问的文件进行操作。
2.根据权利要求1所述的分布式文件系统,其特征在于,所述用户信息包括包括用户名、密码、用户组、用户ID、用户组ID、初始路径、失效时间和失效保留天数。
3.根据权利要求1-2任一项所述的分布式文件系统,其特征在于,还包括元数据库用户名密码生成模块,用于在创建分布式文件系统时,生成元数据库用户名和密码,并存储在配置文件中;在进行元数据库操作时,读取经加密的元数据库密码文件并解密,得到元数据库用户名和密码,进而操作元数据库。
4.一种分布式文件系统的用户管理方法,其特征在于,包括如下步骤:
S1,在分布式文件系统的元数据库中创建元数据用户;
S2,在元数据用户中创建用户信息表和/或用户挂载关系表;
S3,创建分布式文件系统的超级用户,并将超级用户的用户信息经加密处理存储在用户信息表中;
S4,超级用户登录分布式文件系统时根据需要创建普通用户,并将普通用户的用户信息经加密处理存储在用户信息表中;
S5,在接收到文件访问请求时,根据用户信息表和/或用户挂载关系表判断用户是否有访问权限,在有访问权限时允许访问,否则拒绝访问;
所述用户信息表用于存储用户信息;所述用户挂载关系表用于存储允许免密登录分布式文件系统的本地操作系统信息与分布式文件系统用户信息的对应关系;
S5包括:
S5.1,在接收到文件访问请求时,判断发送文件访问请求的用户是否为首次访问,如果是则执行S5.2元,否则执行S5.5;
S5.2,根据是否传入用户名和密码判断发送文件访问请求的用户的登录方式,如果为显式登录则执行S5.3,如果为隐式登录则执行S5.4;
S5.3,根据用户信息表判断发送文件访问请求的用户输入的用户名和密码是否正确,如果正确则S5.5,否则拒绝访问;
S5.4,判断发送文件访问请求用户的本地操作系统信息是否在挂载关系表中,如果是则允许免密登录,并执行S5.5,否则拒绝访问;
S5.5,从元数据库获取的文件信息,并根据所述文件信息判断发送文件访问请求的用户是否有操作权限,如果有则允许进行相应的操作,否则不允许对访问的文件进行操作。
5.根据权利要求4所述的分布式文件系统的用户管理方法,其特征在于,所述用户信息包括包括用户名、密码、用户组、用户ID、用户组ID、初始路径、失效时间和失效保留天数。
6.根据权利要求4-5任一项所述的分布式文件系统的用户管理方法,其特征在于,还包括在创建分布式文件系统时,生成数据库用户名和密码,并存储在配置文件中;在进行元数据库操作时,读取经加密的元数据库密码文件并解密,得到元数据库用户名和密码,进而操作元数据库。
CN201710252843.4A 2017-04-18 2017-04-18 分布式文件系统及分布式文件系统的用户管理方法 Active CN107145531B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710252843.4A CN107145531B (zh) 2017-04-18 2017-04-18 分布式文件系统及分布式文件系统的用户管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710252843.4A CN107145531B (zh) 2017-04-18 2017-04-18 分布式文件系统及分布式文件系统的用户管理方法

Publications (2)

Publication Number Publication Date
CN107145531A CN107145531A (zh) 2017-09-08
CN107145531B true CN107145531B (zh) 2020-09-04

Family

ID=59774318

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710252843.4A Active CN107145531B (zh) 2017-04-18 2017-04-18 分布式文件系统及分布式文件系统的用户管理方法

Country Status (1)

Country Link
CN (1) CN107145531B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170757B (zh) * 2017-12-22 2020-07-07 郑州云海信息技术有限公司 一种数据文件读取方法、装置及设备
CN111198842A (zh) * 2018-11-20 2020-05-26 普天信息技术有限公司 微服务系统下的文件管理系统和方法
CN110515906A (zh) * 2019-08-30 2019-11-29 济南浪潮数据技术有限公司 一种产品展示方法、装置、设备及计算机可读存储介质
CN112187875B (zh) * 2020-09-09 2022-05-13 苏州浪潮智能科技有限公司 一种分布式系统多目标集群挂载策略自动匹配方法、系统
CN113032829B (zh) * 2021-03-26 2022-06-10 山东英信计算机技术有限公司 多通道并发的文件权限管理方法、装置、服务器和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102255920A (zh) * 2011-08-24 2011-11-23 杭州华三通信技术有限公司 一种vpn配置信息的发送方法和设备
CN102546664A (zh) * 2012-02-27 2012-07-04 中国科学院计算技术研究所 用于分布式文件系统的用户与权限管理方法及系统
CN103902919A (zh) * 2012-12-24 2014-07-02 北大方正集团有限公司 一种恢复登录信息的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7181465B2 (en) * 2001-10-29 2007-02-20 Gary Robin Maze System and method for the management of distributed personalized information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102255920A (zh) * 2011-08-24 2011-11-23 杭州华三通信技术有限公司 一种vpn配置信息的发送方法和设备
CN102546664A (zh) * 2012-02-27 2012-07-04 中国科学院计算技术研究所 用于分布式文件系统的用户与权限管理方法及系统
CN103902919A (zh) * 2012-12-24 2014-07-02 北大方正集团有限公司 一种恢复登录信息的方法及装置

Also Published As

Publication number Publication date
CN107145531A (zh) 2017-09-08

Similar Documents

Publication Publication Date Title
CN107145531B (zh) 分布式文件系统及分布式文件系统的用户管理方法
KR100920871B1 (ko) 네트워크 위치의 하위 위치에 대한 사용자의 인증을 위한방법 및 시스템
CN107277049B (zh) 一种应用系统的访问方法及装置
US7496952B2 (en) Methods for authenticating a user's credentials against multiple sets of credentials
US7266702B2 (en) Method and system for managing security material and services in a distributed database system
US8549326B2 (en) Method and system for extending encrypting file system
US20020141588A1 (en) Data security for digital data storage
CN110661831B (zh) 一种基于可信第三方的大数据试验场安全初始化方法
CN106487744B (zh) 一种基于Redis存储的Shiro验证方法
CN111783075A (zh) 基于密钥的权限管理方法、装置、介质及电子设备
US20070288992A1 (en) Centralized user authentication system apparatus and method
CN106575342A (zh) 包括关系数据库的内核程序、以及用于执行所述程序的方法和装置
CN109033857B (zh) 一种访问数据的方法、装置、设备及可读存储介质
JP2011522315A (ja) 無人のアプリケーションのための認証されたデータベース接続
CN102571873B (zh) 一种分布式系统中的双向安全审计方法及装置
US20110161370A1 (en) Apparatus, program, and method for file management
CN108632241B (zh) 一种多应用系统统一登录方法和装置
JP5013931B2 (ja) コンピューターログインをコントロールする装置およびその方法
US20200042497A1 (en) Distributed ledger system
CN103095720A (zh) 一种基于会话管理服务器的云存储系统的安全管理方法
US11757877B1 (en) Decentralized application authentication
CN101739361A (zh) 访问控制方法、访问控制装置及终端设备
US7487535B1 (en) Authentication on demand in a distributed network environment
US11956228B2 (en) Method and apparatus for securely managing computer process access to network resources through delegated system credentials
US10142344B2 (en) Credential management system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant