一种身份认证的方法、装置和系统的制作方法

文档序号:7890725阅读:115来源:国知局
专利名称:一种身份认证的方法、装置和系统的制作方法
技术领域
本发明涉及通信技术领域,具体涉及一种身份认证的方法、装置和系统。
背景技术
随着信息技术(IT, Information Technology)的发展,身份认证技术的应用也越来越普遍,为了提高身份认证的安全性的情况的发生,现有技术中提出一次性口令的身份认证技术,具体可以如下步骤I、用户通过一次性口令生成系统,比如通过RSA token (基于令牌的RSA加密算法)卡或软件系统等方式获取一次性口令(OTP, One Time Password);
步骤2、用户在系统登录入口输入用户身份和一次性口令以登录服务器;步骤3、系统登录入口发送用户登录请求给服务器,其中,用户登录请求携带用户身份和一次性口令;步骤4、服务器校验用户身份,若校验通过,则执行步骤5,否则,若检验不通过,则返回用户身份校验失败的提示给用户;步骤5、服务器在身份校验通过后,向一次性口令校验系统校验一次性口令的正确性;步骤6、一次性口令校验系统对一次性口令进行检验,若检验通过,则返回校验正确的通知消息给服务器,若检验不通过,则返回检验错误的知消息给服务器;步骤7、若接收到一次性口令校验系统所返回的校验正确的通知消息,则服务器提供服务,供用户进行操作;若接收到一次性口令校验系统所返回的校验失败的通知消息,则服务器发送一次性口令错误的提示消息给用户。在对现有技术的研究和实践过程中,本发明的发明人发现,虽然一次性口令的身份认证方法可以提高身份认证的安全性,但是在用户需要访问多个服务时,需要多次输入用户身份信息及一次性口令,不方便用户使用,特别是随着基础设施的不断完善和发展,各企业会自主开发或者购买若干个彼此相互隔离的应用系统,若每登录一个系统都需要重新再获取并输入一次一次性口令,将十分费时且不便。

发明内容
本发明实施例提供一种身份认证的方法、装置和系统,以保证身份认证的安全性的同时,实现单点登录(SS0, Single Sign On)的功能。单点登录的技术,即在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。一种身份认证的方法,包括获取并保存用户身份信息;响应于用户发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证;
接收服务器在身份验证通过后,返回的一次性口令;根据所述一次性口令构造参数以启动客户端,以便所述客户端向所述服务器发起携带所述一次性口令的服务请求。一种身份认证的方法,包括
接收登录装置发送的携带有用户身份信息的代理认证请求;根据预置的安全认证策略对所述用户身份信息进行身份验证;在身份验证通过时,生成一次性口令并向登录装置返回一次性口令,并保存所述一次性口令和用户身份信息的关联关系;接收客户端发送的携带所述一次性口令服务请求;对所述一次性口令进行校验;在所述一次性口令校验通过时,根据所述一次性口令和用户身份信息的关联关系获取所述一次性口令对应的用户身份信息,向客户端返回用户身份信息对应的用户可访问的服务,并将所述一次性口令置为无效。一种登录装置,包括获取单元,用于获取并保存用户身份信息;处理单元,用于响应于用户发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证;验证结果接收单元,用于接收服务器在身份验证通过后,返回的一次性口令;启动单元,用于根据所述一次性口令构造参数以启动客户端,以便所述客户端向所述服务器发起携带所述一次性口令的服务请求。一种服务器,包括身份信息接收单元,用于接收登录装置发送的携带有用户身份信息的代理认证请求;身份验证单元,用于根据预置的安全认证策略对所述用户身份信息进行身份验证;口令发送单元,用于在身份验证通过时,生成一次性口令并向登录装置返回一次性口令,并保存所述一次性口令和用户身份信息的关联关系;服务请求接收单元,用于接收客户端发送的携带所述一次性口令的服务请求;口令校验单元,用于对所述一次性口令进行校验;处理单元,用于在所述一次性口令校验通过时,根据所述一次性口令和用户身份信息的关联关系获取所述一次性口令对应的用户身份信息,向所述客户端返回用户身份信息对应的用户可访问的服务,并将所述一次性口令置为无效。—种通信系统,包括终端设备和本发明实施例提供的任一种服务器,所述终端设备包括本发明实施例提供的任一种登录装置和客户端;所述客户端由登录装置根据一次性口令构造参数来启动,并在启动之后,利用所述一次性口令向服务器发起服务请求。一种终端设备,包括客户端和本发明实施例提供的任一种登录装置;所述客户端由登录装置根据一次性口令构造参数来启动,并在启动之后,利用所述一次性口令向服务器发起服务请求。
本发明实施例采用由登录装置获取并保存用户身份信息,然后在接收到用户发起的针对某一个服务器的服务访问请求时,将保存的用户身份信息发送给该服务器进行身份验证,以获取一次性口令,最后根据该一次性口令构造参数以启动客户端,以便客户端向服务器发起携带一次性口令的服务请求,以实现访问该服务器的目的。由于登录装置在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案一次性口令的验证方式,所以,身份验证的安全性也较好,也就是说,本 方案可以在保证身份认证的安全性的同时,实现单点登录的功能。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I是本发明实施例提供的身份认证的方法的流程图;图2是本发明实施例提供的身份认证的方法的另一流程图;图3a是本发明实施例提供的身份认证的方法的又一流程图;图3b是本发明实施例提供的身份认证的方法的场景示意图;图4a是本发明实施例提供的身份认证的方法的又一流程图;图4b是本发明实施例提供的身份认证的方法的又一场景示意图;图5是本发明实施例提供的登录装置的结构示意图;图6a是本发明实施例提供的服务器的结构示意图;图6b是本发明实施例提供的服务器的结构示意图;图7是本发明实施例提供的通信系统的结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供一种身份认证的方法、装置和系统。以下分别进行详细说明。实施例一、本实施例将从登录装置的角度进行描述,该登录装置可以集成在操作系统中,t匕如具体可以集成在手机、平板、便携电脑、个人数字处理PDA或其他终端设备等等的操作系统中。为了描述方便,在本发明实施例中,将该登录装置称为入口(Portal)。—种身份认证的方法,包括获取并保存用户身份信息,响应于用户发起的服务访问请求,向与该服务访问请求对应的服务器发送携带有该用户的用户身份信息的代理认证请求,以进行身份验证,接收服务器在身份验证通过时返回的一次性口令,根据该一次性口令构造参数,以启动客户端,以便该客户端利用一次性口令向服务器发起服务请求。参见图1,具体流程可以如下101、获取并保存用户身份信息。例如,具体可以接收用户输入的用户身份信息,然后保存该用户身份信息。即,在操作系统用户身份认证成功后,由Portal根据登录操作系统的用户信息自动获取用户身份信息,使用Portal时,用户直接使用而不需要再次输入用户身份信息。需说明的是,如果系统中存在有集中的认证中心,即存在认证、授权和记账(AAA,Authentication, Authorization, Accounting)系统,则为了节省信令流程,此时还可以请求认证中心对该用户身份信息进行验证,以便确认该用户是否有访问服务的权限,如果有访问权限,才接收用户发起的服务访问请求,否则,则拒绝用户的访问,流程结束。即,在获取并保存用户身份信息之后,方法还可以包括根据用户身份信息发送用户身份校验请求给认证中心,以便认证中心对用户身份信息进行校验,若接收到认证中心返回的表示校验通过的消息,则构造用户可访问服务的入口 ;若接收到认证中心返回的表示校验不通过的消息,则返回拒绝访问的消息给用户。102、响应于用户发起的服务访问请求,向与该服务访问请求对应的服务器发送携带有该用户的用户身份信息的代理认证请求,以进行身份验证,若验证通过,则执行步骤103,若验证不通过,则可以不动作,也可以执行步骤104。例如,具体可以响应于用户通过该构造的用户可访问服务的入口发起的服务访问请求,向与该服务访问请求对应的服务器发送携带有该用户的用户身份信息的代理认证请求,以进行身份验证。其中,服务器具体可以为网页(web,website)服务器或其他类型的服务器(server),等等。其中,可以由服务器直接进行身份验证,也可以对认证方式进行扩展,比如通过认证中心进行身份验证,例如,具体可以如下向与该服务访问请求对应的服务器发送携带有所该用户的用户身份信息的代理认证请求,以便服务器进行身份验证;或者,向与该服务访问请求对应的服务器发送携带有所该用户的用户身份信息的代理认证请求,以便服务器通过认证中心进行身份验证。比如,服务器在接收到代理认证请求后,可以向认证中心发送携带了用户身份信息的用户身份校验请求,然后接收认证中心返回的验证结果,若验证结果指示验证通过,则执行步骤103,若验证结果指示验证不通过,则执行步骤104其中。其中,认证中心进行身份验证的相关技术具体可参见现有技术,在此不再赘述。103、在身份验证通过时,接收服务器返回的一次性口令,然后执行步骤105。其中,该一次性口令由服务器生成,具体的生成方法,可以参见现有技术,在此不再赘述。104、在身份验证不通过时,可以接收服务器返回的拒绝访问的消息,流程结束。105、根据步骤103中得到的一次性口令构造参数以启动客户端,以便该客户端向服务器发起携带一次性口令的服务请求。其中,客户端根据服务系统(服务系统可以包括服务器和客户端)结构类型而定,比如,具体可以为⑶I UtSserver)或浏览器(对应web服务器)等。其中,对应不同类型的服务系统,启动的方式有所不同,例如,具体可以如下(I)如果服务系统为客户端/服务器(C/S,Client/Server)结构,则可以将服务器信息和该一次性口令作为参数,以启动该服务器对应的图形用户界面(GUI,GraphicalUser Interface),以便该⑶向服务器发起携带一次性口令的服务请求;或者,(2)如果服务系统为浏览器/服务器(B/S,Browser/Server)结构,则可以根据服务器信息和该一次性口令构造一个临时的统一资源定位符(URL, Universal ResourceLocator),以启动浏览器,以便该启动的浏览器向服务器发起携带一次性口令的服务请求。此后,服务器在接收到服务请求后,将会校验该一次性口令的有效性,比如校验是否是本系统颁发的一次性口令,该一次性口令是否已被使用、或者该一次性口令是否已经过期等,如果校验失败,比如不是本系统颁发的一次性口令、该一次性口令已经被使用、或者该一次性口令已经过期等等,则返回拒绝访问的错误信息;如果校验成功,则获取该一次性口令对应的用户身份信息,返回用户身份信息对应的用户可访问的服务给客户端,并将该一次性口令置为无效。由上可知,本实施例采用由登录装置获取并保存用户身份信息,然后在接收到用户发起的针对某一个服务器的服务访问请求时,将保存的用户身份信息发送给该服务器进行身份验证,以获取一次性口令,最后根据该一次性口令构造参数以启动客户端,以便客户端向服务器发起携带一次性口令的服务请求,以实现访问该服务器的目的。由于登录装置在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案采用一次性口令的验证方式,所以,身份验证的安全性也较好,也就是说,本方案可以在保证身份认证的安全性的同时,实现单点登录的功能。实施例二、本实施例将从服务系统中的服务器的角度进行描述。其中,该服务系统指的是可以为用户提供某种服务,并供用户进行操作的系统;服务器中的服务器指的是在该系统中用于管理资源并提供服务的设备,比如,该服务器具体可以为网页(web,website)服务器或服务器(server)等。一种身份认证的方法,包括接收登录装置发送的携带有用户身份信息的代理认证请求,根据预置的安全认证策略对该代理认证请求中的用户身份信息进行身份验证,在身份验证通过时,生成一次性口令并向登录装置返回一次性口令,并保存该一次性口令和用户身份信息的关联关系,接收客户端发送的携带一次性口令的服务请求,对一次性口令进行校验,在该一次性口令校验通过时,获取该一次性口令对应的用户身份信息,根据该一次性口令和用户身份信息的关联关系向客户端返回用户身份信息对应的用户可访问的服务,并将该一次性口令置为无效。
参见图2,具体流程可以如下201、接收登录装置发送的携带有用户身份信息的代理认证请求;其中,登录装置具体可参见实施例,在此不再赘述。202、根据预置的安全认证策略对步骤201接收到的用户身份信息进行身份验证,如果验证通过,则执行步骤203,如果验证不通过,则可以不动作,或者,也可以执行步骤204 ;例如,具体可以如下(I)由服务器对用户身份信息进行身份验证;或者,(2)由服务器向认证中心发送携带用户身份信息的用户身份校验请求,以便认证中心根据该用户身份信息进行身份验证;接收认证中心返回的身份验证结果,其中,身份验证结果指示身份验证通过或不通过,即身份验证结果具体为指示身份验证通过的身份验证结果,或指示身份验证不通过的身份验证结果。其中,安全认证策略可以根据实际应用的需求进行设置,具体可以是预置的,也可以是用户通过人机交互接口进行动态配置。
203、在身份验证通过时,生成一次性口令,向登录装置返回该一次性口令,并保存该一次性口令和用户身份信息的关联关系,然后执行步骤205。204、若身份验证不通过,则可以向登录装置返回拒绝访问的消息,流程结束。205、接收客户端发送的携带一次性口令的服务请求。206、对该一次性口令进行校验,比如校验是否是本系统颁发的一次性口令,该一次性口令是否已被使用、或者该一次性口令是否已经过期等,如果校验失败,比如不是本系统颁发的一次性口令、该一次性口令已经被使用、或者该一次性口令已经过期等等,则可以不动作,也可以执行步骤208 ;如果校验成功,则执行步骤207。207、若该一次性口令校验通过,则根据该一次性口令和用户身份信息的关联关系获取与该一次性口令对应的用户身份信息,向客户端返回用户身份信息对应的用户可访问的服务,并将所述一次性口令置为无效。208、若对一次性口令校验不通过,则可以向客户端返回拒绝访问的消息。由上可知,本实施例采用由登录装置获取并保存用户身份信息,并在用户发起针对某一个服务器的服务访问请求时,由服务器接收登录装置发送的用户身份信息,然后对该用户身份信息进行身份验证,在验证通过时生成一次性口令,并将该一次性口令提供给登录装置,以便登录装置根据该一次性口令构造参数以启动客户端,然后接收客户端向服务器发起的携带一次性口令的服务请求,以便后续提供相应的服务给用户。由于登录装置在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案采用一次性口令的验证方式,所以,身份验证的安全性也较好,也就是说,本方案可以在保证身份认证的安全性的同时,实现单点登录的功能。根据实施例一和实施例二所描述的方法,以下将在实施例三和实施例四中举例作进一步详细说明。实施例三、在本实施例中,将以由服务器直接对用户身份信息进行验证为例进行说明。其中,该登录装置具体可以通过一段代码来实现,为了描述方便,在本实施例中,将该登录装置称为Portal,该Portal可以嵌入到操作系统中。参见图3a和图3b,该身份认证方法的流程具体可以如下301、用户输入用户身份信息,比如输入用户名和密码等信息,触发Portal的启
动。 302、Portal保存用户身份信息,比如保存用户输入的用户名和密码等信息。其中,Portal在保存身份信息时,可以使用安全措施,以保证用户身份信息的安全。303、用户在需要访问具体的服务时,在Portal中发起服务访问请求。304、Portal接收到用户发起的服务访问请求后,根据用户需要访问的服务,将保存的用户身份信息携带在代理认证请求中,发送给相应的服务系统中的服务器,比如相应的web服务器或其他类型的服务器(server),以请求一次性口令,参见图3b。例如,如果服务器I提供有服务A,则当用户需要访问服务A时,Portal将会把保存的用户身份信息发送给服务器I ;同理,如果服务器2提供有服务B,则当用户需要访问服务B时,Portal将会把保存的用户身份信息发送给服务器2,以此类推,等等。需说明的是,如果用户访问完服务A后,还想继续访问别的服务,比如服务B,则此时只需返回执行步骤304 步骤312即可。其中,为了提高用户身份的安全性,具体可以采用安全套接层(SSL,SecureSockets Layer)通道的方式来传递用户身份信息。305、服务器(如web服务器或server)根据自身的安全认证策略,对接收到的用户身份信息进行验证,若验证通过,则表示用户可以访问该服务,于是执行步骤306,若验证不通过,则表示用户不可以访问该服务,于是可以执行步骤307。306、若身份验证通过,则服务器(如web服务器或server)生成一次性口令,发送一次性口令给Portal,并保存一次性口令同用户身份信息的关联关系。307、若身份验证不通过,则服务器(比如web服务器或server)可以不动作,也可以返回拒绝访问的消息给Portal,以提示用户错误信息。308、Portal如果获取不到一次性口令,比如接收到服务器返回的拒绝访问的消息,或者,由于网络的问题导致没有接收到一次性口令,则可以提示用户无权限访问该服务。如果Portal获取到该一次性口令,则根据获取到的一次性口令构造参数以启动该服务器对应的客户端,以便该客户端向服务器发起携带一次性口令的服务请求。其中,对应不同类型的服务器,启动的方式有所不同,例如,参见图3b,具体可以如下(I)如果服务器为客户端/服务器结构,则Portal可以将服务器信息和该一次性口令作为参数,以启动该服务器对应的GUI,以便GUI向server发起携带一次性口令的服务请求;或者,(2)如果服务器为浏览器/服务器结构,则Portal可以根据服务器信息和该一次性口令构造一个临时的URL,以启动浏览器,以便该浏览器向web服务器发起携带一次性口令的服务请求。309、客户端(如浏览器或⑶I)向服务器发起携带一次性口令的服务请求。310、服务器(比如web服务器或server)在接收到服务请求后,对该一次性口令进行校验,比如校验是否是本系统颁发的一次性口令,该一次性口令是否已被使用、或者该一次性口令是否已经过期等,如果校验失败,比如不是本系统颁发的一次性口令、该一次性口令已经被使用、或者该一次性口令已经过期等等,则可以不动作,也可以返回拒绝访问的消息给客户端,客户端可以提示用户出错,比如提示用户一次性口令错误或不可以访问等信息;如果校验成功,则执行步骤311。311、服务器根据保存的一次性口令同用户身份信息的关联关系,获取与步骤310中校验成功的一次性口令对应的用户身份信息,返回用户身份信息对应的用户可访问的服务给客户端,并将所述一次性口令置为无效。312、客户端根据服务器返回的服务,展示最终的操作界面给用户,以便用户进行操作。 由上可知,本实施例采用由Portal获取并保存用户身份信息,然后在接收到用户发起的针对某一个服务器的服务访问请求时,将保存的用户身份信息发送给该服务器进行身份验证,以获取一次性口令,最后根据该一次性口令构造参数以启动客户端,以便客户端向服务器发起携带一次性口令的服务请求,以实现访问该服务器的目的。由于Portal在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案采用一次性口令的验证方式,具有临时性和一次性的特点,所以,身份验证的安全性也较好,也就是说,本方案可以在保证身份认证的安全性的同时,不需要用户手工干预,实现单点登录的功能。实施例四、在本实施例中,将以服务器通过认证中心,比如AAA系统对用户身份信息进行验证为例进行说明,这种方式有利于对用户进行集中管理和认证。其中,该登录装置具体可以通过一段代码来实现,为了描述方便,在本实施例中,将该登录装置称为Portal,该Portal可以嵌入到操作系统中。参见图4a和图4b(其中,图4b中的虚线部分为与实施例三的方案,即图3b的不同之处),该身份认证方法的流程具体可以如下401、用户输入用户身份信息,比如输入用户名和密码等信息,触发Portal的启动。402、Portal将用户身份信息发送向认证中心,以进行身份验证,如果验证通过,则表示允许访问,返回身份验证结果,其中,身份验证结果指示身份验证通过或不通过。此外,如果身份验证通过,还可以返回当前用户可访问的服务信息,比如返回访问服务列表,以供用户进行选择。403,Portal接收到认证中心返回的身份验证结果后,如果该身份验证结果指示身份验证通过,则Portal构造用户可访问服务的入口(比如如果步骤402中接收到了 “当前用户可访问的服务信息”,则此时可以根据该当前用户可访问的服务信息构造用户可访问服务的入口),并保存用户的身份信息。其中,Portal在保存身份信息时,可以使用安全措施,保证用户身份信息的安全。如果接收到认证中心指示身份验证不通过的校验结果,则不允许用户使用Portalo404、需要访问具体的服务时,通过Portal中所构造的用户可访问服务的入口发起服务访问请求。405、Portal接收到用户发起的服务访问请求后,根据用户需要访问的服务,将保存的用户身份信息携带在代理认证请求中,发送给相应的服务器,比如相应的web服务器或server,以请求一次性口令,参见图4b。例如,如果服务器I提供有服务A,则当用户需要访问服务A时,Portal将会把保存的用户身份信息发送给服务器I ;同理,如果服务器2提供有服务B,则当用户需要访问 服务B时,Portal将会把保存的用户身份信息发送给服务器2,以此类推,等等。需说明的是,如果用户访问完服务A后,还想继续访问别的服务,比如服务B,则此时只需返回执行步骤405 步骤413即可。其中,为了提高用户身份的安全性,具体可以采用SSL通道的方式来传递用户身份信息。406、服务器(如web服务器或server)向认证中心发送身份校验请求,其中,该身份校验请求携带用户身份信息。407、认证中心对用户身份信息进行验证,并返回验证结果,若验证结果指示验证通过,则执行步骤408,若验证结果指示验证不通过,则执行步骤409。其中,认证中心进行身份验证的相关技术具体可参见现有技术,在此不再赘述。408、服务器(如web服务器或server)在接收到认证中心返回的指示身份验证通过的验证结果之后,服务器生成一次性口令,发送一次性口令给Portal,并保存一次性口令同用户身份信息的关联关系。409、服务器(如web服务器或server)在接收到认证中心返回的指示身份验证不通过的验证结果之后,可以不动作,或者,也可以返回拒绝访问的消息给Portal,以提示用户错误信息。410、Portal如果获取不到一次性口令,比如接收到服务器返回的拒绝访问的消息,或者,由于网络的问题导致没有接收到一次性口令,则可以提示用户无权限访问该服务。如果Portal获取到该一次性口令,则根据获取到的一次性口令构造参数以启动服务器对应的客户端,以便该客户端向服务器发起携带一次性口令的服务请求。其中,对应不同类型的服务系统,启动的方式有所不同,例如,参见图4b,具体可以如下(I)如果服务系统为客户端/服务器结构,则Portal可以将服务器信息和该一次性口令作为参数,以启动该服务器对应的GUI,以便该GUI向server发起携带一次性口令的服务请求;或者,(2)如果服务系统为浏览器/服务器结构,则Portal可以根据服务器信息和该一次性口令构造一个临时的URL,以启动浏览器,以便该浏览器向web服务器发起携带一次性口令的服务请求。411、客户端(如浏览器或GUI)向服务器发起携带一次性口令的服务请求。412、服务器(比如web服务器或server)在接收到服务请求后,对该一次性口令进行校验,比如校验是否是本系统颁发的一次性口令,该一次性口令是否已被使用、或者该一次性口令是否已经过期等,如果校验失败,比如不是本系统颁发的一次性口令、该一次性口令已经被使用、或者该一次性口令已经过期等等,则可以不动作,也可以向客户端返回拒绝访问的消息;如果校验成功,则执行步骤413。413、服务器根据保存的根据保存的一次性口令同用户身份信息的关联关系,获取与步骤412中校验成功的一次性口令对应的用户身份信息,返回用户身份信息对应的用户可访问的服务给客户端,并将所述一次性口令置为无效。414、客户端根据服务器返回的服务,展示最终的操作界面给用户,以便用户进行操作。由上可知,本实施例除了可以实现与实施例三同样的有益效果之外,由于是通过认证中心(比如AAA系统)对用户的身份信息进行验证,所以有利于对用户进行集中的管理和控制,可以提高管理效率。
实施例五、为了更好地实施以上方法,本发明实施例还相应地提供一种登录装置,该登录装置具体可以通过一段代码来实现,在本发明实施例中称为“Portal ”。该登录装置可以通过独立的实体来实现,也可以集成在操作系统中。如图5所示,该登录装置可以包括获取单元501、处理单元502、验证结果接收单元503和启动单元504 ;获取单元501,用于获取并保存用户身份信息;例如,具体可以接收用户输入的用户身份信息,然后保存该用户身份信息,其中,用户身份信息具体可以包括用户名和密码等信息。处理单元502,用于响应于用户发起的服务访问请求,向与该服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证;验证结果接收单元503,用于接收服务器在身份验证通过时,返回的一次性口令;其中,该一次性口令由服务器生成,具体的生成方法,可以参见现有技术,在此不再赘述。启动单元504,用于根据验证结果接收单元503接收到的一次性口令构造参数以启动客户端,以便该客户端向服务器发起携带该一次性口令的服务请求。此外,验证结果接收单元503,还用于在身份验证不通过时,接收服务器返回的拒绝访问的消息。需说明的是,如果系统中存在有集中的认证中心,即存在AAA系统,则为了节省信令流程,此时还可以请求认证中心对该用户身份信息进行验证,以便确认该用户是否有访问服务的权限,如果有访问权限,才接收用户发起的服务访问请求(即执行步骤102),否贝U,则拒绝用户的访问,流程结束。即该登录装置还可以包括发送单元发送单元,可以用于向认证中心发送携带用户身份信息(即获取单元501获取到的用户身份信息)的用户身份校验请求给认证中心,以便认证中心对用户身份信息进行校验,在接收到认证中心返回的表示校验通过的消息时,构造用户可访问服务的入口。此外,该发送单元,还可以用于在接收到认证中心返回的表示校验不通过的消息时,向用户返回拒绝访问的消息。则此时,处理单元502,具体可以用于响应于用户通过构造的用户可访问服务的入口发起的服务访问请求,向与该服务访问请求对应的服务器发送携带有用户身份信息的代理认证请求,以进行身份验证。其中,可以由服务器直接进行身份验证,也可以对认证方式进行扩展,比如通过认证中心进行身份验证,例如,具体可以如下处理单元502,具体用于向与该服务访问请求对应的服务器发送携带有该用户的用户身份信息的代理认证请求,以便服务器进行身份验证;或者,处理单 元502,具体用于向与该服务访问请求对应的服务器发送携带有该用户的用户身份信息的代理认证请求,以便服务器通过认证中心进行身份验证。比如,服务器在接收到服务访问请求后,可以发送携带了用户身份信息的用户身份校验请求给认证中心,然后接收认证中心返回的验证结果。其中,认证中心进行身份验证的相关技术具体可参见现有技术,在此不再赘述。其中,对应不同类型的服务系统(服务系统可以包括服务器和客户端),启动单元504对客户端的启动的方式会有所不同,例如,具体可以如下(I)如果服务系统为客户端/服务器(C/S,Client/Server)结构,则可以将服务器信息和该一次性口令作为参数,以启动该服务器对应的GUI,然后由该GUI向服务器发起携带该一次性口令的服务请求。即启动单元504,具体可以用于在服务器为客户端/服务器结构时,将服务器信息和一次性口令作为参数,以启动该服务器对应的GUI,以便该GU向该服务器发起携带该一次性口令的服务请求。(2)如果服务系统为浏览器/服务器(B/S,Bix)WSer/Server)结构,则可以根据服务器信息和该一次性口令构造一个临时的URL,以启动浏览器,然后由该浏览器向服务器发起携带该一次性口令的服务请求。即启动单元504,具体用于在该服务器为浏览器/服务器结构时,根据服务器信息和一次性口令构造一个临时的URL,以启动浏览器,以便该浏览器向服务器发起携带该一次性口令的服务请求。此后,服务器在接收到服务请求后,将会校验该一次性口令的有效性,比如校验是否是本系统颁发的一次性口令,该一次性口令是否已被使用、或者该一次性口令是否已经过期等,如果校验失败,比如不是本系统颁发的一次性口令、该一次性口令已经被使用、或者该一次性口令已经过期等等,则返回拒绝访问的错误信息;如果校验成功,则获取与该一次性口令对应的用户身份信息,向客户端返回用户身份信息对应的用户可访问的服务,并将该一次性口令置为无效。需说明的是,该登录装置的结构除了上述的划分方式之外,还可以有其他的划分方式;具体实施时,以上各个单元可以通过独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现。以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。该登录装置具体可以是手机,平板,便携电脑、个人数字处理PDA等等,也可以作为一个模块集成在手机,平板,便携电脑、个人数字处理PDA中。由上可知,本实施例的登录装置的获取单元501可以获取并保存用户身份信息,然后在处理单元502接收到用户发起的针对某一个服务器的服务访问请求时,由处理单元502将保存的用户身份信息发送给该服务器进行身份验证,以获取一次性口令,最后由启动单元504根据该一次性口令构造参数以启动客户端,以便客户端向服务器发起携带该一次性口令的服务请求,以实现访问该服务器的目的。由于登录装置在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案采用一次性口令的验证方式,所以,身份验证的安全性也较好,也就是说,本方案可以在保证身份认证的安全性的同时,实现单点登录的功倉泛。实施例六、相应的,本发明实施例还提供一种服务器,可以作为本发明实施例所提供身份认证方法中的服务器,如图6a所示,该服务器可以包括身份信息接收单元601、身份验证单元602、口令发送单元603、服务请求接收单元604、口令校验单元605和处理单元606 ;
身份信息接收单元601,用于接收登录装置发送的用户身份信息的代理认证请求;身份验证单元602,用于根据预置的安全认证策略对身份信息接收单元601接收到的代理认证请求中的用户身份信息进行身份验证;口令发送单元603,用于身份验证单元602确定身份验证通过时,生成一次性口令,向登录装置返回一次性口令,并保存该一次性口令和用户身份信息的关联关系;服务请求接收单元604,用于接收客户端利用该一次性口令发送的服务请求;口令校验单元605,用于对所述一次性口令进行校验;处理单元606,用于在口令校验单元605确定一次性口令校验通过时,根据保存的一次性口令和用户身份信息的关联关系,获取与该校验通过的一次性口令对应的用户身份信息,向客户端返回用户身份信息对应的用户可访问的服务,并将该一次性口令置为无效。
此外,处理单元606,还可以用于在口令校验单元605确定一次性口令校验不通过时,向客户端返回拒绝访问的消息。其中,口令校验单元605在对一次性口令进行校验时,具体可以校验当前的一次性口令是否是本系统颁发的一次性口令、校验当前的一次性口令是否已被使用、以及校验当前的一次性口令是否已经过期等,如果该一次性口令不是本系统颁发的一次性口令、或者该一次性口令已经被使用、或者该一次性口令已经过期等等,则确定校验失败(即校验不通过),此时处理单元606可以不动作,也可以返回拒绝访问的消息给客户端;如果该一次性口令是本系统颁发的一次性口令、且该一次性口令没有被使用过、且该一次性口令没有过期,则确定校验成功(即校验通过),则此时处理单元606可以获取与该一次性口令对应的用户身份信息,向客户端返回用户身份信息对应的用户可访问的服务,并将该一次性口令置为无效。如图6b所示,该服务器还可以包括拒绝单元607 ;拒绝单元607,用于在身份验证单元602确定身份验证不通过时,向登录装置返回拒绝访问的消息。其中,具体可以由服务器自身直接对用户身份信息进行身份验证,也可以由其他的系统,比如认证中心,即AAA系统来对用户身份信息进行身份验证。即身份验证单元602,具体可以用于对身份信息接收单元601接收到的用户身份信息进行身份验证;或者,身份验证单元602,具体可以用于向认证中心发送携带用户身份信息的用户身份校验请求,以便认证中心根据该用户身份信息进行身份验证;接收认证中心返回的身份验证结果,其中,身份验证结果指示身份验证通过或不通过。需说明的是,该服务器的结构除了上述的划分方式之外,还可以有其他的划分方式;具体实施时,以上各个单元可以通过独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现。以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。该服务器具体可以为web服务器或其他的服务器(server)等。由上可知,本实施例采用由登录装置获取并保存用户身份信息,并在用户发起针对某一个服务器(比如服务器)的服务访问请求时,由服务器的身份信息接收单元601接收登录装置发送的用户身份信息,然后由身份验证单元602对该用户身份信息进行身份验证,在验证通过时由口令发送单元603生成一次性口令,并将该一次性口令提供给登录装置,以便登录装置根据该一次性口令构造参数以启动客户端,然后由服务请求接收单元604接收客户端向服务器发起携带一次性口令的服务请求,以便后续提供相应的服务给用户。由于登录装置在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案采用一次性口令的验证方式,所以,身份验证的安全性也较好,也就是说,本方案可以在保证身份认证的安全性的同时,实现单点登录的功能。实施例七、相应的,本发明实施例还提供一种通信系统,包括终端设备和本发明实施例提供的任一种服务器,该终端设备包括客户端和本发明实施例提供的任一种登录装置。其中,登录装置和服务器的具体说明可参见实施例五和实施例六,在此不再赘述。客户端,由登录装置根据一次性口令构造参数来启动,并在启动之后,利用所述一次性口令向服务器发起服务请求。该客户端,还可以用于在一次性口令校验不通过时,接收服务器702返回的拒绝访问的消息。其中,该客户端具体可以为⑶I或浏览器。例如,参见图7,该通信系统可以包括终端设备701和服务器702 ;其中,服务器702的数量为至少一个。终端设备701,用于获取并保存用户身份信息,响应于用户发起的服务访问请求,向与服务访问请求对应的服务器702发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证,接收服务器702在身份验证通过时返回的一次性口令,根据该一次性口令构造参数以启动客户端,由客户端向服务器702发起携带一次性口令的服务请求。服务器702,用于接收终端设备701发送的携带有用户身份信息的代理认证请求,根据预置的安全认证策略对该接收到的用户身份信息进行身份验证,在身份验证通过时,生成并返回一次性口令给终端设备701,并保存该一次性口令和用户身份信息的关联关系,接收客户端发送的携带一次性口令的服务请求,对该一次性口令进行校验,在该一次性口令校验通过时,获取与该一次性口令对应的用户身份信息,向客户端返回用户身份信息对应的用户可访问的服务,并将该一次性口令置为无效。其中,服务器702,还用于在身份验证不通过时,向终端设备701发送拒绝访问的消息;则此时,终端设备701,还可以用于在身份验证不通过时,接收服务器702返回的拒绝访问的消息。此外,服务器702,还可以用于在对一次性口令校验不通过时,向客户端返回拒绝访问的消息。其中,可以由服务器702自身直接对用户身份信息进行身份验证,也可以对认证方式进行扩展,比如通过认证中心进行身份验证,即具体可以采用如下任意一种方式(I)由服务器702自身直接对用户身份信息进行身份验证;终端设备701,具体可以向与该服务访问请求对应的服务器702发送携带用户身份信息的代理认证请求;则此时,服务器702,具体可以用于直接对该用户身份信息进行身份验证;或者,(2)通过认证中心对用户身份信息进行身份验证;终端设备701,具体可以用于向与该服务访问请求对应的服务器702发送代理认证请求,其中,该代理认证请求中携带保存的用户身份信息;则此时,服务器702,具体可以用于向认证中心发送携带用户身份信息的用户身份校验请求,以便认证中心根据所述用户身份信息进行身份验证;接收认证中心返回的身份验证结果,其中,身份验证结果指示身份验证通过或不通过。其中,认证中心进行身份验证的相关技术具体可参见现有技术,在此不再赘述。如果是通过认证中心对用户身份进行认证的话,则在登录装置获取到用户身份信息之后,还可以请求认证中心对该用户身份信息进行验证,以便确认该用户是否有访问服务的权限,如果有访问权限,才接收用户发起的服务访问请求(即执行步骤102),否则,则拒绝用户的访问;即终端设备701,具体还可以用于根据用户身份信息向认证中心发送用户身份校验请求,以便认证中心对用户身份信息进行校验;若接收到认证中心返回的表示校验通过的消息,则构造用户可访问服务的入口 ;若接收到认证中心返回的表示校验不通过的消息,则向用户返回拒绝访问的消息。此后,终端设备701可以通过该构造的用户可访问服务的入口来接收用户发起的服务访问请求。需说明的是,该通信系统除了包括上述终端设备701和服务器702之外,还可以包括其他设备,比如一次性口令生成系统、和/或认证中心。 一次性口令生成系统,用于在服务器702的请求下,生成一次性口令,并将生成的一次性口令提供给服务器702。认证中心,即AAA系统,用于对用户身份信息进行认证,并将认证结果通知给终端设备701或服务器702。以上各个设备的具体实施可参见前面的实施例,在此不再赘述。需要说明的是,本发明实施例的终端设备701具体可以是手机,平板,便携电脑、个人数字处理PDA等等。 由上可知,本实施例的通信系统采用由终端设备701获取并保存用户身份信息,然后在接收到用户发起的针对某一个服务器702的服务访问请求时,将保存的用户身份信息发送给该服务器702进行身份验证,以获取一次性口令,最后根据该一次性口令构造参数以启动客户端,以便客户端向服务器702发起携带一次性口令的服务请求,以实现访问该服务器702的目的。由于终端设备701在获取到用户身份信息之后,可以保存用户身份信息,并在用户发起服务访问请求时,自动地获取一次性口令并进行登录,所以在本方案中,用户只需要输入一次用户身份信息,就可以访问不同的服务器,这相对于现有技术中,用户在访问不同的服务器702时都需要重新输入一次用户身份信息而言,大大方便了用户的操作,而且,由于该方案采用一次性口令的验证方式,所以,身份验证的安全性也较好,也就是说,本方案可以在保证身份认证的安全性的同时,实现单点登录的功能。实施例八、相应的,本发明实施例还提供一种终端设备,包括客户端和本发明实施例提供的任一种登录装置。其中,登录装置具体可参见前面的实施例,在此不再赘述。其中,客户端由登录装置根据一次性口令构造参数来启动,并在启动之后,利用所述一次性口令向服务器发起服务请求,详见前面的实施例,在此不再赘述。该客户端具体可以为GUI或浏览器,详见前面的实施例。该终端设备具体可以为手机,平板,便携电脑、个人数字处理PDA等等。由于该终端设备中包括了本发明实施例提供的登录装置,所以同样可以实现上述登录装置的有益效果,在此不再赘述。综上所述,本发明上述实施例中,所采用的身份认证的方案与现有的各个身份验证协议具有如下区别(I)与 kerberos (指网络认证协议,Network Authentication Protocol)协议认证方案的区别,如下kerberos协议认证方案需要专门的认证服务器,比如密钥分发中心(KDC, KeyDistribute Center)生成标签(ticket),用于标识用户身份;其中,ticket在传输过程中需要使用公钥基础设施(PKI, Public Key Infrastructure)机制来保证ticket传输的安全。而本发明实施例所提供的方案在扩展认证服务器时,只需要认证服务器能够认证用户名和密码即可,而不需要专门的认证服务器,适用较为广泛。(2)与安全断言标记语言(SAML, Security Assertion Markup Language)协议认证方案的区别,如下SAML协议认证方案无代理的过程,只是由需访问服务器(Server Provider)转发认证请求至断言方(Identity Provider)进行认证身份;(3)与RSA(指RSA公钥加密算法)机制认证方案的区别,如下RSA机制认证方案需要根据物理的标记(token,)卡生成临时码,并且需要服务器能够认证token卡临时码。每次认证都需要用户输入token卡中的临时码,较为不便。而本发明实施例所提供的方案在用户输入一次性口令后,就不需要再输入任何信息,极为便利;与此同时,还可以使用该一次性口令构造URL以启动浏览器,或者,使用该一次性口令作为参数启动GUI,从而通过浏览器或⑶I访问服务器,可以防止重放攻击(Replay Attacks);其中,所谓重放攻击又称重播攻击、回放攻击或新鲜性攻击(FreshnessAttacks),是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括只读存储器(ROM, Read Only Memory)、随机存取记忆体(RAM, RandomAccess Memory)、磁盘或光盘等。以上对本发明实施例所提供的一种身份认证的方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种身份认证的方法,其特征在于,包括 获取并保存用户身份信息; 响应于用户发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证; 接收服务器在身份验证通过后,返回的一次性口令; 根据所述一次性口令构造参数启动客户端,以便所述客户端向所述服务器发起携带所述一次性口令的服务请求。
2.根据权要求I所述的方法,其特征在于,所述向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证,具体为 向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以便所述服务器进行身份验证;或者, 向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以便所述服务器通过认证中心进行身份验证。
3.根据权要求I或2所述的方法,其特征在于,所述根据所述一次性口令构造参数启动客户端,以便所述客户端利用所述一次性口令向所述服务器发起服务请求,具体为 如果服务系统为客户端/服务器C/S结构,则将服务器信息和所述一次性口令作为参数,启动图形用户界面,以便所述图形用户界面向所述服务器发起携带所述一次性口令的服务请求;或者, 如果服务系统为浏览器/服务器B/S结构,则根据服务器信息和所述一次性口令构造一个临时的统一资源定位符URL,启动浏览器,以便所述浏览器向所述服务器发起携带所述一次性口令的服务请求。
4.根据权利2所述的方法,其特征在于,所述获取并保存用户身份信息之后,还包括 向所述认证中心发送携带所述用户身份信息的用户身份校验请求,以便认证中心对所述用户身份信息进行校验; 若接收到认证中心返回的表示校验通过的消息,则构造用户可访问服务的入口 ; 若接收到认证中心返回的表示校验不通过的消息,则向用户返回拒绝访问的消息。
5.根据权利4所述的方法,其特征在于,所述响应于用户发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户身份信息的代理认证请求,以进行身份验证包括 响应于用户通过构造的用户可访问服务的入口发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户身份信息的代理认证请求,以进行身份验证。
6.一种身份认证的方法,其特征在于,包括 接收登录装置发送的携带有用户身份信息的代理认证请求; 根据安全认证策略对所述代理认证请求中携带的用户身份信息进行身份验证; 在身份验证通过时,生成一次性口令并向所述登录装置返回所述一次性口令,并保存所述一次性口令和用户身份信息的关联关系; 接收客户端发送的携带所述一次性口令的服务请求; 对所述一次性口令进行校验; 在所述一次性口令校验通过时,根据一次性口令和用户身份信息的关联关系获取与所述一次性口令对应的用户身份信息,向所述客户端返回所述用户身份信息对应的用户可访问的服务,并将所述一次性口令置为无效。
7.根据权利要求6所述的方法,其特征在于,还包括 若对一次性口令校验不通过,则向所述客户端返回拒绝访问的消息。
8.根据权利要求6所述的方法,其特征在于,还包括 若身份验证不通过,则向所述登录装置返回拒绝访问的消息。
9.根据权利要求6至8任一项所述的方法,其特征在于,所述根据安全认证策略对所述用户身份信息进行身份验证,包括 由服务器对所述用户身份信息进行身份验证;或者, 由服务器向认证中心发送携带用户身份信息的用户身份校验请求,以便认证中心根据所述用户身份信息进行身份验证;接收认证中心返回的身份验证结果,所述身份验证结果指示身份验证通过或不通过。
10.一种登录装置,其特征在于,包括 获取单元,用于获取并保存用户身份信息; 处理单元,用于响应于用户发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以进行身份验证; 验证结果接收单元,用于接收服务器在身份验证通过后,返回的一次性口令; 启动单元,用于根据所述一次性口令构造参数启动客户端,以便所述客户端向所述服务器发起携带所述一次性口令的服务请求。
11.根据权利要求10所述的登录装置,其特征在于, 所述处理单元,具体用于向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以便服务器进行身份验证;或者,向与所述服务访问请求对应的服务器发送携带有所述用户的用户身份信息的代理认证请求,以便服务器通过认证中心进行身份验证。
12.根据权利要求10或11所述的登录装置,其特征在于, 所述启动单元,具体用于在服务系统为客户端/服务器C/S结构时,将服务器信息和所述一次性口令作为参数,启动图形用户界面,以便所述图形用户界面向所述服务器发起携带所述一次性口令的服务请求;或者, 所述启动单元,具体用于在服务系统为浏览器/服务器B/S结构时,根据服务器信息和所述一次性口令构造一个临时的统一资源定位符URL,启动浏览器,以便所述浏览器向所述服务器发起携带所述一次性口令的服务请求。
13.根据权利11或12所述的登录装置,其特征在于,还包括 发送单元,用于向认证中心发送携带所述用户身份信息的用户身份校验请求,以便认证中心对用户身份信息进行校验,在接收到认证中心返回的表示校验通过的消息时,构造用户可访问服务的入口 ;在接收到认证中心返回的表示校验不通过的消息时,向用户返回拒绝访问的消息; 其中,所述处理单元,具体用于响应于用户通过构造的用户可访问服务的入口发起的服务访问请求,向与所述服务访问请求对应的服务器发送携带有所述用户身份信息的代理认证请求,以进行身份验证。
14.一种服务器,其特征在于,包括 代理认证请求接收单元,用于接收登录装置发送的携带有用户身份信息的代理认证请求; 身份验证单元,用于根据安全认证策略对所述用户身份信息进行身份验证; 口令发送单元,用于在身份验证通过时,生成一次性口令并向所述登录装置返回所述一次性口令,并保存所述一次性口令和用户身份信息的关联关系; 服务请求接收单元,用于接收客户端发送的携带所述一次性口令的服务请求; 口令校验单元,用于对所述一次性口令进行校验; 处理单元,用于在所述一次性口令校验通过时,根据所述一次性口令和用户身份信息的关联关系获取与所述一次性口令对应的用户身份信息,向所述客户端返回所述用户身份信息对应的用户可访问的服务,并将所述一次性口令置为无效。
15.根据权利要求14所述的服务器,其特征在于, 所述处理单元,还用于在对一次性口令校验不通过时,向客户端返回拒绝访问的消息。
16.根据权利要求14或15所述的服务器,其特征在于, 所述身份验证单元,具体用于对所述用户身份信息进行身份验证;或者, 所述身份验证单元,具体用于向认证中心发送携带用户身份信息的用户身份校验请求,以便认证中心根据所述用户身份信息进行身份验证;接收认证中心返回的身份验证结果,所述身份验证结果指示身份验证通过或不通过。
17.—种通信系统,其特征在于,包括终端设备和权利要求14至16所述的任一种服务器,所述终端设备包括客户端和权利要求10至13所述的任一种登录装置; 所述客户端由登录装置根据一次性口令构造参数来启动,并在启动之后,利用所述一次性口令向所述服务器发起服务请求。
18.—种终端设备,其特征在于,包括客户端和权利要求10至13所述的任一种登录装置; 所述客户端由登录装置根据一次性口令构造参数来启动,并在启动之后,利用所述一次性口令向服务器发起服务请求。
19.根据权利要求18所述的终端设备,其特征在于, 所述客户端具体为图形用户界面或浏览器。
全文摘要
本发明公开了一种身份认证的方法、装置和系统。本发明实施例采用由登录装置获取并保存用户身份信息,然后在接收到用户发起的针对某一个服务器的服务访问请求时,将保存的用户身份信息发送给该服务器进行身份验证,以获取一次性口令,最后根据该一次性口令构造参数以启动客户端,以便客户端向服务器发起携带一次性口令的服务请求,以实现访问该服务器的目的。本方案可以在保证身份认证的安全性的同时,实现单点登录的功能。
文档编号H04L29/06GK102624720SQ20121005354
公开日2012年8月1日 申请日期2012年3月2日 优先权日2012年3月2日
发明者邵佳一 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1