CN114491643A - 访问控制方法、装置、存储介质及服务器 - Google Patents
访问控制方法、装置、存储介质及服务器 Download PDFInfo
- Publication number
- CN114491643A CN114491643A CN202210134794.5A CN202210134794A CN114491643A CN 114491643 A CN114491643 A CN 114491643A CN 202210134794 A CN202210134794 A CN 202210134794A CN 114491643 A CN114491643 A CN 114491643A
- Authority
- CN
- China
- Prior art keywords
- access
- authority
- address
- dictionary tree
- destination address
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例公开了一种访问控制方法、装置、计算机可读存储介质及服务器。方法包括:接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。以此,通过将权限地址构建成字典树,从而将目的地址的目标字符数组与字典树相匹配,从而快速匹配出匹配结果,并基于访问状态以及所述匹配结果确定是否允许访问,从而解决权限的验证耗时较长,效率较低的问题。
Description
技术领域
本申请涉及计算机领域,具体涉及一种访问控制方法、装置、计算机可读存储介质及服务器。
背景技术
在现有的微服务体系开发的后端服务平台中网关是所有服务请求的入口并承担路由转发等工作,在网关处加权限过滤可以使各服务只需关注业务逻辑代码无需关注权限校验功能。权限校验不通过的请求也不会转发到相应的服务中。
传统的API权限校验是在API接口代码中根据请求用户的角色,这样会造成业务逻辑代码中大量验证代码的冗余及后期不方便修改逻辑;后来人们也开始在API入口处统一管理控制用户权限,普通的url路径匹配是用字符串匹配的模式,当后续配置权限配置项逐渐增加后匹配效率会越来越低总体的时间复杂度为O(n*m)(n为字符串长度,m为权限配置项的条数)。且随着配置的增加权限校验表在系统中所需占用的内存也越来越大。
在对现有技术的研究和实践过程中,本申请的发明人发现,现有技术中访问权限的验证耗时较长,效率较低。
发明内容
本申请实施例提供一种访问控制方法及装置,可以降低访问权限的验证过程中的验证时长,提高验证效率。
为解决上述技术问题,本申请实施例提供以下技术方案:
一种访问控制方法,包括:
接收访问请求,获取所述访问请求中请求访问的目的地址;
判断所述访问请求中是否携带有验证信息,确定用户的访问状态;
将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;
基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
一种访问控制装置,包括:
第一获取模块,用于接收访问请求,获取所述访问请求中请求访问的目的地址;
判断模块,用于判断所述访问请求中是否携带有验证信息,确定用户的访问状态;
匹配模块,用于将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;
第一确定模块,用于基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
在一些实施例中,所述装置还包括:
读取模块,用于读取预先配置的多个权限地址,将每一所述权限地址拆分成权限字符数组;
构建模块,用于根据多个所述权限字符数组中的权限字符构建字典树。
在一些实施例中,所述装置还包括:
第二获取模块,用于获取多个权限地址中需要账号权限的目标权限地址;
第三获取模块,用于获取为每一所述目标权限地址配置的账号权限列表;
第二确定模块,用于从所述字典树中确定每一所述目标权限地址对应的位置;
插入模块,用于将各所述目标权限地址对应的账号权限列表插入对应的位置。。
在一些实施例中,所述判断模块,包括:
第一确定子模块,用于确定所述访问请求中是否携带有验证信息;
第二确定子模块,用于若所述访问请求中携带有验证信息,则确定所述访问状态为登录账号后访问;
第三确定子模块,用于若所述访问请求中携带有验证信息,则确定所述访问状态为未登录访问。
在一些实施例中,所述匹配模块,包括:
第一生成子模块,用于若所述字典树与所述目标字符数组匹配,则匹配结果为所述目的地址为权限地址;
第二生成子模块,用于若所述字典树与所述目标字符数组不匹配,则匹配结果为所述目的地址为非权限地址。
在一些实施例中,所述第一确定模块,包括:
第一查询子模块,用于若所述用户的访问状态为登录账号后访问,且匹配结果为所述目的地址为权限地址,则查询所述字典树中针对于所述目标字符数组是否插入有账号权限列表;
第四确定子模块,用于若所述字典树中针对于所述目标字符数组未插入有账号权限列表,则确定允许访问所述目的地址。
在一些实施例中,所述第一确定模块,还包括:
筛选子模块,用于若所述字典树中针对于所述目标字符数组插入有账号权限列表,则筛选所述账号权限列表中是否存在所述访问账号;
第五确定子模块,用于若所述账号权限列表中不存在所述访问账号,则确定禁止访问所述目的地址。
在一些实施例中,所述第一确定模块,包括:
第六确定子模块,用于若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为权限地址,则确定禁止以未登录访问的访问状态访问所述目的地址。
在一些实施例中,所述第一确定模块,包括:
第七确定子模块,用于若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为非权限地址,则确定允许以未登录访问的访问状态访问所述目的地址。
一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述访问控制方法中的步骤。
一种服务器,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述访问控制方法中的步骤。
本申请实施例通过接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。以此,通过将权限地址构建成字典树,从而将目的地址的目标字符数组与字典树相匹配,从而快速匹配出匹配结果,并基于访问状态以及所述匹配结果确定是否允许访问,从而解决权限的验证耗时较长,效率较低的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的访问控制方法的场景示意图。
图1b为本申请实施例提供的访问控制方法的流程示意图。
图1c为本申请实施例提供的字典树示意图。
图2为本申请实施例提供的访问控制装置的结构示意图。
图3为本申请实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一访问控制方法、装置及计算机可读存储介质。
请参阅图1a,图1a为本申请实施例所提供的访问控制系统的系统示意图,该系统可以包括至少一个客户端设备1000,至少一个服务器2000,其中,客户端设备1000与服务器2000可通过网络3000建立连接。用户通过客户端设备1000发送用于访问目的地址的访问请求,访问请求通过网络3000发送至服务器2000。其中,网络3000可以是无线网络或者有线网络,比如无线网络为无线局域网(WLAN)、局域网(LAN)、蜂窝网络、2G网络、3G网络、4G网络、5G网络等。客户端设备1000可以为手机、电脑或个人数字助理等设备。另外,该系统可以包括数据库4000,数据库4000可用于存储预先设定的一些权限地址的地址信息。
本申请实施例提供了一种访问控制方法,该方法可以由服务器执行。如图1a所示,该服务器2000接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。基于此,通过将权限地址构建成字典树,从而将目的地址的目标字符数组与字典树相匹配,从而快速匹配出匹配结果,并基于访问状态以及所述匹配结果确定是否允许访问,从而解决权限的验证耗时较长,效率较低的问题。
需要说明的是,图1a所示的访问控制系统的场景示意图仅仅是一个示例,本申请实施例描述的访问控制系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着访问控制系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在本实施例中,将从访问控制装置的角度进行描述,该访问控制装置具体可以集成在具备储存单元并安装有微处理器而具有运算能力的移动终端中。
请参阅图1b,图1b为本申请实施例提供的访问控制方法的流程示意图。该访问控制方法包括:
在步骤101中,接收访问请求,获取所述访问请求中请求访问的目的地址。
其中,访问请求为用户点击安装在客户端设备中某一应用所提供的控件或按钮所生成的访问请求。具体的,每一应用对应有一用于接收访问请求的前端服务器,并且不同控件或按钮对应访问的访问地址(Uniform Resource Locator,URL)均不相同。例如,控件A对应的访问地址为地址A,按钮B对应的访问地址为地址B,故访问请求需要根据用户所点击的控件或按钮确定出对应的目的地址生成。
在步骤102中,判断所述访问请求中是否携带有验证信息,确定用户的访问状态。
其中,访问的方式一般分为登录账号后访问以及无账号访问两种方式,用户登录账户时将用户信息及角色信息与验证信息(token)一起保存在redis中,只要通过token就能从redis中读取出其角色信息。因此可在网关服务中添加一个权限验证过滤器,在过滤器中先验证用户是否携带token,如携带token获取其用户角色。如无token或无角色则以无角色进入后续验证。
在一些实施方式中,所述判断所述访问请求中是否携带有验证信息,确定用户的访问状态的步骤,包括:
(1)确定所述访问请求中是否携带有验证信息;
(2)若所述访问请求中携带有验证信息,则确定所述访问状态为登录账号后访问;
(3)若所述访问请求中携带有验证信息,则确定所述访问状态为未登录访问。
其中,验证信息可被访问请求所携带,也即访问请求的生成过程中会事先判断用户的访问方式,若访问方式为登录账号后访问,则访问请求会携带有验证信息;若访问方式为无账号访问,则访问请求不会携带有验证信息。故可通过判断访问请求中是否携带验证信息从而确定用户的访问方式。
步骤103、将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树。
其中,url地址的形式一般为由字母和\或数字组成,例如,abcd://hjuco13,因此可以将目的地址拆分成目标字符数组,例如[abcdhjuco13],拆分成数组的目的是用于与字典树进行匹配,从而得到匹配结果。
具体的,字典树为根据应用程序在开发时设定的一些需要权限才可以访问的权限地址所构建的。
在一些实施方式中,在所述匹配所述目标字符数组与字典树,得到匹配结果的步骤之前,还包括:
(1)读取预先配置的多个权限地址,将每一所述权限地址拆分成权限字符数组;
(2)根据多个所述权限字符数组中的权限字符构建字典树。
其中,服务启动时创建字典树并保存到本地缓存中。读取数据库中所有已配置的权限路径。将路径都拆分成一个个字符数组,按顺序将字符数组构建成字典树。
具体的,请参阅图1c,图1c为本申请实施例提供的字典树示意图。以获取到的权限地址为d://hju以及d://herg为例,将每一所述权限地址拆分成权限字符数组,得到两组权限字符数组,分别为[dhju]以及[dherg],并根据该两组权限字符数组构建出图1c所示的字典树。
在一些实施方式中,在所述根据多个所述权限字符数组中的权限字符构建字典树的步骤之后,包括:
(1)获取多个权限地址中需要账号权限的目标权限地址;
(2)获取为每一所述目标权限地址配置的账号权限列表;
(3)从所述字典树中确定每一所述目标权限地址对应的位置;
(4)将各所述目标权限地址对应的账号权限列表插入对应的位置。
其中,存在一些权限地址的访问还需要指定的权限账号才可以访问,故还可以获取多个权限地址中需要账号权限的目标权限地址,并获取每一目标权限地址配置的账号权限列表,例如,访问权限地址d://hju需要权限账号A以及权限账号B才可以访问。故将账号权限列表插入到目标权限地址对应的位置,如图1c所示,在d://hju的子节点处插入权限账号A以及权限账号B。
具体的,由于需要兼顾配置的简易性,我们需要支持路径通配符的功能。规定配置路径最后如果为“*”号则表示后续路径皆使用该配置项。
在一些实施方式中,所述匹配所述目标字符数组与字典树,得到匹配结果的步骤,包括:
(1)若目标字符数组与字典树匹配,则匹配结果为所述目的地址为权限地址;
(2)若目标字符数组与字典树不匹配,则匹配结果为所述目的地址为非权限地址。
其中,若匹配结果为所述目的地址为非权限地址,则说明目的地址无需权限即可访问,则确定允许直接访问目的地址。
例如,假设目的地址为d://hju,则目标字符数组为[dhju],假设字典树如图1c所示,首先,将目标字符数组中的第一个字符“d”与字典树的第一级节点的字符进行匹配,由于第一级节点存在字符“d”,因此可以继续向下匹配,即将目标字符数组中的第二个字符“h”与字典树的第二级节点的字符进行匹配,由于第二级节点存在字符“h”,因此可以继续向下匹配,即将目标字符数组中的第三个字符“j”与字典树的第三级节点的字符进行匹配,由于第三级节点存在字符“j”,因此可以继续向下匹配,即将目标字符数组中的第四个字符“u”与字典树的第四级节点的字符进行匹配,由于第四级节点存在字符“u”,且目标字符数组[dhju]中的所有字符都可以与字典树中的字符进行匹配,因此可确定标字符数组[dhju]与字典树匹配,从而可确定目的地址d://hju为权限地址。
假设目的地址为d://hzu,则目标字符数组为[dhzu],假设字典树如图1c所示,按照上述方式依次将目标字符数组[dhzu]中的字符与字典树中的字符进行匹配,可以确定当匹配到目标字符数组中的字符“z”时,字典树的第三级节点中并不存在与之匹配的字符,因此无需继续向下匹配,可直接确定目标字符数组[dhzu]与字典树不匹配,从而可确定目的地址d://hzu为非权限地址。
步骤104、基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
其中,由于访问状态分为登录账号后访问以及未登录访问,匹配结果分为目的地址为权限地址以及目的地址为非权限地址,故针对于不同的情况,确定是否允许访问目的地址。
在一些实施方式中,所述基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址的步骤,包括:
(1)若所述用户的访问状态为登录账号后访问,且匹配结果为所述目的地址为权限地址,则查询所述字典树中针对于所述目标字符数组是否插入有账号权限列表;
(2)若所述字典树中针对于所述目标字符数组未插入有账号权限列表,则确定允许访问所述目的地址。
其中,若用户的访问状态为登录账号后访问,且目的地址为权限地址,则确定字典树中针对于所述目标字符数组是否插入有账号权限列表。若未插入有账号权限列表,则说明目的地址需要用户的访问状态为登录账号后访问,因用户访问状态满足该条件,则允许访问所述目的地址。
在一些实施方式中,所述方法还包括:
(1)若所述字典树中针对于所述目标字符数组插入有账号权限列表,则筛选所述账号权限列表中是否存在所述访问账号;
(2)若所述账号权限列表中不存在所述访问账号,则确定禁止访问所述目的地址。
其中,若所述字典树中针对于所述目标字符数组插入有账号权限列表,则说明访问目的地址还有账号的限制,故筛选所述账号权限列表中是否存在所述访问账号,若所述账号权限列表中不存在所述访问账号,则确定禁止访问所述目的地址;若账号权限列表中存在所述访问账号,则确定允许访问所述目的地址。
在一些实施方式中,所述基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址的步骤,包括:
若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为权限地址,则确定禁止以未登录访问的访问状态访问所述目的地址。
其中,若匹配结果为所述目的地址为权限地址,则说明目的地址需要用户的访问状态为登录账号后访问,而由于用户的访问状态为未登录访问,则确定禁止以未登录访问的访问状态访问所述目的地址。
在一些实施方式中,所述基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址的步骤,包括:
若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为非权限地址,则确定允许以未登录访问的访问状态访问所述目的地址。
其中,若目的地址为非权限地址,且所述用户的访问状态为未登录访问,则确定允许以未登录访问的访问状态访问所述目的地址。
由上述可知,本申请实施例通过接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。以此,通过将权限地址构建成字典树,从而将目的地址的目标字符数组与字典树相匹配,从而快速匹配出匹配结果,并基于访问状态以及所述匹配结果确定是否允许访问,从而解决权限的验证耗时较长,效率较低的问题。
为便于更好的实施本申请实施例提供的访问控制方法,本申请实施例还提供一种基于上述访问控制方法的装置。其中名词的含义与上述访问控制方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图2,图2为本申请实施例提供的访问控制装置的结构示意图。其中该访问控制装置可以包括第一获取模块201、判断模块202、匹配模块203以及第一确定模块204等。
第一获取模块201,用于接收访问请求,获取所述访问请求中请求访问的目的地址;
判断模块202,用于判断所述访问请求中是否携带有验证信息,确定用户的访问状态;
匹配模块203,用于将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;
第一确定模块204,用于基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
在一些实施方式中,所述装置还包括:
读取模块,用于读取预先配置的多个权限地址,将每一所述权限地址拆分成权限字符数组;
构建模块,用于根据多个所述权限字符数组中的权限字符构建字典树。
在一些实施方式中,所述装置还包括:
第二获取模块,用于获取多个权限地址中需要账号权限的目标权限地址;
第三获取模块,用于获取为每一所述目标权限地址配置的账号权限列表;
第二确定模块,用于从所述字典树中确定每一所述目标权限地址对应的位置;
插入模块,用于将各所述目标权限地址对应的账号权限列表插入对应的位置。。
在一些实施方式中,所述判断模块202,包括:
第一确定子模块,用于确定所述访问请求中是否携带有验证信息;
第二确定子模块,用于若所述访问请求中携带有验证信息,则确定所述访问状态为登录账号后访问;
第三确定子模块,用于若所述访问请求中携带有验证信息,则确定所述访问状态为未登录访问。
在一些实施方式中,所述匹配模块203,包括:
第一生成子模块,用于若所述字典树与所述目标字符数组匹配,则匹配结果为所述目的地址为权限地址;
第二生成子模块,用于若所述字典树与所述目标字符数组不匹配,则匹配结果为所述目的地址为非权限地址。
在一些实施方式中,所述第一确定模块204,包括:
第一查询子模块,用于若所述用户的访问状态为登录账号后访问,且匹配结果为所述目的地址为权限地址,则查询所述字典树中针对于所述目标字符数组是否插入有账号权限列表;
第四确定子模块,用于若所述字典树中针对于所述目标字符数组未插入有账号权限列表,则确定允许访问所述目的地址。
在一些实施方式中,所述第一确定模块204,还包括:
筛选子模块,用于若所述字典树中针对于所述目标字符数组插入有账号权限列表,则筛选所述账号权限列表中是否存在所述访问账号;
第五确定子模块,用于若所述账号权限列表中不存在所述访问账号,则确定禁止访问所述目的地址。
在一些实施方式中,所述第一确定模块204,包括:
第六确定子模块,用于若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为权限地址,则确定禁止以未登录访问的访问状态访问所述目的地址。
在一些实施方式中,所述第一确定模块204,包括:
第七确定子模块,用于若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为非权限地址,则确定允许以未登录访问的访问状态访问所述目的地址。
由上述可知,本申请实施例通过第一获取模块201接收访问请求,获取所述访问请求中请求访问的目的地址;判断模块202判断所述访问请求中是否携带有验证信息,确定用户的访问状态;匹配模块203将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;第一确定模块204基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。以此,通过将权限地址构建成字典树,从而将目的地址的目标字符数组与字典树相匹配,从而快速匹配出匹配结果,并基于访问状态以及所述匹配结果确定是否允许访问,从而解决权限的验证耗时较长,效率较低的问题。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
相应的,本申请实施例还提供一种移动终端,该移动终端可以为终端或者服务器,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备。如图3所示,图3为本申请实施例提供的移动终端的结构示意图。该移动终端1000包括有一个或者一个以上处理核心的处理器301、有一个或一个以上计算机可读存储介质的存储器302及存储在存储器302上并可在处理器上运行的计算机程序。其中,处理器301与存储器302电性连接。本领域技术人员可以理解,图中示出的移动终端结构并不构成对移动终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器301是移动终端1000的控制中心,利用各种接口和线路连接整个移动终端1000的各个部分,通过运行或加载存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的数据,执行移动终端1000的各种功能和处理数据,从而对移动终端1000进行整体监控。
在本申请实施例中,移动终端1000中的处理器301会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器302中,并由处理器301来运行存储在存储器302中的应用程序,从而实现各种功能:
加载待显示的滚动视图,获取所述滚动视图的尺寸信息;基于所述滚动视图的滚动边界以及所述尺寸信息,在所述滚动视图中添加圆形视图,以使圆形视图的部分区域被所述滚动边界划分到所述滚动视图内;在图形用户界面的滚动视图显示区域显示所述滚动视图的部分内容;响应于针对所述滚动视图显示区域中滚动视图的滚动操作,控制所述滚动视图的内容沿所述滚动操作的滚动方向在所述滚动视图显示区域中滚动显示;当所述圆形视图逐渐被滚动至所述滚动视图显示区域在滚动方向的区域边界时,根据所述滚动操作逐渐显示所述圆形视图的部分区域。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
相应的,本申请实施例还提供一种服务器,如图3所示,图3为本申请实施例提供的服务器的结构示意图。该服务器2000包括有一个或者一个以上处理核心的处理器301、有一个或一个以上计算机可读存储介质的存储器302及存储在存储器302上并可在处理器上运行的计算机程序。其中,处理器301与存储器302电性连接。本领域技术人员可以理解,图中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器301是服务器2000的控制中心,利用各种接口和线路连接整个服务器2000的各个部分,通过运行或加载存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的数据,执行服务器2000的各种功能和处理数据,从而对服务器2000进行整体监控。
在本申请实施例中,服务器2000中的处理器301会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器302中,并由处理器301来运行存储在存储器302中的应用程序,从而实现各种功能:
接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图3所示,服务器2000还包括:输入单元303以及电源304。其中,处理器301分别与输入单元303以及电源304电性连接。本领域技术人员可以理解,图3中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
输入单元303可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源304用于给服务器2000的各个部件供电。可选的,电源304可以通过电源管理系统与处理器301逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源304还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图3中未示出,服务器2000还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
由上可知,本实施例提供的服务器可以接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。以此,通过将权限地址构建成字典树,从而将目的地址的目标字符数组与字典树相匹配,从而快速匹配出匹配结果,并基于访问状态以及所述匹配结果确定是否允许访问,从而解决权限的验证耗时较长,效率较低的问题。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种应用于访问控制方法中的步骤。例如,该计算机程序可以执行如下步骤:
接收访问请求,获取所述访问请求中请求访问的目的地址;判断所述访问请求中是否携带有验证信息,确定用户的访问状态;将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种访问控制方法中的步骤,因此,可以实现本申请实施例所提供的任一种应用于船舶的设备通信方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种访问控制方法、装置、计算机可读存储介质及移动终端进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上该,本说明书内容不应理解为对本申请的限制。
Claims (12)
1.一种访问控制方法,其特征在于,包括:
接收访问请求,获取所述访问请求中请求访问的目的地址;
判断所述访问请求中是否携带有验证信息,确定用户的访问状态;
将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;
基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
2.根据权利要求1所述的访问控制方法,其特征在于,在所述匹配所述目标字符数组与字典树,得到匹配结果的步骤之前,还包括:
读取预先配置的多个权限地址,将每一所述权限地址拆分成权限字符数组;
根据多个所述权限字符数组中的权限字符构建字典树。
3.根据权利要求2所述的访问控制方法,其特征在于,在所述根据多个所述权限字符数组中的权限字符构建字典树的步骤之后,包括:
获取多个权限地址中需要账号权限的目标权限地址;
获取为每一所述目标权限地址配置的账号权限列表;
从所述字典树中确定每一所述目标权限地址对应的位置;
将各所述目标权限地址对应的账号权限列表插入对应的位置。
4.根据权利要求1所述的访问控制方法,其特征在于,所述判断所述访问请求中是否携带有验证信息,确定用户的访问状态的步骤,包括:
确定所述访问请求中是否携带有验证信息;
若所述访问请求中携带有验证信息,则确定所述访问状态为登录账号后访问;
若所述访问请求中携带有验证信息,则确定所述访问状态为未登录访问。
5.根据权利要求3所述的访问控制方法,其特征在于,所述匹配所述目标字符数组与字典树,得到匹配结果的步骤,包括:
若所述字典树与所述目标字符数组匹配,则匹配结果为所述目的地址为权限地址;
若所述字典树与所述目标字符数组不匹配,则匹配结果为所述目的地址为非权限地址。
6.根据权利要求5所述的访问控制方法,其特征在于,所述基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址的步骤,包括:
若所述用户的访问状态为登录账号后访问,且匹配结果为所述目的地址为权限地址,则查询所述字典树中针对于所述目标字符数组是否插入有账号权限列表;
若所述字典树中针对于所述目标字符数组未插入有账号权限列表,则确定允许访问所述目的地址。
7.根据权利要求6所述的访问控制方法,其特征在于,所述方法还包括:
若所述字典树中针对于所述目标字符数组插入有账号权限列表,则筛选所述账号权限列表中是否存在所述访问账号;
若所述账号权限列表中不存在所述访问账号,则确定禁止访问所述目的地址。
8.根据权利要求5所述的访问控制方法,其特征在于,所述基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址的步骤,包括:
若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为权限地址,则确定禁止以未登录访问的访问状态访问所述目的地址。
9.根据权利要求5所述的访问控制方法,其特征在于,所述基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址的步骤,包括:
若所述用户的访问状态为未登录访问,且匹配结果为所述目的地址为非权限地址,则确定允许以未登录访问的访问状态访问所述目的地址。
10.一种访问控制装置,其特征在于,包括:
第一获取模块,用于接收访问请求,获取所述访问请求中请求访问的目的地址;
判断模块,用于判断所述访问请求中是否携带有验证信息,确定用户的访问状态;
匹配模块,用于将所述目的地址拆分成目标字符数组,并匹配所述目标字符数组与字典树,得到匹配结果,所述字典树为基于预设的权限地址所构建的字典树;
第一确定模块,用于基于所述访问状态以及所述匹配结果,确定是否允许访问所述目的地址。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至9任一项所述的访问控制方法中的步骤。
12.一种服务器,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至9任一项所述访问控制方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210134794.5A CN114491643A (zh) | 2022-02-14 | 2022-02-14 | 访问控制方法、装置、存储介质及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210134794.5A CN114491643A (zh) | 2022-02-14 | 2022-02-14 | 访问控制方法、装置、存储介质及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114491643A true CN114491643A (zh) | 2022-05-13 |
Family
ID=81480096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210134794.5A Pending CN114491643A (zh) | 2022-02-14 | 2022-02-14 | 访问控制方法、装置、存储介质及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114491643A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132422A (zh) * | 2023-04-19 | 2023-05-16 | 天津卓朗昆仑云软件技术有限公司 | 输入设备的权限控制方法、装置、服务器及可读存储介质 |
-
2022
- 2022-02-14 CN CN202210134794.5A patent/CN114491643A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132422A (zh) * | 2023-04-19 | 2023-05-16 | 天津卓朗昆仑云软件技术有限公司 | 输入设备的权限控制方法、装置、服务器及可读存储介质 |
CN116132422B (zh) * | 2023-04-19 | 2023-06-27 | 天津卓朗昆仑云软件技术有限公司 | 输入设备的权限控制方法、装置、服务器及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9690601B2 (en) | Dynamic profile switching based on user identification | |
WO2018149292A1 (zh) | 一种对象聚类方法和装置 | |
US20160241589A1 (en) | Method and apparatus for identifying malicious website | |
US10993090B2 (en) | Network access method, apparatus, and system | |
CN103279272B (zh) | 一种在电子装置中启动应用程序的方法及装置 | |
US20140114991A1 (en) | Providing access to information | |
CN114491643A (zh) | 访问控制方法、装置、存储介质及服务器 | |
CN114139135A (zh) | 设备登录管理方法、装置及存储介质 | |
CN109543448A (zh) | Hdfs文件访问权限控制方法、设备及存储介质 | |
US20020052908A1 (en) | Information processing method and information | |
EP1422958B1 (en) | Permission token management system, permission token management method, program and recording medium | |
CN107395737A (zh) | 访问网络资源的方法、装置、系统及计算机可读存储介质 | |
CN110245016B (zh) | 数据处理方法、系统、装置及终端设备 | |
CN116340970A (zh) | 业务系统登陆方法、装置、电子设备和可读存储介质 | |
US20230007008A1 (en) | Systems and methods for secure selection of a user profile in a shared context | |
CN113746909A (zh) | 网络连接方法、装置、电子设备和计算机可读存储介质 | |
CN114386010A (zh) | 应用登录方法、装置、电子设备以及存储介质 | |
CN112214743A (zh) | 一种模拟账户登录的方法、装置、设备及存储介质 | |
CN115080497B (zh) | 一种识别rdma类型节点的方法、装置、系统及介质 | |
CN116029380B (zh) | 量子算法处理方法、装置、设备、存储介质及程序产品 | |
CN116170222A (zh) | K8s鉴权方法、相关设备及存储介质 | |
CN114598771A (zh) | 设备管理方法、装置、电子设备和计算机可读存储介质 | |
CN115881116A (zh) | 界面控制方法、装置、电子设备及计算机可读存储介质 | |
CN114579204A (zh) | 一种风险控制方法、装置、终端及存储介质 | |
CN117406869A (zh) | 控件触发方法、装置、电子设备及计算机存储介质 |
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 |