登录验证方法和系统的制作方法_2

文档序号:9567117阅读:来源:国知局
户标识和令牌参数的登录请求。
[0034]步骤204,响应于登录请求而判断是否满足第一预设条件。其中,第一预设条件包括:令牌参数包含有第二方令牌,且令牌参数中所包含的第二方令牌与本地对应用户标识而缓存的第二方令牌匹配。若是则执行步骤206,若否则执行步骤208。
[0035]具体地,第二方服务器接收到登录请求后作出响应,判断是否满足第一预设条件。满足该第一预设条件,则需要同时满足令牌参数中包含有第二方令牌,而且该令牌参数中所包含的第二方令牌与第二方服务器本地对应用户标识所缓存的第二方令牌一致。若令牌参数不包含有第二方令牌,或者包含的第二方令牌与第二方服务器本地对应用户标识而缓存的第二方令牌不匹配,或者第二方服务器本地未缓存第二方令牌,都属于不满足第一预设条件的情况。
[0036]在一个实施例中,第一预设条件还包括:令牌参数中所包含的第二方令牌所携带的有效期限属性符合第一预设期限有效条件。其中有效期限属性可以是该第二方令牌的生成时间,或者指定的该第二方令牌的失效时间,或者该第二方令牌的生成时间和有效时长。第一预设期限有效条件是指使得该第二方令牌处于有效状态的期限条件,比如可以是当前时间与该第二方令牌的生成时间的时间差小于预设阈值,也可以是当前时间小于指定的第二方令牌的失效时间,还可以是当前时间与该第二方令牌的生成时间的时间差小于有效时长。只要令牌参数中所包含的第二方令牌所携带的有效期限属性不符合第一预设期限有效条件,就可以判定不满足第一预设条件。
[0037]在一个实施例中,若判定与第三方服务器无法通信,则可修改第一预设期限有效条件,以延长令牌参数中所包含的第二方令牌的有效时长。比如当第一预设期限有效条件是当前时间与该第三方令牌的生成时间的时间差小于预设阈值时,可调大该预设阈值的值。这样由于第二方服务器无法与第三方服务器通信进而无法将第三方令牌发送给第三方服务器进行验证,因此延长第二方令牌的有效时长可以在合理的尺度内保证用户可以正常登录。
[0038]在一个实施例中,第二方令牌根据从第一方客户端所获取的用户标识、第一方客户端的客户端标识、运行第一方客户端的终端的终端标识和从本地获取的预设有效期限属性中的至少一种生成。具体地,事先第二方服务器接收第一方客户端所发送的用户标识、第一方客户端的客户端标识、运行第一方客户端的终端的终端标识,并从第二方服务器本地获取预设有效期限属性,然后根据接收和获取的这些数据中的至少一种以及密钥来生成第二方令牌。具体可对接收和获取的这些数据中的至少一种以及密钥进行电子签名以获得第二方令牌。其中,用户标识和终端标识或者客户端标识用于限制只在该第一方终端上有效。预设有效期限属性用于判断生成的第二方令牌的有效时长。
[0039]在一个实施例中,第二方令牌具有有效期限属性,且第二方令牌的有效期限属性根据预设业务周期属性或者第三方令牌的有效期限属性确定。举例说明,若预设业务为“每日登录赢取奖励”,则该预设业务周期属性为24小时,则第二方令牌的有效期限属性可以设置为表示该第二方令牌的有效时长为大于等于23而小于24小时,这样可以防止非法用户通过非法挂机程序恶意领取奖励,保证业务能够正常进行。还比如,若第三方令牌的有效期限属性表示第三方令牌的有效时长为6小时,则第二方令牌的有效期限属性可以设置为表示该第二方令牌的有效时长为6?9小时,这样即使第三方令牌失效也可以通过第二方令牌进行登录验证。
[0040]步骤204是根据第二方令牌进行验证的步骤,若满足第一预设条件,则根据第二方令牌的验证通过,说明第一方客户端发出的登录请求是可靠的。若不满足第一预设条件,则根据第二方令牌的验证未通过,说明根据第二方令牌还无法判断第一方客户端发出的登录请求是否可靠,需要继续进行后续登录验证的步骤。
[0041]步骤206,给予对应用户标识的登录授权。
[0042]第二方服务器根据第二方令牌所进行的验证通过,可给予对应上述用户标识的登录授权,使第一方客户端具有登录后的操作权限。步骤206之后,第二方服务器还可以向第一方客户端返回表示登录成功的第一登录反馈,使第一方客户端知晓登录成功从而继续进行后续操作。
[0043]步骤208,根据令牌参数中所包含的第三方令牌进行验证,验证成功则给予对应用户标识的登录授权,验证失败则拒绝登录授权。
[0044]第二方服务器根据第三方令牌所进行的验证未通过,此时需要进一步根据令牌参数中所包含的第三方令牌进行验证,验证成功则说明该次登录是可靠的,给予对应上述用户标识的登录授权;验证失败则说明该次登录是不可靠的,拒绝该次的登录请求。
[0045]上述登录验证方法,第二方服务器在接收到第一方客户端所发送的登录请求后作出响应,先根据第二方令牌进行验证,验证通过就给予登录授权。若第二方令牌验证失败再根据第三方令牌进行验证,验证成功则给予登录授权,相反验证失败则拒绝登录授权。
[0046]由于第二方令牌是第二方服务器本地生成的,对其验证可在本地直接进行。而第三方令牌是第三方服务器生成的,其生成方式和验证方式对于第二方是保密的,对其内容进行验证只能将其发送给第三方服务器进行验证。这样如果第一方客户端缓存了第二方令牌,则将其发送给第二方服务器后,第二方服务器不与第三方服务器直接通信就可以进行验证,减少与第三方服务器进行多次直接的通信而带来的资源消耗,且登录响应时间短,也可以避免当第三方服务器故障或与第三方服务器的网络连接故障时导致的无法登录。再者,即使第一方客户端没有缓存第二方令牌,或者根据第二令牌验证失败,也可以利用第一方客户端缓存的第三方令牌进行登录验证,保证登录验证过程能够有效地进行。
[0047]如图3所示,在一个实施例中,步骤208具体包括如下步骤:
[0048]步骤302,判断是否满足第二预设条件。其中,第二预设条件包括:令牌参数中所包含的第三方令牌与本地对应用户标识而缓存的第三方令牌匹配。若满足则执行步骤304,若不满足则执行步骤306。
[0049]具体地,第二方服务器判断是否满足第二预设条件。满足该第二预设条件,则需要满足令牌参数中所包含的第三方令牌与第二方服务器本地对应用户标识而缓存的第三方令牌一致。若令牌参数不包含有第三方令牌,或者包含的第三方令牌与第二方服务器本地对应用户标识而缓存的第三方令牌不一致,或者第二方服务器本地未缓存第三方令牌,都属于不满足第二预设条件的情况。
[0050]在一个实施例中,第二预设条件还包括:令牌参数中所包含的第三方令牌所携带的有效期限属性符合第二预设期限有效条件。其中有效期限属性可以是该第三方令牌的生成时间,或者指定的该第三方令牌的失效时间,或者该第三方令牌的生成时间和有效时长。第一预设期限有效条件是指使得该第三方令牌处于有效状态的期限条件,比如可以是当前时间与该第三方令牌的生成时间的时间差小于预设阈值,也可以是当前时间小于指定的第三方令牌的失效时间,还可以是当前时间与该第三方令牌的生成时间的时间差小于有效时长。只要令牌参数中所包含的第三方令牌所携带的有效期限属性不符合第一预设期限有效条件,就可以判定不满足第一预设条件。可以理解的是,上述第一预设条件和第二预设条件中包括的有效期限属性是否符合相应的预设期限有效条件的判断逻辑可以同时存在。
[0051]在一个实施例中,第二方服务器本地对应用户标识而缓存的第三方令牌不具有有效期限属性,该登录验证方法还包括:每隔预设时间间隔或者每到预设时间点将缓存的对应用户标识的第三方令牌发送到第三方服务器进行验证,当验证失败时将本地缓存的对应用户标识的第三方令牌删除。
[0052]本实施例中,第三方令牌不具有有效期限属性,则该第三方令牌可以在第二方服务器本地长期保存,以备第一方客户端进行后续的每次登录验证时都可以不直接与第三方服务器通信就进行本地登录验证。而实际上第三方服务器上的第三方令牌是有有效期限的,因此需要将缓存的第三方令牌加入定时验证队列中,每隔预设时间间隔或者每到预设时间点将缓存的第三方令牌发送的第三方服务器进行验证,若验证失败则说明该第三方令牌在第三方服务器上已经失效,可将第二方服务器本地缓存的该第三方令牌删除。这样,登录验证和对第三方令牌的验证是异步进行的,可以防止由于当下第二方服务器与第三方服务器通信阻塞导致用户无法登录或者登录响应时间过长。
[0053]步骤302是根据第三方令牌进行本地验证的步骤,本地验证是指第二方服务器不需要与第三方服务器通信,而是利用第二方服务器本地缓存的第三方令牌进行验证。若满足第二预设条件,则根据第三方令牌的本地验证通过,说明第一方客户端发出的登录请求是可靠的。若不满足第二预设条件,则根据第三方令牌的本地验证未通过,说明根据第二方令牌进行的本地验证还无法判断第一方客户端发出的登录请求是否可靠,需要
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1