CN113282953A - 一种samba共享权限鉴权的方法、系统、终端及存储介质 - Google Patents
一种samba共享权限鉴权的方法、系统、终端及存储介质 Download PDFInfo
- Publication number
- CN113282953A CN113282953A CN202110525658.4A CN202110525658A CN113282953A CN 113282953 A CN113282953 A CN 113282953A CN 202110525658 A CN202110525658 A CN 202110525658A CN 113282953 A CN113282953 A CN 113282953A
- Authority
- CN
- China
- Prior art keywords
- sharing
- list
- authority
- read
- write
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 241001362551 Samba Species 0.000 title claims abstract description 34
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种samba共享权限鉴权的方法、系统、终端及存储介质,包括:在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;读取当前用户的共享权限,并与请求的权限对比,完成鉴权。本发明提出了一种通过在samba中添加新的共享权限类型,高效地实现可读写但不可删除权限控制的方法。
Description
技术领域
本发明属于网络文件系统技术领域,具体涉及一种samba共享权限鉴权的方法、系统、终端及存储介质。
背景技术
通常,CIFS中对一个请求是否有权限进行操作的判断分为共享权限鉴权和ACL权限鉴权。其中,共享权限鉴权,是判断某一用户在当前共享内,是否具有某一种权限;ACL权限鉴权,是判断某一用户对共享内的某一特定文件(或目录)是否具有进行某种操作的权限。客户端将请求发给服务端后,服务端首先进行共享权限鉴权,鉴权通过后,才会在后续具体命令字的流程中,进行ACL权限鉴权。只有当用户既有共享权限又有ACL权限时,才会被允许对共享内特定文件(或目录)进行指定操作
一般来说,共享权限鉴权效率比ACL鉴权效率高:当用户挂载共享时,会生成一个treeconnect数据结构用于保存当前的挂载信息,也包括当前用户在本共享上的共享权限;鉴权的方式仅需要在内存中,读取出共享权限跟请求的权限做对比即可完成鉴权。而ACL鉴权,需要从保存ACL权限的扩展属性或者数据库中,读取ACL权限,完成鉴权。
此外共享鉴权发生的位置比ACL鉴权更早,可以提前结束流程。在特定应用场景下,用户期望实现如下的权限控制目标:对共享内的文件(或目录),特定用户具有除删除权限外的其它所有权限(文件不允许被删除)。当前,samba中共享权限只有两种:只读、读写。其中,读写就代表完全控制的共享权限。两种共享权限分别对应于配置中的读列表(readlist)和写列表(write list)。这种需求,只能通过授予用户读写的共享权限,然后为共享内的文件(或目录)添加ACL权限来实现,也就是说,共享鉴权流程会放过该请求,拦截发生在ACL鉴权的流程中。然而,设置ACL的流程复杂易出错,并且ACL鉴权效率低。
发明内容
针对现有技术的上述不足,本发明提供一种samba共享权限鉴权的方法、系统、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种samba共享权限鉴权的方法,包括:
在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;
设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;
读取当前用户的共享权限,并与请求的权限对比,完成鉴权。
进一步的,所述方法还包括:
所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表。
进一步的,所述设置不同类型共享权限的优先级,包括:设置写列表优先级大于可读写但不可删除列表;设置可读写但不可删除列表优先级大于读列表。
进一步的,所述通过读取共享配置计算共享权限,包括:
设置存在于写列表的用户的共享权限为读写;
设置不存在于写列表、但存在于可读写但不可删除列表的用户的共享权限为读写不可删除;
设置仅存在于读列表的用户的共享权限为只读。
进一步的,所述方法还包括:设置不存在于所述共享权限的配置项的用户的共享权限为拒绝访问共享。
进一步的,所述方法还包括:将共享权限保存在treeConnect结构中。
第二方面,本发明提供一种samba共享权限鉴权的系统,包括:
权限添置单元,配置用于在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;
权限计算单元,配置用于设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;
鉴权完成单元,配置用于读取当前用户的共享权限,并与请求的权限对比,完成鉴权。
第三方面,提供一种终端,包括:
处理器、存储器,其中,
该存储器用于存储计算机程序,
该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本发明的有益效果在于,
本发明提供的一种samba共享权限鉴权的方法、系统、终端及存储介质,通过在samba中添加新的共享权限类型,高效地实现可读写但不可删除权限控制,弥补了现有技术中共享权限鉴权的不足。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明一个实施例的系统的示意性框图。
图3为本发明实施例提供的一种终端的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面对本发明中出现的关键术语进行解释。
NASnetwork attach storage:网络附加存储系统。
CIFS common internet file system:通用网络文件系统。
Samba:开源SMB协议实现。
图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种samba共享权限鉴权的系统。
如图1所示,该方法包括:
步骤110,在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;
步骤120,设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;
步骤130,读取当前用户的共享权限,并与请求的权限对比,完成鉴权。
可选地,作为本发明一个实施例,所述方法还包括:
所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表。
可选地,作为本发明一个实施例,所述设置不同类型共享权限的优先级,包括:设置写列表优先级大于可读写但不可删除列表;设置可读写但不可删除列表优先级大于读列表。
可选地,作为本发明一个实施例,所述通过读取共享配置计算共享权限,包括:
设置存在于写列表的用户的共享权限为读写;
设置不存在于写列表、但存在于可读写但不可删除列表的用户的共享权限为读写不可删除;
设置仅存在于读列表的用户的共享权限为只读。
可选地,作为本发明一个实施例,所述方法还包括:设置不存在于所述共享权限的配置项的用户的共享权限为拒绝访问共享。
可选地,作为本发明一个实施例,所述方法还包括:将共享权限保存在treeConnect结构中。
为了便于对本发明的理解,下面以本发明一种samba共享权限鉴权的方法的原理,结合实施例中计算共享权限的过程,对本发明提供的一种samba共享权限鉴权的方法做进一步的描述。
具体的,所述一种samba共享权限鉴权的方法包括:
1、添加可读写不可删除共享配置项;
在samba的代码目录(docs-xml\smbdotconf\security)中新增配置文件restrictwritelist.xml。
其中,参数名称定义为“restrict write list”,应用范围设定为共享(“S”),默认值为空。
2、读取共享配置,计算共享权限;
read list、restrict write list、write list这三种共享权限的优先级关系如下:
read list<restrict write list<write list
即,write list的优先级大于restrict write list,restrict write list优先级大于read list。
共享权限计算逻辑:
当某一用户存在于write list内时,其共享权限即为读写(完全控制);当某一用户不存在于write list,但存在于restirct write list时,其共享权限即为读写不可删除;当某一用户仅存在于read list时,其共享权限即为只读;当某一用户不存在于这三种共享权限列表时,其共享权限为空(拒绝访问共享)。
在用户挂载共享时,会通过读取配置项计算共享权限。添加读取restrict writelist配置的代码,通过上面的共享权限计算逻辑,计算出当前用户的共享权限。将共享权限保存在treeConnect结构中。
3、共享鉴权;
从保存的treeConnect数据结构中,读取当前用户的共享权限,跟请求的权限做对比,完成鉴权。
如图2示,该系统200包括:
权限添置单元210,配置用于在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;
权限计算单元220,配置用于设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;
鉴权完成单元230,配置用于读取当前用户的共享权限,并与请求的权限对比,完成鉴权。
图3为本发明实施例提供的一种终端系统300的结构示意图,该终端系统300可以用于执行本发明实施例提供的一种samba共享权限鉴权的方法。
其中,该终端系统300可以包括:处理器310、存储器320及通信单元330。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,该存储器320可以用于存储处理器310的执行指令,存储器320可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器320中的执行指令由处理器310执行时,使得终端300能够执行以下上述方法实施例中的部分或全部步骤。
处理器310为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器310可以仅包括中央处理器(Central Processing Unit,简称CPU)。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信单元330,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
因此,本发明通过在samba中添加新的共享权限类型,高效地解决了允许读写,但不允许删除权限控制的需求,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种samba共享权限鉴权的方法,其特征在于,包括:
在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;
设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;
读取当前用户的共享权限,并与请求的权限对比,完成鉴权。
2.根据权利要求1所述的samba共享权限鉴权的方法,其特征在于,所述设置不同类型共享权限的优先级,包括:设置写列表优先级大于可读写但不可删除列表;设置可读写但不可删除列表优先级大于读列表。
3.根据权利要求2所述的samba共享权限鉴权的方法,其特征在于,所述通过读取共享配置计算共享权限,包括:
设置存在于写列表的用户的共享权限为读写;
设置不存在于写列表、但存在于可读写但不可删除列表的用户的共享权限为读写不可删除;
设置仅存在于读列表的用户的共享权限为只读。
4.根据权利要求3所述的samba共享权限鉴权的方法,其特征在于,所述方法还包括:设置不存在于所述共享权限的配置项的用户的共享权限为拒绝访问共享。
5.根据权利要求3或4所述的samba共享权限鉴权的方法,其特征在于,所述方法还包括:将共享权限保存在treeConnect结构中。
6.一种samba共享权限鉴权的系统,其特征在于,包括:
权限添置单元,配置用于在samba的代码目录添加共享权限的配置项,所述共享权限的配置项包括:写列表、可读写但不可删除列表和读列表;
权限计算单元,配置用于设置不同类型共享权限的优先级,并通过读取共享配置计算共享权限;
鉴权完成单元,配置用于读取当前用户的共享权限,并与请求的权限对比,完成鉴权。
7.一种终端,其特征在于,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-5任一项所述的方法。
8.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110525658.4A CN113282953A (zh) | 2021-05-14 | 2021-05-14 | 一种samba共享权限鉴权的方法、系统、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110525658.4A CN113282953A (zh) | 2021-05-14 | 2021-05-14 | 一种samba共享权限鉴权的方法、系统、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113282953A true CN113282953A (zh) | 2021-08-20 |
Family
ID=77278970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110525658.4A Pending CN113282953A (zh) | 2021-05-14 | 2021-05-14 | 一种samba共享权限鉴权的方法、系统、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113282953A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105407105A (zh) * | 2015-12-24 | 2016-03-16 | Tcl集团股份有限公司 | 一种在samba服务上进行设备鉴权的方法及系统 |
CN106713300A (zh) * | 2016-12-16 | 2017-05-24 | 普华基础软件股份有限公司 | 一种基于webdav的通用文件共享系统及方法 |
CN112714139A (zh) * | 2019-10-24 | 2021-04-27 | 中兴通讯股份有限公司 | 文件共享系统、方法、电子设备和存储介质 |
-
2021
- 2021-05-14 CN CN202110525658.4A patent/CN113282953A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105407105A (zh) * | 2015-12-24 | 2016-03-16 | Tcl集团股份有限公司 | 一种在samba服务上进行设备鉴权的方法及系统 |
CN106713300A (zh) * | 2016-12-16 | 2017-05-24 | 普华基础软件股份有限公司 | 一种基于webdav的通用文件共享系统及方法 |
CN112714139A (zh) * | 2019-10-24 | 2021-04-27 | 中兴通讯股份有限公司 | 文件共享系统、方法、电子设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
曲广平: "Samba服务权限配置案例", 《系统维护与管理》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10949551B2 (en) | Policy aware unified file system | |
CN111181975B (zh) | 一种账号管理方法、装置、设备及存储介质 | |
CN102112990B (zh) | 为计算过程授予最小特权访问 | |
US20200250333A1 (en) | Data management system and data management method | |
US20030101200A1 (en) | Distributed file sharing system and a file access control method of efficiently searching for access rights | |
CN101908120B (zh) | 在单个智能卡上实现多合一卡功能的方法 | |
US20150033327A1 (en) | Systems and methodologies for managing document access permissions | |
CN107844711B (zh) | 数据操作权限隔离方法、应用服务器及计算机可读存储介质 | |
CN103581187A (zh) | 访问权限的控制方法及控制系统 | |
CN113946837A (zh) | 数据访问和数据访问权限的配置方法、设备、存储介质 | |
CN113612802B (zh) | 一种访问控制方法、装置、设备及可读存储介质 | |
US9325722B2 (en) | Apparatus, method, and computer-readable medium | |
US20160087989A1 (en) | Assignment of Security Contexts to Define Access Permissions for File System Objects | |
CN111125744B (zh) | 代码分支合并方法、系统、计算机设备及可读存储介质 | |
CN113282953A (zh) | 一种samba共享权限鉴权的方法、系统、终端及存储介质 | |
CN113806309B (zh) | 基于分布式锁的元数据删除方法、系统、终端及存储介质 | |
CN109495432B (zh) | 一种匿名账户的鉴权方法及服务器 | |
CN113076086B (zh) | 元数据管理系统和使用其对模型对象进行建模的方法 | |
CN111611555B (zh) | 物理层授权、访问方法及装置 | |
CN114443101A (zh) | 系统高级审核策略更新方法、系统、终端及存储介质 | |
CN111783121A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN111966286A (zh) | 一种多数据池分级迁移的方法及系统 | |
US20140115005A1 (en) | System and methods for live masking file system access control entries | |
CN109783489A (zh) | 再保月结数据的处理装置、方法及存储介质 | |
CN110543459A (zh) | 一种nfs下文件锁状态获取方法、系统、终端及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210820 |
|
RJ01 | Rejection of invention patent application after publication |