一种基于缓存的单点登录的方法及系统的制作方法_2

文档序号:9711596阅读:来源:国知局
退出时,注销cook i e和缓存的用户信息。
[0038]本发明的一种基于缓存的单点登录的系统,包括:
[0039]用户登录验证模块,用于新建一个工程,在工程的xml文件中配置一个过滤器,根据所述过滤器写一个过滤方法,通过该过滤方法验证用户是否已经登录,若用户已经登录,说明客户端中存在cookie且服务器缓存中存在用户信息,则跳转到访问页面,进入用户访问页面模块;否则,跳转到登录页面,进入用户信息判断模块;
[0040]用户信息判断模块,用于用户在登录页面上输入用户信息,客户端发送用户信息给服务器,服务器接收该用户信息后,判断登录的用户信息是否正确,若用户信息不正确,则提示用户;若用户信息正确,则将用户信息存入缓存中,如果缓存中存在相同的用户信息,则删除该用户信息,防止同一个用户信息登录多次,如果缓存中不存在相同的用户信息,则保存该用户信息;
[0041]同时,设置缓存的生命周期,缓存时间不断更新,使得缓存的生命周期是从最后一次访问页面的时间记起,如设置缓存的生命周期为30min,若在2:45时输入用户信息进行页面访问,若用户在该生命周期内有进行操作,则此时该用户信息保存的时间为2:45?3:15,但若在3:00时再次输入该用户信息进行页面访问,用户在该生命周期内有进行操作,则此时该用户信息保存的时间为3:00?3:30;若用户在该生命周期内不进行任何操作,则默认用户退出,直接进入用户信息注销模块;
[0042]用户信息共享模块,用于将用户信息作为value,并生成一个随机数作为key,key
与value--对应,将key保存到cookie中,并设置cookie的路径为顶级域以供多个工程共享,即所有工程的网站访问均可使用通过置cookie获取到的用户信息;
[0043]用户访问页面模块,用于用户访问多个工程的页面,在访问过程中,若要用到所述用户信息,则通过cookie中的key找到value,从而获取缓存中的用户信息进行使用;若不要用到所述用户信息,则直接访问;
[0044]用户信息注销模块,用于当用户退出时,注销cookie和缓存的用户信息。
[0045]综上所述,本发明的优点如下:
[0046]首先在服务器中部署多个工程,用户第一次访问其中一个工程的网站时,客户端会发送用户信息到服务端进行验证,验证通过后,生成cookie,设置其路径为顶级域,并保存一个随机数,缓存的用户信息以这个随机数作为key,用户信息作为value,保存用户信息;当用户访问其他工程的网站时,客户端会通过cookie从缓存中获取用户信息;当用户退出某一个工程的网站时,清除cookie及缓存的用户信息,其他工程的网站也实现退出。本发明实现了用户只要登录一次,就可以访问所有工程的网站,所有工程共享缓存的同一个用户信息,替代了原先每个工程通过sess1n存储用户信息的方式,节省了内存空间,也便于注销用户信息;而且,在用户登录时,若缓存中已有用户信息,则删除该用户信息,防止同一个账号登录多次。
[0047]虽然以上描述了本发明的【具体实施方式】,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
【主权项】
1.一种基于缓存的单点登录的方法,其特征在于:包括如下步骤: 步骤1、验证用户是否已经登录,若用户已经登录,则跳转到访问页面,进入步骤4;否则,跳转到登录页面,进入步骤2; 步骤2、用户在登录页面上输入用户信息,客户端发送用户信息给服务器,服务器接收用户信息后,判断登录的用户信息是否正确,若用户信息不正确,则提示用户;若用户信息正确,则将用户信息存入缓存中,如果缓存中存在相同的用户信息,则删除该用户信息,如果缓存中不存在相同的用户信息,则保存该用户信息; 步骤3、将用户信息作为value,并生成一个随机数作为key,key与value--对应,将key保存到cookie中,并设置cookie的路径为顶级域以供多个工程共享; 步骤4、用户访问多个工程的页面,在访问过程中,若要用到所述用户信息,则通过cookie中的key找到value,从而获取缓存中的用户信息进行使用;若不要用到所述用户信息,则直接访问。2.根据权利要求1所述的一种基于缓存的单点登录的方法,其特征在于:所述步骤1中验证用户是否已经登录的验证方式具体如下: 新建一个工程,在工程的xml文件中配置一个过滤器,根据所述过滤器写一个过滤方法,通过该过滤方法验证用户是否已经登录。3.根据权利要求1所述的一种基于缓存的单点登录的方法,其特征在于:所述步骤4之后还包括: 步骤5、当用户退出时,注销cooki e和缓存的用户信息。4.一种基于缓存的单点登录的系统,其特征在于:包括: 用户登录验证模块,用于验证用户是否已经登录,若用户已经登录,则跳转到访问页面,进入用户访问页面模块;否则,跳转到登录页面,进入用户信息判断模块; 用户信息判断模块,用于用户在登录页面上输入用户信息,客户端发送用户信息给服务器,服务器接收用户信息后,判断登录的用户信息是否正确,若用户信息不正确,则提示用户;若用户信息正确,则将用户信息存入缓存中,如果缓存中存在相同的用户信息,则删除该用户信息,如果缓存中不存在相同的用户信息,则保存该用户信息; 用户信息共享模块,用于将用户信息作为value,并生成一个随机数作为key,key与value--对应,将key保存到cookie中,并设置cookie的路径为顶级域以供多个工程共享; 用户访问页面模块,用于用户访问多个工程的页面,在访问过程中,若要用到所述用户信息,则通过cookie中的key找到value,从而获取缓存中的用户信息进行使用;若不要用到所述用户信息,则直接访问。5.根据权利要求4所述的一种基于缓存的单点登录的系统,其特征在于:所述用户登录验证模块中验证用户是否已经登录的验证方式具体如下: 新建一个工程,在工程的xml文件中配置一个过滤器,根据所述过滤器写一个过滤方法,通过该过滤方法验证用户是否已经登录。6.根据权利要求4所述的一种基于缓存的单点登录的系统,其特征在于:所述用户访问页面模块之后还包括: 用户信息注销模块,用于当用户退出时,注销cookie和缓存的用户信息。
【专利摘要】本发明提供一种基于缓存的单点登录的方法,包括:1、验证用户是否已经登录,若已登录,则跳转到访问页面,进入步骤4;否则,跳转到登录页面,进入步骤2;2、判断登录的用户信息是否正确,若不正确,则提示用户;否则将用户信息存入缓存中,如果缓存中存在相同的用户信息,则删除,如果不存在,则保存;3、将用户信息作为value,并生成一个随机数作为key,将key保存到cookie中,设置cookie的路径为顶级域;4、在访问页面过程中,若要用到用户信息,则通过key找到value,从而获取缓存中的用户信息进行使用;否则,直接访问。本发明还提供一种基于缓存的单点登录的系统,解决多个工程之间登录的问题。
【IPC分类】H04L29/08
【公开号】CN105472029
【申请号】CN201511016259
【发明人】丁万年, 洪文洁, 陈日良, 谢伟杰
【申请人】锐达互动科技股份有限公司
【公开日】2016年4月6日
【申请日】2015年12月29日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1