一种用户安全访问web的方法及装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种用户安全访问web的方法及装置。
背景技术
Session代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续的,用来保持用户的信息,服务器端在接到请求时候,就会收到 session ID,并根据ID在内存中找到之前创建的session对象,提供给请求使用。每个访问者服务器会分配一个id给你,那就是sessionid,session没什么很神秘或者奇异的地方,它的实质就是服务器端保存的一份数据而已,这份数据都有一个独一无二的ID,这个ID服务器会通过set cookie的方式告诉给客户端。然后客户端请求的时候把这个ID带上,服务端的session就可以和客户端关联起来了。
然而,用户访问WEB系统时,系统会分配一个sessionid存于cookie中用于获取对应的用户数据。该cookie数据一旦被盗用,则会被伪造用户的状态,从而给用户造成损失。
发明内容
本发明实施例提供了一种用户安全访问web的方法及装置,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题。
本发明实施例提供的一种用户安全访问web的方法,包括:
获取到与当前访问web系统的用户对应的新sessionid,所述新sessionid 包括按照预置计算模式生成的签名;
结合所述新sessionid 按照所述预置计算模式算出比对签名,将所述比对签名与获取到的所述新sessionid的所述签名进行比对,若相同,则确定当前访问web系统的所述用户为合法访问。
优选地,获取到与当前访问web系统的用户对应的新sessionid,所述新sessionid添加有通过预置密钥方式生成的签名具体包括:
当所述用户访问所述web系统时,判断cookies中是否存在所述用户对应的所述新sessionid,若存在,则提取所述新sessionid,所述新sessionid添加有通过预置密钥方式生成的签名。
优选地,若判断cookies中不存在所述用户对应的所述新sessionid,则生成格式为UUID+所述签名的所述新sessionid,所述签名为根据所述预置生成模式生成。
优选地,所述预置计算模式包括:
通过所述UUID、当前所述用户的ip,以及密钥进行计算生成所述签名。
优选地,结合所述新sessionid按照所述预置计算模式算出比对签名,将所述比对签名与获取到的所述新sessionid的所述签名进行比对,若相同,则确定当前访问web系统的所述用户为合法用户具体包括:
结合所述新sessionid按照所述预置计算模式算出比对签名,将所述比对签名与获取到的所述新sessionid的所述签名进行比对,若相同,则确定当前访问web系统的所述用户为合法访问,并允许获取session数据,若不相同,则确定当前访问web系统的所述用户为非法访问,并禁止获取session数据,再生成包括有按照预置计算模式生成的签名的新的sessionid,设置到所述 cookies中。
本发明实施例提供的一种用户安全访问web的装置,包括:
获取单元,用于获取到与当前访问web系统的用户对应的新sessionid,所述新sessionid包括按照预置计算模式生成的签名;
比对单元,用于结合所述新sessionid 按照所述预置计算模式算出比对签名,将所述比对签名与获取到的所述新sessionid的所述签名进行比对,若相同,则确定当前访问web系统的所述用户为合法访问。
优选地,获取单元具体包括:
判断子单元,用于当所述用户访问所述web系统时,判断cookies中是否存在所述用户对应的所述新sessionid,若存在,则触发提取子单元,若不存在,则触发生成子单元;
所述提取子单元,用于提取所述新sessionid,所述新sessionid添加有通过预置密钥方式生成的签名;
优选地,所述生成子单元,用于生成格式为UUID+所述签名的所述新 sessionid。
优选地,所述签名通过所述UUID、当前所述用户的ip,以及密钥进行计算生成。
优选地,比对单元具体包括:
计算子单元,用于结合所述新sessionid按照所述预置计算模式算出比对签名;
比对子单元,用于将所述比对签名与获取到的所述新sessionid的所述签名进行比对,若相同,则触发合法访问处理子单元,若不相同,则触发非法访问处理子单元;
所述合法访问处理子单元,用于确定当前访问web系统的所述用户为合法访问,并允许获取session数据;
所述非法访问处理子单元,用于确定当前访问web系统的所述用户为非法访问,并禁止获取session数据,再生成包括有按照预置计算模式生成的签名的新的sessionid,设置到所述cookies中。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例提供的一种用户安全访问web的方法及装置,其中,用户安全访问web的方法包括:获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则确定当前访问web系统的用户为合法访问。本实施例中,获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,根据比对结果为相同的,则用户就可以安全访问web,解决了目前的系统对于用户访问WEB 系统仅仅只是分配一个sessionid存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题,且在存储session 数据时,通过UUID+ip作为key值,获取对应数据,比常规的用UUID作为 key,安全性更高,并提升数据的可读性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种用户安全访问web的方法的一个实施例的流程示意图;
图2为本发明实施例提供的一种用户安全访问web的方法的另一个实施例的流程示意图;
图3为本发明实施例提供的一种用户安全访问web的方法的另一个实施例的流程示意图;
图4为本发明实施例提供的一种用户安全访问web的装置的一个实施例的结构示意图;
图5为本发明实施例提供的一种用户安全访问web的装置的另一个实施例的结构示意图。
具体实施方式
本发明实施例提供了一种用户安全访问web的方法及装置,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例提供的一种用户安全访问web的方法的一个实施例包括:
101、获取到与当前访问web系统的用户对应的新sessionid;
本实施例中,当用户访问web系统时,为了防止用户信息的泄露或状态被伪造,首先需要获取到与当前访问web系统的用户对应的新sessionid,新 sessionid包括按照预置计算模式生成的签名。
102、结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则执行步骤103;
当获取到与当前访问web系统的用户对应的新sessionid之后,需要结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新 sessionid的签名进行比对,若相同,则执行步骤103。
103、确定当前访问web系统的用户为合法访问。
当将比对签名与获取到的新sessionid的签名进行比对为相同时,则确定当前访问web系统的用户为合法访问。
本实施例中,获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,根据比对结果为相同的,则用户就可以安全访问web,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题。
上面是对用户安全访问web的方法的过程进行详细的描述,下面将对获取到与当前访问web系统的用户对应的新sessionid的过程进行详细的描述,请参阅图2,本发明实施例提供的一种用户安全访问web的方法的另一个实施例包括:
201、当用户访问web系统时,判断cookies中是否存在用户对应的新 sessionid,若存在,则执行步骤202,若不存在,则执行步骤203;
本实施例中,当用户访问web系统时,为了防止用户信息的泄露或状态被伪造,首先需要判断cookies中是否存在用户对应的新sessionid,若存在,则执行步骤202,若不存在,则执行步骤203
202、提取新sessionid;
当判断cookies中存在用户对应的新sessionid,则提取新sessionid。
203、生成格式为UUID+签名的新sessionid;
若判断cookies中不存在用户对应的新sessionid,则生成格式为UUID+ 签名的新sessionid,签名为根据预置生成模式生成。
需要说明的是,通过UUID、当前用户的ip,以及密钥进行计算生成签名,例如用户访问系统时,系统会获取cookie的sessionid,如果不存在时,系统会生成sessionid,设置在cookie里,该sessionid格式为:aaaa-bb,其他aaaa为 UUID,bb为aaaa+当前用户ip+密钥的签名结果。
204、结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则执行步骤205;
当步骤203或步骤204之后,需要结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则执行步骤205。
205、确定当前访问web系统的用户为合法访问。
当将比对签名与获取到的新sessionid的签名进行比对为相同时,则确定当前访问web系统的用户为合法访问。
本实施例中,获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,根据比对结果为相同的,则用户就可以安全访问web,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题,以及sessionid格式为:aaaa-bb,其他aaaa为UUID,bb为aaaa+当前用户ip+ 密钥的签名结果,使得不仅提高了用户访问的安全性,且数据处理量小,速度高。
上面是对获取到与当前访问web系统的用户对应的新sessionid的过程进行详细的描述,下面将对结合新sessionid按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对的过程进行详细的描述,请参阅图3,本发明实施例提供的一种用户安全访问web的方法的另一个实施例包括:
301、当用户访问web系统时,判断cookies中是否存在用户对应的新 sessionid,若存在,则执行步骤302,若不存在,则执行步骤303;
本实施例中,当用户访问web系统时,为了防止用户信息的泄露或状态被伪造,首先需要判断cookies中是否存在用户对应的新sessionid,若存在,则执行步骤302,若不存在,则执行步骤303。
302、提取新sessionid;
当判断cookies中存在用户对应的新sessionid,则提取新sessionid。
303、生成格式为UUID+签名的新sessionid;
若判断cookies中不存在用户对应的新sessionid,则生成格式为UUID+ 签名的新sessionid,签名为根据预置生成模式生成。
需要说明的是,通过UUID、当前用户的ip,以及密钥进行计算生成签名,例如用户访问系统时,系统会获取cookie的sessionid,如果不存在时,系统会生成sessionid,设置在cookie里,该sessionid格式为:aaaa-bb,其他aaaa为 UUID,bb为aaaa+当前用户ip+密钥的签名结果。
304、结合新sessionid按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则执行步骤305,若不相同,则执行步骤306;
当步骤303或步骤304之后,需要结合新sessionid按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则执行步骤305,若不相同,则执行步骤306,例如重新用aaaa+当前用户ip+ 密钥算出新的签名,并与bb作比较。
305、确定当前访问web系统的用户为合法访问,并允许获取session数据;
当将比对签名与获取到的新sessionid的签名进行比对为相同时,则确定当前访问web系统的用户为合法访问,并允许获取session数据。
306、确定当前访问web系统的用户为非法访问,并禁止获取session数据,再生成包括有按照预置计算模式生成的签名的新的sessionid,设置到 cookies中。
当将比对签名与获取到的新sessionid的签名进行比对为不相同时,则确定当前访问web系统的用户为非法访问,并禁止获取session数据,再生成包括有按照预置计算模式生成的签名的新的sessionid,设置到cookies中,例如非法访问,禁止获取SESSION数据,生成新的sessionid设置到cookie。
本实施例中,获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,根据比对结果为相同的,则用户就可以安全访问web,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题,以及sessionid格式为:aaaa-bb,其他aaaa为UUID,bb为aaaa+当前用户ip+ 密钥的签名结果,使得不仅提高了用户访问的安全性,且数据处理量小,速度高,同时用UUID+当前用户ip+密钥进行验证不是常规的格式设置,实现了没有额外的维护成本,高效指处理步骤少,减少cpu消耗的有益效果,且在存储session数据时,通过UUID+ip作为key值,获取对应数据,比常规的用 UUID作为key,安全性更高,并提升数据的可读性。
请参阅图4,本发明实施例中提供的一种用户安全访问web的装置的一个实施例包括:
获取单元401,用于获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;
比对单元402,用于结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则确定当前访问web系统的用户为合法访问。
本实施例中,获取单元401获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;比对单元402结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新 sessionid的签名进行比对,根据比对结果为相同的,则用户就可以安全访问 web,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid 存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题。
上面是对用户安全访问web的装置的各单元进行详细的描述,下面将对子单元进行描述,请参阅图5,本发明实施例中提供的一种用户安全访问web 的装置的另一个实施例包括:
获取单元501,用于获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;
获取单元501具体包括:
判断子单元5011,用于当用户访问web系统时,判断cookies中是否存在用户对应的新sessionid,若存在,则触发提取子单元5012,若不存在,则触发生成子单元5013;
提取子单元5012,用于提取新sessionid,新sessionid添加有通过预置密钥方式生成的签名,签名通过UUID、当前用户的ip,以及密钥进行计算生成。
生成子单元5013,用于生成格式为UUID+签名的新sessionid。
比对单元502,用于结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新sessionid的签名进行比对,若相同,则确定当前访问web系统的用户为合法访问。
比对单元502具体包括:
计算子单元5021,用于结合新sessionid按照预置计算模式算出比对签名;
比对子单元5022,用于将比对签名与获取到的新sessionid的签名进行比对,若相同,则触发合法访问处理子单元5023,若不相同,则触发非法访问处理子单元5024;
合法访问处理子单元5023,用于确定当前访问web系统的用户为合法访问,并允许获取session数据;
非法访问处理子单元5024,用于确定当前访问web系统的用户为非法访问,并禁止获取session数据,再生成包括有按照预置计算模式生成的签名的新的sessionid,设置到cookies中。
本实施例中,获取单元401获取到与当前访问web系统的用户对应的新sessionid,新sessionid包括按照预置计算模式生成的签名;比对单元402结合新sessionid 按照预置计算模式算出比对签名,将比对签名与获取到的新 sessionid的签名进行比对,根据比对结果为相同的,则用户就可以安全访问 web,解决了目前的系统对于用户访问WEB系统仅仅只是分配一个sessionid 存于cookie中,若cookie数据被盗用,则会造成用户的状态被伪造,从而导致的用户损失大的技术问题,以及sessionid格式为:aaaa-bb,其他aaaa为 UUID,bb为aaaa+当前用户ip+密钥的签名结果,使得不仅提高了用户访问的安全性,且数据处理量小,速度高,同时用UUID+当前用户ip+密钥进行验证不是常规的格式设置,实现了没有额外的维护成本,高效指处理步骤少,减少cpu消耗的有益效果。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。