访问权限过滤方法、系统、计算机设备和存储介质与流程

文档序号:16775016发布日期:2019-02-01 18:39阅读:144来源:国知局
访问权限过滤方法、系统、计算机设备和存储介质与流程

本发明涉及网页权限处理技术领域,尤其涉及一种访问权限过滤方法、系统、计算机设备和存储介质。



背景技术:

网销,即“网络销售”,主要指依托互联网为载体平台的销售形式及行为。在互联网电子商务系统中,用户经常需要登陆网络销售页面发送用户请求。现有技术中当客户端的用户向该网页服务器输入指令后,网页服务器需对所述指令进行验证,再依验证的结果,赋予该客户端某一使用权限,使该客户端可至该网页服务器中,针对该权限所允许的网页,进行浏览、编辑或访问。目前,网页的权限保护是通过修改网页的权限设定,进而限制客户端的访问。客户端的用户通过输入用户名和密码,得到认证后进入网页。若用户需要访问多个网页,则该多个网页均需要被修改,该方法比较繁琐,会造成在使用上的诸多不便及困扰,且需要修改权限时,需要对多个页面均进行修改,维护难度大。网页的权限保护还可通过修改网页服务器的数据库表的数据来控制权限,该方法需要通过数据库的表数据控制权限,代码量多且建表逻辑繁琐,对不同数据库进行迁移也很麻烦。



技术实现要素:

有鉴于此,有必要针对客户端的用户在访问页面时,对访问权限的设定繁琐,代码量大且不容易维护的问题,提供一种访问权限过滤方法、系统、计算机设备和存储介质。

一种访问权限过滤方法,包括:

接收客户端的用户发送的网页访问请求,根据所述网页访问请求获取用户信息;

根据所述用户信息判断用户的登陆状态,若处于已登陆状态,则在预设的配置文件中查找与用户登陆信息对应的用户权限,所述配置文件包含有所述网页的用户权限、所述用户权限对应的访问页面;

若在所述配置文件中查找到与所述用户登陆信息对应的所述用户权限,则将所述用户权限对应的访问页面返回给所述客户端,否则,将访问失败页面返回给所述客户端。

在其中一个实施例中,所述接收客户端的用户发送的网页访问请求,根据所述页面访问请求获取用户信息,包括:

与客户端建立传输控制协议tcp连接,接收客户端的用户发送的网页访问请求,所述网页访问请求是超文本传输协议http请求报文;

从所述http请求报文中的请求头部获取所述用户信息。

在其中一个实施例中,所述根据所述用户信息判断用户的登陆状态,包括:

判断内存中是否存在所述用户信息对应的会话控制session对象,若存在则判断为所述用户处于已登陆状态,并将所述session对象的超时时间重置;

否则,判断为所述用户处于未登陆状态。

在其中一个实施例中,所述判断为所述用户处于未登陆状态后,包括:

在所述配置文件中查找所述网页是否是未登录可以访问的访问状态,若是,则将所述网页对应的访问页面返回给所述客户端,所述配置文件还包含有所述网页对应的所述访问状态,所述访问状态包括未登录可以访问及未登录不可访问两种状态;

否则,将用户登陆页面返回给所述客户端。

在其中一个实施例中,所述将用户登陆页面返回给所述客户端后,还包括:

接收客户端的用户通过所述用户登陆页面发送的用户登陆请求,获取用户输入的用户信息,所述用户信息包括用户名和密码;

通过数据库中的账户信息与所述用户信息进行比较,判断所述用户信息是否相同,若不同,则重新将所述用户登陆页面返回给所述客户端;

若相同,则对所述用户信息在所述内存中创建对应的session对象,并将所述session对象的session标记返回给所述客户端,且定义为所述用户处于已登陆状态,跳转到所述在预设的配置文件中查找与用户登陆信息对应的用户权限步骤。

在其中一个实施例中,所述根据所述用户信息判断用户的登陆状态前,还包括:

判断所述用户是否是第一次启动所述网页访问请求,如是则从数据库中加载所述配置文件至内存中,否则进入所述根据所述用户信息判断用户的登陆状态步骤。

在其中一个实施例中,判断所述用户是否是第一次启动所述网页访问请求,包括:

将所述用户信息在预设于内存中的查询表中进行查询,所述查询表内设有用户信息及对应的用户标识,若查询到所述用户信息,获取所述用户信息对应的所述用户标识,若所述用户标识是第一次启动标识,则判断为所述用户是第一次启动所述网页访问请求,并将所述用户标识修改为非第一次启动标识;

若未查询到所述用户信息,则判断为所述用户是第一次启动所述网页访问请求,并将所述用户信息及对应的用户标识为非第一次启动标识保存在所述查询表中。

一种访问权限过滤系统,包括:

接收单元,用于接收客户端的用户发送的网页访问请求,根据所述网页访问请求获取用户信息;

查找用户权限单元,用于根据所述用户信息判断用户的登陆状态,若处于已登陆状态,则在预设的配置文件中查找与用户登陆信息对应的用户权限,所述配置文件包含有所述网页的用户权限、所述用户权限对应的访问页面;

返回单元,用于若在所述配置文件中查找到与所述用户登陆信息对应的所述用户权限,则将所述用户权限对应的访问页面返回给所述客户端,否则,将访问失败页面返回给所述客户端。

一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述访问权限过滤方法的步骤。

一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述访问权限过滤方法的步骤。

上述访问权限过滤方法、装置、计算机设备和存储介质,包括接收客户端的用户发送的网页访问请求,根据网页访问请求获取用户信息;根据用户信息判断用户的登陆状态,若处于已登陆状态,则在预设的配置文件中查找与用户登陆信息对应的用户权限,配置文件包含有网页的用户权限、用户权限对应的访问页面;若在配置文件中查找到与登陆信息对应的用户权限,则将用户权限对应的访问页面返回给客户端,否则,将访问失败页面返回给客户端。本发明根据用户的登陆状态,查找用户权限,将不同的访问页面返回给用户,即实现了访问权限的控制,又减少了传统访问权限编辑的繁琐。即使需要修改或增加权限和页面,只需要修改配置文件即可,维护简单方便,可移植性高,降低系统的耦合。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。

图1为本发明一个实施例中的访问权限过滤方法的流程图;

图2为一个实施例中步骤s1的一种流程图;

图3为一个实施例中步骤s2的一种流程图;

图4为本发明一个实施例中访问权限过滤系统的结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。

图1为本发明一个实施例中的访问权限过滤方法的流程图,如图1所示,一种访问权限过滤方法,包括以下步骤:

步骤s1,接收并获取用户信息:接收客户端的用户发送的网页访问请求,根据网页访问请求获取用户信息。

本发明用于互联网电子商务系统中,客户端的用户一般需要通过浏览器登陆网络销售页面,用户通过客户端发送网页访问请求。本发明的主体可以是接收客户端发送的网页访问请求的网销服务器。

在一个实施例中,如图2所示,步骤s1,包括:

步骤s101,与客户端建立tcp连接:与客户端建立传输控制协议tcp连接,接收客户端的用户发送的网页访问请求,网页访问请求是超文本传输协议http请求报文。

网销服务器在接收客户端发送的网页访问请求前,首先需要与客户端建立tcp连接,网销服务器与客户端进行tcp三次握手:

客户端首先发送标志位syn报文请求,网销服务器收到请求后,发送syn和标志位ack确认连接请求,客户端收到请求后,再次发送ack进行确认,完成网销服务器与客户端的tcp连接。建立tcp连接后,网销服务器接收客户端发送的网页访问请求,此网页访问请求是http请求报文。http请求报文包括4个部分,分别为请求行、请求头部、空白行和请求主体。其中请求行包括请求方法、请求url、http协议版本,其中请求方法为get、post、head或put等。请求头部包括客户端用户的信息、字符集等。

步骤s102,获取用户信息:从http请求报文中的请求头部获取用户信息。

本步骤可以根据http请求报文的请求方法不同,采用不同的获取方式,具体的,如请求方法为get方式,则网销服务器采用request.querystring[]来获取用户信息,如请求方法为post方式,则网销服务器采用request.from[]来获取用户信息。

本实施例在互联网电子商务系统中,通过与客户端建立tcp连接后,从客户端获取用户信息,以用于根据用户信息判断其权限。上述连接方式在互联网系统中稳定可靠,适用于网销领域。

步骤s2,查找用户权限:根据用户信息判断用户的登陆状态,若处于已登陆状态,则在预设的配置文件中查找与用户登陆信息对应的用户权限,配置文件包含有网页的用户权限、用户权限对应的访问页面。

客户端的用户在浏览器上浏览网销网页时,通常存在两种状态,即已采用用户名和密码登陆网页的已登陆状态,和未登陆网页的未登陆状态。有些网页访问请求的网页在未登陆状态,也可以继续进行访问,而有些网页必须要求在已登录状态才能进行访问。

在已登录状态时,还需要根据用户登陆信息判断用户的权限,如某一需要访问的网页设有三个等级的用户权限,分为为vip1、vip2、vip3。三个等级的用户权限对应不同的访问页面。配置文件的一种表格形式如下表1所示:

表1

在一个实施例中,根据用户信息判断用户的登陆状态,包括:判断内存中是否存在用户信息对应的会话控制session对象,若存在则判断为用户处于已登陆状态,并将session对象的超时时间重置。否则,判断为用户处于未登陆状态。

在计算机行业中,尤其是在网络应用中,session对象称为会话控制,session对象存储特定用户会话所需的属性及配置信息。本实施例中,当用户在客户端的web页之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自客户端的web页时,通过判断内存中是否含有此用户的session对象来确定用户是否处于已登陆状态。由于session对象具有时效性,因此在确定用户信息含有对应的session对象后,还对session对象的超时时间进行重置,例如,某一用于的session对象的超时时间为30分钟,在超时时间的计时到第25分钟时,此用户在此期间向网销服务器发送了页面访问请求,网销服务器判断此用户在内存中含有对应的session对象,在判断此用户处于已登陆状态后,还对此用户的超时时间重置,此用户的超时时间从新从0开始计时。

当判断为用户处于未登陆状态后,在配置文件中查找网页是否是未登录可以访问的访问状态,若是,则将网页对应的访问页面返回给客户端,配置文件还包含有网页对应的访问状态,访问状态包括未登录可以访问及未登录不可访问两种状态;否则,将用户登陆页面返回给客户端。

如表1所示,配置文件中包含网页对应的访问状态,当此网页是未登录可以访问的访问状态,则即使用户处于未登陆状态,此用户也可以访问请求的网页,则网销服务器将对应的访问页面返回给客户端。当此网页是未登录不可访问的访问状态时,在网销服务器中预先设置若干跳转用页面,如用户登陆页面,此时,网销服务器将用户登陆页面返回给客户端,通过客户端提示用户必须登陆后才能跳转到对应网页。

将用户登陆页面返回给客户端后,如图3所示,还包括:

步骤s201,接收用户登陆请求:接收客户端的用户通过用户登陆页面发送的用户登陆请求,获取用户输入的用户信息,用户信息包括用户名和密码。

网销服务器在将用户登陆页面返回给客户端后,还进行延时等待,延时接收客户端发送的用户登陆请求,获取用户信息。

步骤s202,比较用户信息:通过数据库中的账户信息与用户信息进行比较,判断用户信息是否相同,若不同,则重新将用户登陆页面返回给客户端。

本步骤用于对用户信息进行验证,如果验证不通过,则重新将用户登陆页面返回给客户端,继续进行延时等待接收客户端发送的用户登陆请求。

步骤s203,创建session对象及跳转:若相同,则对用户信息在内存中创建对应的session对象,并将session对象的session标记返回给客户端,且定义为用户处于已登陆状态,跳转到在预设的配置文件中查找与用户登陆信息对应的用户权限步骤。

如果用户信息通过验证,则认为用户处于已登陆状态,跳转到步骤s2的处于已登陆状态后的步骤。此时,为了用户在在整个用户会话中一直存在下去,还需要对通过验证的用户信息创建新的session对象。以便于后续在session对象的超时时间内,此用户继续网页访问请求时,处于已登陆状态。

本实施例通过内存中的session对象判断用户是否处于已登陆状态,判断方法简单方便,且由于session对象具有时效性,在超时范围内,同一用户无需重复登陆,始终处于已登陆状态。而超过超时时间后,session对象会自动销毁的特点,也避免了客户端用户长期处于已登陆状态,带来的安全隐患。

步骤s3,页面返回:若在配置文件中查找到与用户登陆信息对应的用户权限,则将用户权限对应的访问页面返回给客户端,否则,将访问失败页面返回给客户端。

本步骤中,访问失败页面可以预先设置在网销服务器中,在配置文件中查找不到用户登陆信息对应的用户权限时,认为此用户无权访问网页,因此网销服务器将访问失败页面返回给客户端,告知用户网页访问失败。

若某一用户请求访问网页xxxx1的网页访问请求,网销服务器获取到的用户信息是vip1等级,如表1所示,在通过预设的配置文件查找到用户权限后,根据用户权限,此用户只能访问vip1等级对应的访问页面xxxx1-1,则网销服务器将访问页面xxxx1-1返回给客户端。若某一用户请求访问网页xxxx2的网页访问请求,网销服务器获取到的用户信息是vip1等级,如表1所示,在通过预设的配置文件查找到用户权限是无权限,则网销服务器直接将访问页面xxxx2返回给客户端即可。

本实施例,通过session对象判断用户的登陆状态,对已登陆状态的用户,直接在与配置文件中的用户权限进行查找,将与用户权限对应的访问页面返回给客户端,供用户访问。而对未登陆状态的用户,通过网页的访问状态进一步分析,对未登录可以访问的网页,直接将访问页面返回给客户端,无需判断权限等步骤,对未登录不可访问的网页,为客户端提供了用户登陆页面,供用户重新输入用户名和密码。还对获取的用户名和密码进一步进行验证,对验证通过的用户,创建session对象,保证了用户的一段时间处于已登陆状态,无需每次网页访问请求都重新输入用户名和密码的繁琐操作。本实施例中用于权限对应的访问页面,可以根据需要直接在配置文件中修改即可,避免了繁琐的代码维护问题。

在一个实施例中,根据用户信息判断用户的登陆状态前,还包括:判断用户是否是第一次启动网页访问请求,如是则从数据库中加载配置文件至内存中,否则进入根据用户信息判断用户的登陆状态步骤。

在判断用户是否是第一次启动网页访问请求时,包括:将用户信息在预设于内存中的查询表中进行查询,查询表内设有用户信息及对应的用户标识,若查询到用户信息,获取用户信息对应的用户标识,若用户标识是第一次启动标识,则判断为用户是第一次启动网页访问请求,并将用户标识修改为非第一次启动标识;若未查询到用户信息,则判断为用户是第一次启动网页访问请求,并将用户信息及对应的用户标识为非第一次启动标识保存在查询表中。

网销服务器在每次启动时,均在内存中创建一张查询表,用于查询用户是否第一次启动网页访问请求,用户标识可以是以key值,若key值是空,则认为此用户是第一次启动网页访问请求,将key值设置为1,并将数据库中的配置信息加载至内存中。若key值是1,则认为用户不是第一次启动网页访问请求,则认为内存中已存在配置文件,直接用于后续访问。

本申请将配置文件在用户第一次启动网页访问请求时,加载到内存中后,在后续用户权限查找等操作时,由于配置文件被加载在内存中,因此数据访问速度快,适用于本发明中快速判断用户权限,对客户端返回对应页面的过程中,为客户端用户提供更舒适的体验。

本发明的访问权限过滤方法,针对现有技术中通过数据库表数据控制权限,代码量多且建表逻辑繁琐的问题,通过预设配置文件的方式,对用户权限、对应的访问页面及访问状态进行预先设置,对客户端用户发送的网页访问请求,通过配置文件进行查询,得到对应的访问页面后,将访问页面返回给客户端。上述方式大大减少了代码表的创建,解决了开发成本。在需要修改或维护用户权限时,只要修改配置文件即可。其次,本发明程序可移植性高,适用于限定访问权限的众多服务器。另外,通过将配置文件加载到内存中的方式,可实现数据快速访问的目的,增加客户端用户访问网页的舒适感。

在一个实施例中,提出了一种访问权限过滤系统,如图4所示,包括如下单元:

接收单元,用于接收客户端的用户发送的网页访问请求,根据所述网页访问请求获取用户信息;

查找用户权限单元,用于根据所述用户信息判断用户的登陆状态,若处于已登陆状态,则在预设的配置文件中查找与用户登陆信息对应的用户权限,所述配置文件包含有所述网页的用户权限、所述用户权限对应的访问页面;

返回单元,用于若在所述配置文件中查找到与所述用户登陆信息对应的所述用户权限,则将所述用户权限对应的访问页面返回给所述客户端,否则,将访问失败页面返回给所述客户端。

在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行计算机可读指令时实现上述各实施例中访问权限过滤方法中的步骤。

在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中访问权限过滤方法中的步骤。其中,存储介质可以为非易失性存储介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁盘或光盘等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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