认证方法、装置和系统的制作方法

文档序号:7757640阅读:149来源:国知局
专利名称:认证方法、装置和系统的制作方法
技术领域
本发明涉及到通信技术领域,特别涉及到一种认证方法、装置和系统。
背景技术
随着企业业务的发展,企业业务应用系统数量也随着迅速增加。目前企业业务应 用系统的实现方式是,用户的密码信息分别由各个业务的应用服务器各自保存。当用户需 要访问不同的应用服务器时,先向应用服务器提供自身的用户密码,当应用服务器验证用 户密码正确时,用户可以使用对应业务。在具体实施过程中,每次访问应用服务器,用户必须向不同的应用服务器一一输 入用户密码。在应用系统成倍增加的情况时,用户必须多次输入,造成资源浪费的同时用户 体验也不好。

发明内容
本发明的主要目的为提供一种实现统一认证的认证方法以及装置和系统,避免了 用户向不同的应用服务器一一输入用户密码造成用户体验不好。本发明提出一种认证方法,包括认证网关根据接收到的客户端发送的访问请求,返回携带临时认证信息的访问响 应消息;客户端根据所述访问响应消息携带的临时认证信息生成认证码;客户端通过应用服务器发送携带所述认证码的认证请求到认证网关;当验证所述认证请求通过时,所述认证网关回复携带H(Al)加密信息的认证响应 到应用服务器缓存。进一步,所述认证网关回复携带H(Al)加密信息的认证响应到应用服务器缓存后 包括应用服务器根据认证响应处理客户端的访问请求,并缓存H(Al)加密信息。进一步,所述应用服务器处理客户端的访问请求,并缓存H(Al)加密信息后包括客户端发送携带认证信息的第二访问请求到应用服务器;应用服务器使用H(Al)加密信息对第二访问请求进行认证。进一步,所述应用服务器处理客户端的访问请求,并缓存H(Al)加密信息后还包 括当超过预定时间时,客户端发送携带认证信息的第三访问请求到应用服务器;所述应用服务器转发所述第三访问请求到认证网关;认证网关根据所述第三访问请求返回生成的携带临时认证信息的访问响应消 息;客户端根据所述访问响应消息携带的临时认证信息生成认证码;客户端通过应用服务器发送携带所述认证码的认证请求到认证网关;
当验证所述认证请求通过时,所述认证网关回复携带新H(Al)加密信息的认证响 应到应用服务器;所述应用服务器处理客户端的访问请求,并缓存所述新H(Al)加密信息。进一步,所述认证网关根据接收到的客户端发送的访问请求,返回携带临时认证 信息的访问响应消息前包括客户端发送访问请求到应用服务器;应用服务器转发所述访问请求到认证网关。本发明还提供一种应用服务器,包括接收模块,用于接收客户端发送的携带认证码的认证请求,接收认证网关根据所 述携带认证码的认证请求返回的携带H(Al)加密信息的认证响应;转发模块,用于转发所述携带认证码的认证请求到认证网关;缓存模块,用于缓存H(Al)加密信息。进一步,所述装置还包括处理模块,用于根据认证响应处理客户端的访问请求。进一步,所述接收模块还用于接收客户端发送的携带认证信息的第二访问请求;所述处理模块还用于使用H(Al)加密信息对第二访问请求进行认证。进一步,所述接收模块还用于当超过预定时间时,接收客户端发送的携带认证信 息的第三访问请求,接收客户端根据所述访问响应消息携带的临时认证信息生成认证码, 当验证所述认证请求通过时,接收所述认证网关回复的携带新H(Al)加密信息的认证响 应;转发模块还用于转发所述第三访问请求到认证网关,并转发认证网关根据所述第 三访问请求返回生成的携带临时认证信息的访问响应消息到客户端,转发携带所述认证码 的认证请求到认证网关;缓存模块还用于缓存所述新H(Al)加密信息。进一步,所述接收模块还用于接收客户端发送的访问请求;转发模块还用于所述访问请求到认证网关。本发明还提供一种认证网关,包括接收模块,用于接收客户端通过应用服务器发送的访问请求和携带认证码的认证 请求; 响应模块,用于根据所述访问请求返回携带临时认证信息的访问响应消息;验证模块,用于验证所述携带认证码的认证请求;发送模块,用于当所述认证请求验证通过时,发送回复携带H(Al)加密信息的认 证响应到应用服务器。进一步,所述接收模块还用于接收客户端通过应用服务器转发的认证请求和认证码。本发明还提供一种认证系统,包括应用服务器,用于接收所述访问请求和认证请求并转发到认证网关,接收认证网 关发送的访问响应消息并转发,接收认证网关发送的携带H(Al)加密信息的认证响应,缓 存所述H(Al)加密信息。
认证网关,用于根据访问请求返回携带临时认证信息的访问响应消息,验证所述 认证请求通过时,回复携带H(Al)加密信息的认证响应。进一步,所述系统还包括客户端,用于发送访问请求,接收访问响应信息,根据所述访问响应消息携带的临 时认证信息生成认证码,发送携带所述认证码的认证请求。本发明采用客户端第一次的访问请求由认证网关实现认证,后续的认证由应用服 务器实现,对原有系统处理性能影响极小;当客户端的访问请求在统一认证网关认证通过 后,才会将包含密码信息的H(Al)加密信息发送到应用服务器,后续的认证由应用服务器 实现;避免了用户必须向不同的应用服务器一一输入用户密码,节约了网络资源的同时提 高了用户体验。技术效果请和独权方案对应,从权效果可放到实施例中描述。


图1为本发明一种认证方法一实施例的流程图;图2为本发明一种认证方法另一实施例的流程图;图3为本发明一种应用服务器一实施例的结构示意图;图4为本发明一种认证网关一实施例的结构示意图;图5为本发明一种认证系统一实施例的结构示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施例方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。参照图1,为本发明一种认证方法一实施例的流程图。步骤S 101、客户端发送访问请求到应用服务器;当客户端需要发起某一业务时,首先发送访问请求到应用服务器。步骤S102、应用服务器转发访问请求到认证网关;应用服务器接收到客户发送的访问请求后,根据预置规则转发该携带有应用服务 器域名的访问请求到认证网关。步骤S103、认证网关返回携带临时认证信息的访问响应消息;由于访问请求不包含认证信息,认证网关接收到访问请求后可以回复要求客户端 进行认证的响应消息,例如可以用401消息作为访问响应消息同时附带临时认证随机码信息。步骤S104、应用服务器转发携带临时认证信息的访问响应消息到客户端;应用服务器根据401消息中的地址指向,转发401消息到客户端。步骤S105、客户端根据临时认证信息生成认证码;客户端接收到401消息后,获取附带的临时认证信息,提示用户输入用户密码;然 后利用用户密码和临时认证信息生成认证码。步骤S106、客户端发送认证请求到应用服务器;客户端生成认证码后,发送认证请求到应用服务器,认证请求携带认证码。
步骤S107、应用服务器转发认证请求到认证网关;应用服务器接收到认证请求后转发到认证网关,该认证请求同样携带认证码以及 应用服务器域名。步骤S108、认证网关根据认证请求进行认证;认证网关接收到认证请求后获取其中携带的认证码,根据该认证码进行认证。具 体的认证过程为认证网关根据预存的用户密码和预置的规则计算出认证网关认证码,将 该认证网关认证码和认证请求后获取其中携带的认证码进行比对,当比对结果相同时,认 证通过,继续步骤S109。步骤S109、认证网关发送H(Al)加密信息到应用服务器;认证网关校验客户端的认证信息,如果认证通过则使用用户名、密码和应用服务 器域名等信息计算H(Al)加密信息,将认证结果和H(Al)加密信息一起发送到应用服务器。 为了保证H(Al)加密信息的安全,可以使用对称加密算法如DES、3DES、AES等。步骤S110、应用服务器缓存H(Al)加密信息。应用服务器接收到认证网关发送的认证结果和H(Al)加密信息后,根据认证结果 处理客户端的请求,并缓存H(Al)加密信息。这样当客户端再次发起认证请求时,应用服务器可以根据缓存的H(Al)加密信息 对客户端的认证请求进行处理,而无需客户端根据多个业务多次发起认证。本发明采用客户端第一次的访问请求由认证网关实现认证,后续的认证由应用服 务器实现,对原有系统处理性能影响极小;当客户端的访问请求在统一认证网关认证通过 后,才会将包含密码信息的H(Al)加密信息发送到应用服务器,后续的认证由应用服务器 实现,对原有系统处理性能影响极小;避免了用户必须向不同的应用服务器一一输入用户 密码,节约了网络资源的同时提高了用户体验。参照图2,为本发明一种认证方法一实施例的流程图;图2为客户端访问某一应用服务器例描述本发明的认证方法实现流程,其包括如 下步骤步骤S201、客户端向应用服务器发起访问请求;客户端需要使用应用服务器所提供的服务时,向该应用服务器发起访问请求;步骤S202、应用服务器转发访问请求到认证网关;应用服务器首先确认本地是否保存用户的认证信息;当本地未保存用户的认证信 息时,将访问请求转发到认证网关,同时携带应用服务器自身的域名;步骤S203、认证网关回复携带临时认证信息的访问响应信息;因访问请求不包含认证信息,认证网关可以回复401信息作为访问响应信息同时 附带临时认证随机码信息;步骤S204、应用服务器转发访问响应信息到客户端;应用服务器透传认证网关的回复401信息和临时认证随机码信息到客户端;步骤S205、客户端生成认证信息;客户端使用用户输入的密码和认证网关的认证随机码计算得到认证信息。步骤S206、客户端发起认证请求;客户端发起携带认证信息的认证请求。
步骤S207、应用服务器转发认证请求到认证网关;应用服务器将携带认证信息的认证请求转发到认证网关,同时携带应用服务器自 身的域名;步骤S208、认证网关校验认证信息;认证网关校验客户端的认证信息,如果认证通过则使用用户名、密码和应用服务 器域名等信息计算H(Al)加密信息,将认证结果和H(Al)加密信息一起发送到应用服务器。 为了保证H(Al)的安全,可以使用对称加密算法如DES、3DES、AES等,但具体实现并不仅限 于此。步骤S209、认证网关发送H(Al)加密信息到应用服务器;认证通过认证网关可以使用用户名、密码和应用服务器域名等信息计算H(Al)加 密信息,将认证结果和H(Al)加密信息一起发送到应用服务器。步骤S210、应用服务器缓存H(Al)加密信息;如果认证通过,应用服务器处理客户端的访问请求,并缓存H(Al)加密信息用于 客户端后续访问请求的认证。接着应用服务器返回处理结果,同时分配应用服务器自身的 认证随机码。步骤S211、客户端再次发起携带认证信息的访问请求到应用服务器;步骤S212、应用服务器使用本地缓存的H(Al)加密信息对该请求进行认证,如果 认证通过则返回处理结果。具体的,应用服务器可以根据H(Al)加密信息得到认证网关认证码,当客户端再 次发起认证时,应用服务器可以获取客户端根据用户密码计算得到的认证码,然后对比客 户端认证码和认证网关认证码,二者一致时认证通过,二者不同时认证失败。进一步的,在步骤S209中,应用服务器缓存H(Al)加密信息后超过预定时间后,客 户端再次发起访问请求时,将利用步骤S201重新发起一次认证,当认证网关认证通过后发 送新H(Al)加密信息到应用服务器,应用服务器缓存新H(Al)加密信息。由于用户的密码保存在认证网关处,而实际上绝大多数的鉴权都由应用服务器完 成,因此当用户修改了保存在认证网关的密码之后,将引起应用服务器和认证网关之间密 码不相同的问题。为解决此问题本发明实施例提出的一种密码准实时同步的实现策略应用服务器处保存的H(Al)加密信息具有时效性(例如有效期为5分钟),距离上 一次获取H(Al)加密信息的时间间隔在此范围之内则使用应用服务器本地的信息对客户 端的请求认证,当超时该时间则在按照图2所示的流程,将客户端的请求转发到认证网关, 由认证网关实现对客户端的鉴权,同时应用服务器将再次获取最新的H(Al)加密信息。1、如果能识别出用户登录性质的第一条信令,可以在处理该登陆请求时强制通过 认证网关而不通过应用服务器认证,将用户的认证信息发送到认证网关,当用户密码修改 后,用户只要重新登录新密码即可同步生效;2、当如上方法无法满足要求时,可以通过设定H(Al)认证信息的有效期(例如5 分钟)的方式来实现。即当H(Al)的信息过了有效期,应用服务器将再次通过认证网关对 客户端的访问请求进行认证,以便获取最新的H(Al)信息。通过此策略当用户密码修改后, 新密码最长只需再过5分钟即可生效。上述流程中,只有当认证网关对客户端的访问请求认证通过后,才将H(Al)加密信息发送到应用服务器,并可根据安全需要通过对称加密的方式返回,这样大大增强了认 证的安全性;由于客户端的访问请求并不是每次都通过认证网关认证,因此可以大大提高 认证网关的处理能力,对应用服务器的性能影响也极小;此外由于本发明实施例所提出的 认证方法对客户端是透明的,系统的改造并不涉及大量终端设备,因此实现方法简单。参照图3,为本发明一种应用服务器一实施例的结构示意图;本发明实施例提供的应用服务器包括接收模块31,用于接收客户端发送的携带认证码的认证请求,接收认证网关根据 所述携带认证码的认证请求返回的携带H(Al)加密信息的认证响应;转发模块32,用于转发所述携带认证码的认证请求到认证网关;缓存模块33,用于缓存H(Al)加密信息。进一步,所述装置还包括处理模块34,用于根据认证响应处理客户端的访问请求。进一步,所述接收模块31还用于接收客户端发送的携带认证信息的第二访问请 求;所述处理模块33还用于使用H(Al)加密信息对第二访问请求进行认证。进一步,所述接收模块31还用于当超过预定时间时,接收客户端发送的携带认证 信息的第三访问请求,接收客户端根据所述访问响应消息携带的临时认证信息生成认证 码,当验证所述认证请求通过时,接收所述认证网关回复的携带新H(Al)加密信息的认证 响应;转发模块32还用于转发所述第三访问请求到认证网关,并转发认证网关根据所 述第三访问请求返回生成的携带临时认证信息的访问响应消息到客户端,转发携带所述认 证码的认证请求到认证网关;缓存模块33还用于缓存所述新H(Al)加密信息。进一步,所述接收模块31还用于接收客户端发送的访问请求;转发模块32还用于所述访问请求到认证网关。客户端需要使用应用服务器所提供的服务时,向该应用服务器发起访问请求,接 收模块31接收该访问请求,然后转发模块32首先确认本地是否保存用户的认证信息;当本 地未保存用户的认证信息时,将访问请求转发到认证网关,同时携带应用服务器自身的域 名。认证网关根据访问请求回复携带临时认证信息的访问响应信息,接收模块31接收该访 问响应信息。转发模块32转发该访问响应信息到客户端。客户端接收到访问请求后可以 再次发送携带认证信息的认证请求,接收模块31接收该认证请求后交由转发模块32转发 到认证网关,转发模块32转发认证请求时同样携带应用服务器的域名。当携带有认证信息的认证请求到达认证网关进行认证后,认证网关可以返回携带 认证结果和H(Al)加密信息到接收模块31 ;处理模块34根据认证结果处理认证请求后转 发模块32转发认证结果到客户端。缓存模块33缓存H(Al)加密信息,用于客户端后续访 问请求的认证。缓存模块33缓存H(Al)加密信息后超过预定时间后,客户端再次发起访问 请求时,所述接收模块31还用于当超过预定时间时,接收客户端发送的携带认证信息的第 三访问请求,接收客户端根据所述访问响应消息携带的临时认证信息生成认证码,当验证 所述认证请求通过时,接收所述认证网关回复的携带新H(Al)加密信息的认证响应;转发
9模块32还用于转发所述第三访问请求到认证网关,并转发认证网关根据所述第三访问请 求返回生成的携带临时认证信息的访问响应消息到客户端,转发携带所述认证码的认证请 求到认证网关;缓存模块33还用于缓存所述新H(Al)加密信息。参照图4、为本发明一种认证网关一实施例的结构示意图;本发明实施例提供的认证网关包括接收模块41,用于接收客户端通过应用服务器发送的访问请求和携带认证码的认 证请求;响应模块42,用于根据所述访问请求返回携带临时认证信息的访问响应消息;验证模块43,用于验证所述携带认证码的认证请求;发送模块44,用于当所述认证请求验证通过时,发送回复携带H(Al)加密信息的 认证响应到应用服务器。进一步,所述接收模块41还用于接收客户端通过应用服务器转发的认证请求和 认证码。当接收模块41接收到访问请求后,因访问请求不包含认证信息,发送模块44可以 回复401信息作为访问响应信息同时附带临时认证随机码信息;当接收模块41接收到携带 认证信息以及应用服务器域名的认证请求后,验证模块43校验客户端的认证信息,如果认 证通过则使用用户名、密码和应用服务器域名等信息计算H(Al)加密信息,发送模块44将 认证结果和H(Al)加密信息一起发送到应用服务器。为了保证H(Al)的安全,可以使用对 称加密算法如DES、3DES、AES等,但具体实现并不仅限于此。参照图5,为本发明一种认证系统一实施例的结构示意图;本发明实施例提供的认证系统包括应用服务器51,用于接收所述访问请求和认证请求并转发到认证网关52,接收认 证网关52发送的访问响应消息并转发,接收认证网关52发送的携带H(Al)加密信息的认 证响应,缓存所述H(Al)加密信息。进一步,本发明实施例提供的认证系统还可以包括客户端53,用于发送访问请求,接收访问响应信息,根据所述访问响应消息携带的 临时认证信息生成认证码,发送携带所述认证码的认证请求。认证网关52,用于根据访问请求返回携带临时认证信息的访问响应消息,验证所 述认证请求通过时,回复携带H(Al)加密信息的认证响应。本发明实施例中应用服务器51可以为图3对应实施例提供的应用服务器;认证网 关53可以为图4对应实施例提供的认证网关。以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用 本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关 的技术领域,均同理包括在本发明的专利保护范围内。
10
权利要求
一种认证方法,其特征在于,包括认证网关根据接收到的客户端发送的访问请求,返回携带临时认证信息的访问响应消息;客户端根据所述访问响应消息携带的临时认证信息生成认证码;客户端通过应用服务器发送携带所述认证码的认证请求到认证网关;当验证所述认证请求通过时,所述认证网关回复携带H(A1)加密信息的认证响应到应用服务器缓存。
2.根据权利要求1所述的方法,其特征在于,所述认证网关回复携带H(Al)加密信息的 认证响应到应用服务器缓存包括应用服务器根据认证响应处理客户端的访问请求,并缓存H(Al)加密信息。
3.根据权利要求2所述的方法,其特征在于,所述应用服务器处理客户端的访问请求, 并缓存H(Al)加密信息后包括客户端发送携带认证信息的第二访问请求到应用服务器; 应用服务器使用H(Al)加密信息对第二访问请求进行认证。
4.根据权利要求2所述的方法,其特征在于,所述应用服务器处理客户端的访问请求, 并缓存H(Al)加密信息后还包括当超过预定时间时,客户端发送携带认证信息的第三访问请求到应用服务器; 所述应用服务器转发所述第三访问请求到认证网关;认证网关根据所述第三访问请求返回生成的携带临时认证信息的访问响应消息; 客户端根据所述访问响应消息携带的临时认证信息生成认证码; 客户端通过应用服务器发送携带所述认证码的认证请求到认证网关; 当验证所述认证请求通过时,所述认证网关回复携带新H(Al)加密信息的认证响应到 应用服务器;所述应用服务器处理客户端的访问请求,并缓存所述新H(Al)加密信息。
5.根据权利要求1所述的方法,其特征在于,所述认证网关根据接收到的客户端发送 的访问请求,返回携带临时认证信息的访问响应消息前包括客户端发送访问请求到应用服务器; 应用服务器转发所述访问请求到认证网关。
6.一种应用服务器,其特征在于,包括接收模块,用于接收客户端发送的携带认证码的认证请求,接收认证网关根据所述携 带认证码的认证请求返回的携带H(Al)加密信息的认证响应; 转发模块,用于转发所述携带认证码的认证请求到认证网关; 缓存模块,用于缓存H(Al)加密信息。
7.根据权利要求6所述的应用服务器,其特征在于,所述装置还包括 处理模块,用于根据认证响应处理客户端的访问请求。
8.根据权利要求7所述的应用服务器,其特征在于,所述接收模块还用于接收客户端 发送的携带认证信息的第二访问请求;所述处理模块还用于使用H(Al)加密信息对第二访问请求进行认证。
9.根据权利要求6所述的应用服务器,其特征在于,所述接收模块还用于当超过预定时间时,接收客户端发送的携带认证信息的第三访问请求,接收客户端根据所述访问响应 消息携带的临时认证信息生成认证码,当验证所述认证请求通过时,接收所述认证网关回 复的携带新H(Al)加密信息的认证响应;转发模块还用于转发所述第三访问请求到认证网关,并转发认证网关根据所述第三访 问请求返回生成的携带临时认证信息的访问响应消息到客户端,转发携带所述认证码的认 证请求到认证网关;缓存模块还用于缓存所述新H(Al)加密信息。
10.根据权利要求6所述的应用服务器,其特征在于,所述接收模块还用于接收客户端 发送的访问请求;转发模块还用于所述访问请求到认证网关。
11.一种认证网关,其特征在于,包括接收模块,用于接收客户端通过应用服务器发送的访问请求和携带认证码的认证请求;响应模块,用于根据所述访问请求返回携带临时认证信息的访问响应消息;验证模块,用于验证所述携带认证码的认证请求;发送模块,用于当所述认证请求验证通过时,发送回复携带H(Al)加密信息的认证响 应到应用服务器。
12.根据权利要求11所述的认证网关,其特征在于,所述接收模块还用于接收客户端 通过应用服务器转发的认证请求和认证码。
13.一种认证系统,其特征在于,包括应用服务器,用于接收访问请求和认证请求并转发到认证网关,接收认证网关发送 的访问响应消息并转发,接收认证网关发送的携带H(Al)加密信息的认证响应,缓存所述 H(Al)加密信息。认证网关,用于根据访问请求返回携带临时认证信息的访问响应消息,验证所述认证 请求通过时,回复携带H(Al)加密信息的认证响应。
14.根据权利要求13所述的系统,其特征在于,所述系统还包括客户端,用于发送访问请求,接收访问响应信息,根据所述访问响应消息携带的临时认 证信息生成认证码,发送携带所述认证码的认证请求。
15.根据权利要求13所述的系统,其特征在于,所述应用服务器为权利要求6-10任一 所述的应用服务器。
16.根据权利要求13所述的系统,其特征在于,所述认证网关为权利要求11或12任一 所述的认证网关。装置系统权项挑重点写即可,没必要和方法权项一一对应。
全文摘要
本发明揭示了一种认证方法,包括认证网关根据接收到的客户端发送的访问请求,返回携带临时认证信息的访问响应消息;客户端根据访问响应消息携带的临时认证信息生成认证码;客户端通过应用服务器发送携带认证码的认证请求到认证网关;当验证认证请求通过时,认证网关回复携带H(A1)加密信息的认证响应到应用服务器缓存。本发明还提供对应的装置和系统。采用客户端首次访问请求由认证网关认证,后续的认证由应用服务器实现,对系统处理性能影响小;当访问请求在统一认证网关认证通过后,会将包含密码信息的H(A1)加密信息发送到应用服务器,后续的认证由应用服务器实现,对系统处理性能影响小;节约了网络资源的同时提高了用户体验。
文档编号H04L29/06GK101931533SQ20101026040
公开日2010年12月29日 申请日期2010年8月23日 优先权日2010年8月23日
发明者崔振峰, 陆剑峰 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1