CN110278179A - 单点登录方法、装置和***以及电子设备 - Google Patents

单点登录方法、装置和***以及电子设备 Download PDF

Info

Publication number
CN110278179A
CN110278179A CN201810215484.XA CN201810215484A CN110278179A CN 110278179 A CN110278179 A CN 110278179A CN 201810215484 A CN201810215484 A CN 201810215484A CN 110278179 A CN110278179 A CN 110278179A
Authority
CN
China
Prior art keywords
token
sign
access request
user terminal
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810215484.XA
Other languages
English (en)
Other versions
CN110278179B (zh
Inventor
丛邵鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201810215484.XA priority Critical patent/CN110278179B/zh
Publication of CN110278179A publication Critical patent/CN110278179A/zh
Application granted granted Critical
Publication of CN110278179B publication Critical patent/CN110278179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供了一种单点登录方法、装置和***以及电子设备。该方法包括:在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。本发明实施例在单点登录过程中,通过单点登录代理服务器生成与账号中心服务器唯一对应的令牌名,进而根据该令牌名通过代理服务器向账号中心服务器发起登录验证,能够屏蔽掉各种账号中心服务器的差异,使得单点登录客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对单点登录客户端进行改造,降低了操作成本。

Description

单点登录方法、装置和***以及电子设备
技术领域
本发明涉及通信技术领域,尤其涉及一种单点登录方法、装置和***以及电子设备。
背景技术
单点登录,是当前比较流行的一种企业业务整合的解决方案。多个应用基于统一的账号中心登录认证,并共享登录状态,即,用户只需要登录一次就可以访问所有相互信任的应用;且在一处登出则全局登出。
现有的单点登录方案中,多个单点登录客户端利用统一的账号中心进行账号密码验证,一次登录成功后,用户再访问其它单点登录客户端,则无需再次输入账号密码,而是由当前的单点登录客户端直接向统一的账号中心进行验证。
发明人在实现本发明的过程中,发现现有技术至少存在如下问题:由于不同的账号中心采用不同的账号格式,现有的单点登录客户端只能针对一种单一的账号格式而设计,无法与多个异构账号中心相适配。若想更换单点登录***中的账号中心,则需要对所有的单点登录客户端进行改造,操作成本较高。
发明内容
本发明实施例提供一种单点登录方法、装置和***以及电子设备,以解决现有技术的缺陷,实现单点登录客户端与任意异构账号中心相适配,以降低更换账号中心时的操作成本。
为达到上述目的,本发明实施例提供了一种单点登录***,包括:用户终端、单点登录客户端、账号中心服务器和单点登录代理服务器,所述单点登录代理服务器用于,在用户通过所述用户终端进行单点登录过程中,生成令牌名,并将所述令牌名写入所述用户终端的浏览器缓存,所述令牌名与所述账号中心服务器唯一对应;所述单点登录客户端用于,在接收到所述用户终端的访问请求时,根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,向所述账号中心服务器发起登录验证;所述账号中心服务器用于,在接收到所述单点登录代理服务器发送的访问请求时,根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证,所述访问请求由所述用户终端在所述用户首次登录***时所产生。
本发明实施例还提供了一种单点登录方法,包括:在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。
本发明实施例还提供了一种单点登录方法,包括:在用户通过用户终端进行单点登录过程中,接收所述用户终端的访问请求;根据所述访问请求以及由单点登录代理服务器所生成的令牌名,向账号中心服务器发起登录验证,所述令牌名与所述账号中心服务器唯一对应。
本发明实施例还提供了一种单点登录方法,包括:在用户通过用户终端进行单点登录过程中,接收单点登录代理服务器发送的访问请求,所述访问请求由所述用户终端在所述用户首次登录***时所产生;根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证。
本发明实施例还提供了一种单点登录装置,包括:令牌名生成模块,用于在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;令牌名写入模块,用于将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。
本发明实施例还提供了一种单点登录装置,包括:第一接收模块,用于在用户通过用户终端进行单点登录过程中,接收所述用户终端的访问请求;第一验证模块,用于根据所述访问请求,通过单点登录代理服务器生成的令牌名,向账号中心服务器发起登录验证,所述令牌名与所述账号中心服务器唯一对应。
本发明实施例还提供了一种单点登录装置,包括:第二接收模块,用于在用户通过用户终端进行单点登录过程中,接收单点登录代理服务器发送的访问请求,所述访问请求由所述用户终端在所述用户首次登录***时所产生;第二验证模块,用于根据所述访问请求以及所述单点登录代理服务器生成的令牌名,对所述用户进行登录验证。
本发明实施例还提供一种电子设备,包括:存储器,用于存储程序;处理器,用于运行所述存储器中存储的所述程序,以用于:在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。
本发明实施例还提供一种电子设备,包括:存储器,用于存储程序;处理器,用于运行所述存储器中存储的所述程序,以用于:在用户通过用户终端进行单点登录过程中,接收所述用户终端的访问请求;根据所述访问请求以及由单点登录代理服务器所生成的令牌名,向账号中心服务器发起登录验证,所述令牌名与所述账号中心服务器唯一对应。
本发明实施例还提供一种电子设备,包括:存储器,用于存储程序;处理器,用于运行所述存储器中存储的所述程序,以用于:在用户通过用户终端进行单点登录过程中,接收单点登录代理服务器发送的访问请求,所述访问请求由所述用户终端在所述用户首次登录***时所产生;根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证。
本发明实施例提供的单点登录方法、装置和***以及电子设备,在单点登录过程中,通过单点登录代理服务器生成与账号中心服务器唯一对应的令牌名,进而根据该令牌名通过代理服务器向账号中心服务器发起登录验证,能够屏蔽掉各种账号中心服务器的差异,使得单点登录客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对单点登录客户端进行改造,降低了操作成本。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明提供的单点登录***实施例的***框图;
图2为本发明提供的单点登录方法一个实施例的流程图;
图3为本发明提供的单点登录方法另一个实施例的流程图;
图4为本发明提供的单点登录方法又一个实施例的流程图;
图5为本发明提供的单点登录方法再一个实施例的流程图;
图6为本发明提供的单点登录方法一个具体实施例的流程图;
图7为本发明提供的单点登录装置一个实施例的结构示意图;
图8为本发明提供的单点登录装置另一个实施例的结构示意图;
图9为本发明提供的单点登录装置又一个实施例的结构示意图;
图10为本发明提供的电子设备一个实施例的结构示意图;
图11为本发明提供的电子设备另一个实施例的结构示意图;
图12为本发明提供的电子设备又一个实施例的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
现有技术中的单点登录(Single Sign On;以下简称:SSO)客户端是针对特定的账号中心服务器特别设计的,也就是说,在***部署之时,SSO客户端便被告知账号中心服务器的令牌名(如,token),所以,在读取浏览器缓存(cookie)时,SSO客户端直接读取token中的令牌内容(即,token=xxxx)。而若将SSO客户端设计为通用型、不针对某一特定账号中心服务器、随机与账号中心服务器相配置,则,SSO客户端将无法获知为其配置的账号中心服务器的令牌名。针对现有技术中单点登录客户端无法与多个异构账号中心相适配的缺陷,本申请提供一种解决方案,其主要原理是:在单点登录过程中,当SSO客户端通过SSO代理服务器向账号中心服务器发起登录验证(验证用户是否已在账号中心服务器进行登录)时,由SSO代理服务器生成与账号中心服务器唯一对应的令牌名(token_name)(SSO代理与账号中心服务器之间进行约定),并将该令牌名写入到用户终端的cookie中,使得SSO客户端能够根据该令牌名获得账号中心服务器针对该用户提交账号和密码时所生成的令牌(token),从而进一步根据该令牌(token)向账号中心服务器发起登录验证。本发明的方案能够克服现有技术的缺陷,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,使得SSO客户端能够与账号中心服务器解耦,屏蔽掉各种账号中心服务器的差异,与任意异构账号中心(如,阿里云账号中心、淘宝账号中心等)相适配,在更换***的账号中心时,无需对SSO客户端进行改造,降低了操作成本。
上述实施例是对本发明实施例的技术原理的说明,下面通过多个实施例来进一步对本发明实施例具体技术方案进行详细描述。
实施例一
图1为本发明提供的单点登录***实施例的***框图。如图1所示,该单点登录***包括:至少一个用户终端、至少一个SSO客户端以及一台账号中心服务器和一台SSO代理服务器。其中,SSO代理服务器用于在用户通过用户终端进行单点登录过程中,生成令牌名,并将令牌名写入用户终端的浏览器缓存(cookie),该令牌名与账号中心服务器唯一对应;SSO客户端用于在接收到用户终端的访问请求时,根据该访问请求以及由SSO代理服务器所生成的令牌名,向账号中心服务器发起登录验证;账号中心服务器用于在接收到SSO代理服务器发送的访问请求时,根据该访问请求以及由SSO代理服务器所生成的令牌名,对该用户进行登录验证,该访问请求由用户终端在该用户首次登录***时所产生。
在本发明实施例中,当用户首次登录***时,首先通过用户终端向SSO客户端发送访问请求,SSO客户端将该访问请求发送至SSO代理服务器,SSO代理服务器则生成与账号中心服务器唯一对应的令牌名,并将该访问请求转发至账号中心服务器,使得账号中心服务器根据该访问请求和令牌名对该用户进行登录验证。
进一步地,SSO客户端在接收到用户终端发送的访问请求后,判断该用户是否处于登录状态,例如,可以通过查看该SSO客户端的会话对象(session)中是否存储有与该用户相匹配的用户信息判断,若不存在,则进一步地通过查看该访问请求中携带的cookie中是否存有令牌名和/或令牌来判断,若无法读取到cookie中的,则证明该用户未登录。因此,当访问请求中未携带有令牌和/或令牌名时,SSO客户端还可以用于将该访问请求通过用户终端定向发送(即,通过用户终端的HTTP请求重定向)至SSO代理服务器;当接收到用户终端的访问请求时,SSO代理服务器还用于生成令牌名,并将该访问请求通过用户终端定向发送(即,重定向)至账号中心服务器;账号中心服务器还用于根据该访问请求与用户终端进行交互,对该用户进行账号验证,生成令牌,并将令牌写入用户终端的cookie,以及,将携带令牌和令牌名的访问请求通过用户终端定向发送(即,重定向)至SSO客户端。
更进一步地,若SSO客户端能够从接收到的访问请求中读取令牌,则证明该用户已在账号中心服务器登录,因此,当访问请求中携带有令牌和令牌名时,SSO客户端还可以用于从访问请求中获取令牌名,并根据令牌名读取令牌;以及,将读取到的令牌通过SSO代理服务器转发至账号中心服务器,以进行令牌验证。
此外,SSO代理服务器还可以用于将账号中心服务器进行令牌验证成功后返回的用户的用户信息转发至SSO客户端;此时,SSO客户端还可以用于将接收到的用户信息存入会话对象。在本发明实施例中用户的用户数据可以包括但不限于用于识别用户的唯一ID、用于标识用户的登录名等。
本发明实施例提供的增量数据的***,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本。
实施例二
图2为本发明提供的单点登录方法一个实施例的流程图,该方法的执行主体可以为上述实施例所描述的***中的SSO代理服务器。如图2所示,该单点登录方法包括如下步骤:
S201,在用户通过用户终端进行单点登录过程中,生成令牌名,该令牌名与账号中心服务器唯一对应。
在本发明实施例中,SSO客户端可以用于部署具有验证账号合法性需求的应用,通常是功能性产品的控制台,可以通过用户终端的浏览器进行访问。当用户首次登录***时,首先通过用户终端向SSO客户端发送访问请求,SSO客户端将该访问请求发送至SSO代理服务器,SSO代理服务器则生成与账号中心服务器唯一对应的令牌名(token_name)。
S202,将令牌名写入用户终端的浏览器缓存,使得目标应用所部署的SSO客户端根据该令牌名发起登录验证。
SSO代理服务器将该令牌名写入用户终端的浏览器缓存(cookie),并将该访问请求转发至账号中心服务器,使得目标应用(即,用于欲访问的应用)所部署的SSO客户端根据该令牌名发起针对该用户的登录验证。
本发明实施例提供的单点登录方法,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,进而根据该令牌名通过代理服务器向账号中心服务器发起登录验证,能够屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本。
实施例三
图3为本发明提供的单点登录方法另一个实施例的流程图。如图3所示,在上述图2所示实施例的基础上,本实施例提供的单点登录方法还可以包括以下步骤:
S301,当接收到用户终端的访问请求时,生成令牌名。
在本发明实施例中,SSO客户端在接收到用户终端发送的访问请求后,判断该用户是否处于登录状态,例如,可以通过查看该SSO客户端的会话对象(session)中是否存储有与该用户相匹配的用户信息判断,若不存在,则进一步地通过查看该访问请求中携带的cookie中是否存有令牌名和/或令牌来判断,若无法读取到cookie中的,则证明该用户未登录。因此,当访问请求中未携带有令牌和/或令牌名时,SSO客户端将该访问请求通过用户终端定向发送至SSO代理服务器。当接收到用户终端的访问请求时,SSO代理服务器生成令牌名,并将令牌名写入用户终端的cookie(token_name=aliyun_token)。
S302,将访问请求通过用户终端定向发送至账号中心服务器,该访问请求由用户终端在该用户首次登录***时所产生。
同时,SSO代理服务器将该访问请求通过用户终端定向发送(即,重定向)至账号中心服务器。账号中心服务器根据该访问请求与用户终端进行交互,对该用户进行账号验证,生成令牌,并将令牌写入用户终端的cookie(aliyun_token=xxxx)。账号中心服务器将携带令牌和令牌名的访问请求通过用户终端定向发送(即,重定向)至SSO客户端。
S303,将SSO客户端根据令牌名读取到的令牌转发至账号中心服务器进行令牌验证。
SSO客户端从访问请求中获取令牌名,并根据令牌名读取令牌,并将读取到的令牌发送至SSO代理服务器。SSO代理服务器将该令牌(aliyun_token=xxxx)转发至账号中心服务器进行令牌验证(即,判断该令牌与账号中心服务器中存储的与该用户相对应的令牌是否一致,若一致,则令牌验证成功)。
S304,将账号中心服务器进行令牌验证成功后返回的该用户的用户信息转发至SSO客户端。
当账号中心服务器进行令牌验证成功后,会将该用户的用户信息返回至SSO代理服务器,SSO代理服务器则进一步将其转发至SSO客户端进行存储。
进一步地,本发明实施例还可以适用于跨域单点登录,当SSO客户端与账号中心服务器不同域(不在同一父域名下)时,SSO客户端和账号中心不能共享cookie。此时,本发明实施例提供的单点登录方法还可以包括:
S305,当接收到携带令牌的访问请求时,将该令牌转化票据信息,并将携带票据信息的访问请求通过用户终端定向发送至SSO客户端。
S306,当接收到票据信息时,根据该票据信息,获取令牌,并将令牌发送至账号中心服务器进行令牌验证。
在本发明实施例中,当SSO客户端与账号中心服务器不同域时,账号中心服务器将携带令牌和令牌名的访问请求通过用户终端定向发送(即,重定向)至SSO客户端后,SSO客户端无法获取cookie中的令牌,因此,仍然判定该用户未登陆。此时,SSO客户端将访问请求重定向到SSO代理服务器,访问请求的参数携带SSO客户端的返回地址,同时访问请求携带存储有令牌(aliyun_token)的cookie。当SSO代理服务器接收到携带令牌的访问请求时,将该令牌转化为票据信息(ticket),并将票据信息通过用户终端定向发送至SSO客户端,具体地,ticket是一次性的票据信息,通常本身不包含数据,而是与账号中心服务器暂存的用户信息关联,一次消费即失效,且有效期很短,过期即失效。SSO代理服务器设置为与账号中心服务器同域,因此能够从cookie中获取令牌,进而转化为ticket。在本发明实施例中,通过统一资源定位符(Uniform Resource Locator;以下简称:URL)发送的ticket,不受跨域限制,因此能够实现跨域的单点登录。另外,SSO代理服务器也可以通过用户终端的URL,将票据信息定向发送至SSO客户端。当SSO客户端获取到访问请求中的ticket后,将ticket从后端发送到SSO代理服务器。SSO代理服务器接收到ticket后,利用ticket调用开放接口从账号中心服务器获取用户的令牌,然后并将令牌发送至账号中心服务器进行令牌验证。
在本发明实施例中,ticket可以采取与token类似的加密机制。另外,ticket可以存储于临时表中,定时刷新、清理超时的ticket,并且在一次读取的同时,销毁ticket。
本发明实施例提供的单点登录方法,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本;另外,通过将令牌转化为票据信息,并利用URL进行传输,能够实现跨域单点登录,进一步降低了操作成本。
实施例四
图4为本发明提供的单点登录方法又一个实施例的流程图,该方法的执行主体可以为上述实施例所描述的***中的SSO客户端。如图4所示,该单点登录方法包括如下步骤:
S401,在用户通过用户终端进行SSO过程中,接收用户终端的访问请求。
S402,根据该访问请求以及由SSO代理服务器所生成的令牌名,向账号中心服务器发起登录验证,该令牌名与账号中心服务器唯一对应。
具体地,当访问请求中未携带有令牌和/或令牌名时,SSO客户端将访问请求通过用户终端定向发送至SSO代理服务器,使得SSO代理服务器生成令牌名、并将访问请求通过用户终端定向发送至账号中心服务器。
当访问请求中携带有令牌和令牌名时,SSO客户端从该访问请求中获取令牌名,并根据令牌名读取令牌,该令牌由账号中心服务器在对该用户进行账号验证成功后所生成,该令牌名由SSO代理服务器所生成;然后,SSO客户端将读取到的令牌通过SSO代理服务器转发至账号中心服务器,以进行令牌验证。
在本发明实施例中,SSO客户端在接收到用户终端发送的访问请求后,需要判断该用户是否处于登录状态,例如,可以通过查看该SSO客户端的会话对象(session)中是否存储有与该用户相匹配的用户信息判断,若不存在,则进一步地通过查看该访问请求中携带的cookie中是否存有令牌名和/或令牌来判断,若无法读取到cookie中的,则证明该用户未登录。因此,当访问请求中未携带有令牌和/或令牌名时,SSO客户端将该访问请求通过用户终端定向发送至SSO代理服务器。当接收到用户终端的访问请求时,SSO代理服务器生成令牌名,并将令牌名写入用户终端的cookie(token_name=aliyun_token)。
当访问请求中携带有令牌和令牌名时,SSO客户端从访问请求中获取令牌名,并根据令牌名读取令牌,并将读取到的令牌发送至SSO代理服务器。SSO代理服务器将该令牌(aliyun_token=xxxx)转发至账号中心服务器进行令牌验证(即,判断该令牌与账号中心服务器中存储的与该用户相对应的令牌是否一致,若一致,则令牌验证成功)。
S403、当接收到SSO代理服务器转发的该用户的用户信息时,将该用户信息存入会话对象。
在本发明实施例中,当账号中心服务器进行令牌验证成功后,会将该用户的用户信息返回至SSO代理服务器,SSO代理服务器则进一步将其转发至SSO客户端,并存入会话对象(session)。session SSO客户端的缓存,与用户终端的一次会话相关联,用户终端的浏览器关闭,session即失效。
进一步地,本发明实施例还可以适用于跨域单点登录,当SSO客户端与账号中心服务器不同域(不在同一父域名下)时,SSO客户端和账号中心不能共享cookie。此时,本发明实施例提供的单点登录方法还可以包括:
S404,当无法读取访问请求中携带的令牌时,将该访问请求通过用户终端定向发送至SSO代理服务器,使得SSO代理服务器将该令牌转化为票据信息。
在本发明实施例中,当SSO客户端与账号中心服务器不同域时,账号中心服务器将携带令牌和令牌名的访问请求通过用户终端定向发送(即,重定向)至SSO客户端后,SSO客户端无法读取cookie中的令牌,因此,仍然判定该用户未登陆。此时,SSO客户端将访问请求重定向到SSO代理服务器,访问请求的参数携带SSO客户端的返回地址,同时访问请求携带存储有令牌(aliyun_token)的cookie。当SSO代理服务器接收到携带令牌的访问请求时,将该令牌转化为票据信息(ticket),并将票据信息通过用户终端定向发送至SSO客户端,具体地,ticket是一次性的票据信息,通常本身不包含数据,而是与账号中心服务器暂存的用户信息关联,一次消费即失效,且有效期很短,过期即失效。SSO代理服务器设置为与账号中心服务器同域,因此能够从cookie中获取令牌,进而转化为ticket。在本发明实施例中,通过URL发送的ticket,不受跨域限制,因此能够实现跨域的单点登录。
本发明实施例中,用于验证token或ticket的后端接口,都要求授权访问,授权基于SSO客户端的可信赖身份凭证。身份凭证由一对key组成,一个公开的key在请求中携带以表明身份,另一个私密的key用于对请求签名,证明身份的真实性。进一步,请求中可以携带超时时间戳,以防止重放。另外,后端接口的请求和响应中会携带token、ticket或用户信息等私密数据,对这些数据的保护有两种可选方案:一是接口通过以安全为目标的HTTP(Hyper Text Transfer Protocol over Secure Socket Laye;简称:HTTPS)协议提供,由协议保证传输链路安全;另一种是把私密数据用请求方持有的私密key加密。
本发明实施例提供的单点登录方法,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本;另外,通过将令牌转化为票据信息,并利用URL进行传输,能够实现跨域单点登录,进一步降低了操作成本。
实施例五
图5为本发明提供的单点登录方法再一个实施例的流程图,该方法的执行主体可以为上述实施例所描述的***中的账号中心服务器。如图5所示,该单点登录方法包括如下步骤:
S501,在用户通过用户终端进行单点登录过程中,接收SSO代理服务器发送的访问请求,该访问请求由用户终端在该用户首次登录***时所产生。
在本发明实施例中,当用户首次登录***时,通过用户终端向SSO客户端发送的访问请求,会被SSO客户端通过用户终端定向发送(即,重新定向)至SSO代理服务器。SSO代理服务器生成令牌名,将令牌名写入用户终端的cookie(token_name=aliyun_token),并将该访问请求定向发送(即,重定向)至账号中心服务器。账号中心服务器则根据访问请求以及由SSO代理服务器所生成的令牌名,对该用户进行登录验证。具体地,还包括如下步骤:
S502,根据访问请求与用户终端进行交互,对用户进行账号验证。
具体地,在本发明实施例中,账号中心服务器可以向用户终端返回登录页面,用户通过用户终端的浏览器向账号中心服务器提交账号和密码,从而实现对该用户的账号验证。
S503,生成令牌,并将该令牌写入用户终端的本地缓存。
当账号中心服务器对该用户进行账号验证成功后,生成令牌,并将其写入用户终端的cookie。具体地,可以通过超文本传输协议(HyperText Transfer Protocol;以下简称:HTTP)响应报文,将令牌写入用户终端的cookie。由账号中心服务器生成的令牌(token)通常为通过加密手段处理过的用户唯一ID等信息,可以反复使用,有效期较长。
在本发明实施例中,令牌(token)存储在cookie中,内容通常包含登录用户的身份信息等,其本身由账号中心服务器加解密,SSO客户端无需理解其内容。令牌(token)有效期受cookie超时限制,由服务端根据安全需求设置,最短可设置为会话级别,浏览器关闭即失效。另外token内容中也可以进一步加入时间戳,防止被非法写入cookie延长有效期。即使token被劫持,由于后端接口需要授权访问,仍然无法非法获取用户信息。
S504,将访问请求通过用户终端定向发送至SSO客户端,该访问请求中携带令牌和令牌名。
然后,账号中心服务器将携带令牌和令牌名的访问请求通过用户终端定向发送至SSO客户端。SSO客户端从访问请求中获取令牌名,并根据令牌名读取令牌,并将读取到的令牌发送至SSO代理服务器。SSO代理服务器将该令牌(aliyun_token=xxxx)转发至账号中心服务器进行令牌验证。
本发明实施例提供的单点登录方法,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本。
实施例六
图6为本发明提供的单点登录方法一个具体实施例的流程图。如图6所示,在本发明实施例所应用的单点登录***中,有一台SSO代理服务器、一台账号中心服务器、两个SSO客户端(SSO客户端1和SSO客户端2)和一个用户终端,该单点登录方法包括如下步骤:
S1,用户通过用户终端的浏览器初次访问某应用(该应用部署于SSO客户端1中);
S2,SSO客户端1判定该用户未登录,则通过用户终端将访问请求重定向至SSO代理服务器,该访问请求的参数携带SSO客户端1的返回地址;
S3,SSO代理服务器生成token名(token_name=aliyun_token),并在用户终端的cookie中写入该token名;
S4,SSO代理服务器通过用户终端将访问请求重定向至账号中心服务器,该访问请求的参数中携带SSO客户端1的返回地址;
SSO代理服务器通过用户终端将访问请求重定向至账号中心服务器,在经过用户终端时,将生成的token名写入用户终端的cookie中,因此,步骤S3和S4实质上可以看做是一步,同时完成。
S5,账号中心服务器向用户终端返回登录页面;
S6,用户终端提交账号、密码;
S7,账号中心服务器进行账号验证成功,账号验证成功后,生成token(aliyun_token=xxxx),并将其写入用户终端的cookie中;
S8,账号中心服务器通过用户终端将访问请求重定向至SSO客户端1的返回地址,访问请求中携带用户终端的cookie;
账号中心服务器通过用户终端将访问请求重定向至SSO客户端,在经过用户终端时,将生成的token(aliyun_token=xxxx)写入用户终端的cookie中,因此,步骤S7和S8实质上可以看做是一步,同时完成。
S9,SSO客户端1先从cookie中获取token名,再根据token名读取token(即,aliyun_token=xxxx),然后将aliyun_token从后端发送到SSO代理服务器;
S10,SSO代理服务器发送aliyun_token到账号中心服务器进行令牌验证;
S11,账号中心服务器进行令牌验证,令牌验证成功后,返回用户信息到SSO代理服务器;
S12,SSO代理服务器返回用户信息到SSO客户端1,SSO客户端1将用户信息存入session,完成登录。
在本发明实施例中,当同一用户再次通过用户终端访问SSO客户端1时,执行如下步骤:
S13,用户终端向SSO客户端1发送访问请求,该访问请求中携带有该用户的用户信息,则,SSO客户端1对用户信息进行验证,由于该用户的用户信息已经存入session,因此,无需再次登录。
在本发明实施例中,当同一用户通过用户终端访问到SSO客户端2时,执行如下步骤:
S14,用户终端向SSO客户端2发送访问请求,该访问请求中携带了cookie中的token名和aliyun_token;
在本发明实施例中,SSO客户端1与SSO客户端2是同一个应用的不同后台服务器,也可以是同一套***的不同应用。
S15,SSO客户端2先从cookie中获取token名,再根据token名读取cookie中的aliyun_token,然后将aliyun_token从后端发送到SSO代理服务器。
S16,SSO代理服务器发送aliyun_token到账号中心验证服务器进行令牌验证;
S17,账号中心服务器进行令牌验证,令牌验证成功后,返回用户信息到SSO代理服务器;
S18,SSO代理服务器返回用户信息到SSO客户端2,SSO客户端2将用户信息存入session,完成登录。
本发明实施例提供的单点登录方法,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本。
实施例七
图7为本发明提供的单点登录装置一个实施例的结构示意图,可用于执行如图2和图3所示的方法步骤。如图7所示,该装置可以包括:令牌名生成模块71和令牌名写入模块72。
其中,令牌名生成模块71用于在用户通过用户终端进行单点登录过程中,生成令牌名,该令牌名与账号中心服务器唯一对应;令牌名写入模块72用于将上述令牌名写入用户终端的浏览器缓存,使得目标应用所部署的SSO客户端根据该令牌名发起登录验证。
在本发明实施例中,当用户首次登录***时,首先通过用户终端向SSO客户端发送访问请求,SSO客户端将该访问请求发送至SSO代理服务器,令牌名生成模块71则生成与账号中心服务器唯一对应的令牌名。令牌名写入模块72将该令牌名写入用户终端的浏览器缓存(cookie),并将该访问请求转发至账号中心服务器,使得目标应用(即,用于欲访问的应用)所部署的SSO客户端根据该令牌名发起针对该用户的登录验证。
进一步地,令牌名生成模块71还可以用于当接收到用户终端的访问请求时,生成令牌名,并将访问请求通过用户终端定向发送至账号中心服务器,该访问请求由用户终端在该用户首次登录***时所产生。
更进一步地,本发明实施例提供的单点登录装置,还可以包括:第一转发模块73。该第一转发模块73用于将SSO客户端根据令牌名读取到的令牌转发至账号中心服务器进行令牌验证。该装置还可以包括:第二转发模块74。该第二转发模块74用于将账号中心服务器进行令牌验证成功后返回的该用户的用户信息转发至SSO客户端。
再进一步地,本发明实施例提供的单点登录装置,还可以包括:跨域处理模块75。该跨域处理模块75用于当接收到携带令牌的访问请求时,将令牌转化为票据信息,并将携带票据信息的访问请求通过用户终端定向发送至SSO客户端;当接收到票据信息时,根据票据信息,获取令牌,并将令牌发送至账号中心服务器进行令牌验证。具体地,该跨域处理模块75可以用于通过用户终端的URL,将票据信息定向发送至SSO客户端。
本发明实施例中各模块的详细功能参见上述图2和图3所示实施例,在此不再赘述。
本发明实施例提供的单点登录装置,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本;另外,通过将令牌转化为票据信息,并利用URL进行传输,能够实现跨域单点登录,进一步降低了操作成本。
实施例八
图8为本发明提供的单点登录装置另一个实施例的结构示意图,可用于执行如图4所示的方法步骤。如图8所示,该装置可以包括:第一接收模块81和第一验证模块82。
其中,第一接收模块81用于在用户通过用户终端进行单点登录过程中,接收用户终端的访问请求;第一验证模块82用于根据访问请求,通过SSO代理服务器生成的令牌名,向账号中心服务器发起登录验证,令牌名与账号中心服务器唯一对应。
在本发明实施例中,当第一接收模块81接收到用户终端发送的访问请求后,第一验证模块82根据访问请求,通过SSO代理服务器生成的令牌名,向账号中心服务器发起登录验证。
具体地,第一验证模块82还可以用于当访问请求中未携带有令牌和/或令牌名时,将访问请求通过所述用户终端定向发送至SSO代理服务器,使得SSO代理服务器生成令牌名、并将访问请求通过用户终端定向发送至账号中心服务器。
进一步地,第一验证模块82还可以用于当访问请求中携带有令牌和令牌名时,从访问请求中获取令牌名,并根据令牌名读取令牌,该令牌由账号中心服务器在对该用户进行账号验证成功后所生成,该令牌名由SSO代理服务器所生成、并与账号中心服务器唯一对应;将读取到的令牌通过SSO代理服务器转发至账号中心服务器,以进行令牌验证。
更进一步地,本发明实施例提供的单点登录装置,还可以包括:信息存储模块83。信息存储模块83可以用于当接收到SSO代理服务器转发的用户的用户信息时,将该用户信息存入会话对象。该装置还可以包括:发送模块84。该发送模块84可以用于当无法读取访问请求中携带的令牌时,将访问请求通过用户终端定向发送至SSO代理服务器,使得SSO代理服务器将令牌转化为票据信息。
本发明实施例中各模块的详细功能参见上述图4所示实施例,在此不再赘述。
本发明实施例提供的单点登录装置,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本;另外,通过将令牌转化为票据信息,并利用URL进行传输,能够实现跨域单点登录,进一步降低了操作成本。
实施例九
图9为本发明提供的单点登录装置又一个实施例的结构示意图,可用于执行如图5所示的方法步骤。如图9所示,该装置可以包括:第二接收模块91和第二验证模块92。
其中,第二接收模块91用于在用户通过用户终端进行单点登录过程中,接收SSO代理服务器发送的访问请求,该访问请求由用户终端在该用户首次登录***时所产生;第二验证模块92用于根据该访问请求以及SSO代理服务器生成的令牌名,对该用户进行登录验证。
在本发明实施例中,当用户首次登录***时,通过用户终端向SSO客户端发送访问请求,第二接收模块91接收到该访问请求后,第二验证模块92根据该访问请求以及SSO代理服务器生成的令牌名,对该用户进行登录验证。具体地,第二验证模块92可以通过用户终端将访问请求定向发送(即,重新定向)至SSO代理服务器。SSO代理服务器生成令牌名,将令牌名写入用户终端的cookie(token_name=aliyun_token),并将该访问请求定向发送(即,重定向)至账号中心服务器。账号中心服务器则根据访问请求以及由SSO代理服务器所生成的令牌名,对该用户进行登录验证。
进一步地,第二验证模块92还可以用于根据访问请求与用户终端进行交互,对用户进行账号验证;生成令牌,并将令牌写入用户终端的本地缓存;将访问请求通过用户终端定向发送至SSO客户端,该访问请求中携带上述令牌和令牌名。
更进一步地,第二验证模块92还可以用于通过HTTP响应报文,将令牌写入所述用户终端的本地缓存。
本发明实施例中各模块的详细功能参见上述图5所示实施例,在此不再赘述。
本发明实施例提供的单点登录装置,在单点登录过程中,通过SSO代理服务器生成与账号中心服务器唯一对应的令牌名,账号中心服务器将验证成功后产生的令牌存入到与之唯一对应的令牌名下,使得SSO客户端能够根据SSO代理服务器生成的令牌名轻易读取令牌,从而屏蔽掉各种账号中心服务器的差异,使得SSO客户端能够与任意异构账号中心服务器相适配,在更换***的账号中心服务器时,无需对SSO客户端进行改造,降低了操作成本。
实施例十
以上描述了各单点登录装置的内部功能和结构,该装置可实现为一种电子设备。图10为本发明提供的电子设备一个实施例的结构示意图。如图10所示,该电子设备包括存储器11和处理器12。
存储器11,用于存储程序。除上述程序之外,存储器11还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器11可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器12,与存储器11耦合,执行存储器11所存储的程序,以用于:
在用户通过用户终端进行单点登录过程中,生成令牌名,该令牌名与账号中心服务器唯一对应;将令牌名写入用户终端的浏览器缓存,使得目标应用所部署的SSO客户端根据该令牌名发起登录验证。
进一步,如图1所示,电子设备还可以包括:通信组件13、电源组件14、音频组件15、显示器16等其它组件。图10中仅示意性给出部分组件,并不意味着电子设备只包括图10所示组件。
通信组件13被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件13经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件13还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件14,为电子设备的各种组件提供电力。电源组件14可以包括电源管理***,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件15被配置为输出和/或输入音频信号。例如,音频组件15包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器11或经由通信组件13发送。在一些实施例中,音频组件15还包括一个扬声器,用于输出音频信号。
显示器16包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
实施例十一
以上描述了各单点登录装置的内部功能和结构,该装置可实现为一种电子设备。图11为本发明提供的电子设备另一个实施例的结构示意图。如图11所示,该电子设备包括存储器21和处理器22。
存储器21,用于存储程序。除上述程序之外,存储器21还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器21可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器22,与存储器21耦合,执行存储器21所存储的程序,以用于:
在用户通过用户终端进行单点登录过程中,接收用户终端的访问请求;根据该访问请求以及由SSO代理服务器所生成的令牌名,向账号中心服务器发起登录验证,该令牌名与账号中心服务器唯一对应。
进一步,如图11所示,电子设备还可以包括:通信组件23、电源组件24、音频组件25、显示器26等其它组件。图11中仅示意性给出部分组件,并不意味着电子设备只包括图11所示组件。
通信组件23被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件23经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件23还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件24,为电子设备的各种组件提供电力。电源组件24可以包括电源管理***,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件25被配置为输出和/或输入音频信号。例如,音频组件25包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器21或经由通信组件23发送。在一些实施例中,音频组件25还包括一个扬声器,用于输出音频信号。
显示器26包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
实施例十二
以上描述了各单点登录装置的内部功能和结构,该装置可实现为一种电子设备。图12为本发明提供的电子设备实施例的结构示意图。如图12所示,该电子设备包括存储器31和处理器32。
存储器31,用于存储程序。除上述程序之外,存储器31还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器31可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器32,与存储器31耦合,执行存储器31所存储的程序,以用于:
在用户通过用户终端进行单点登录过程中,接收SSO代理服务器发送的访问请求,该访问请求由用户终端在该用户首次登录***时所产生;根据该访问请求以及由SSO代理服务器所生成的令牌名,对该用户进行登录验证。
进一步,如图12所示,电子设备还可以包括:通信组件33、电源组件34、音频组件35、显示器36等其它组件。图12中仅示意性给出部分组件,并不意味着电子设备只包括图12所示组件。
通信组件33被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件33经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件33还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件34,为电子设备的各种组件提供电力。电源组件34可以包括电源管理***,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件35被配置为输出和/或输入音频信号。例如,音频组件35包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器31或经由通信组件33发送。在一些实施例中,音频组件35还包括一个扬声器,用于输出音频信号。
显示器36包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (24)

1.一种单点登录***,其特征在于,包括:用户终端、单点登录客户端、账号中心服务器和单点登录代理服务器,
所述单点登录代理服务器用于,在用户通过所述用户终端进行单点登录过程中,生成令牌名,并将所述令牌名写入所述用户终端的浏览器缓存,所述令牌名与所述账号中心服务器唯一对应;
所述单点登录客户端用于,在接收到所述用户终端的访问请求时,根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,向所述账号中心服务器发起登录验证;
所述账号中心服务器用于,在接收到所述单点登录代理服务器发送的访问请求时,根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证,所述访问请求由所述用户终端在所述用户首次登录***时所产生。
2.根据权利要求1所述的单点登录***,其特征在于,
所述单点登录客户端还用于,当所述访问请求中未携带有令牌和/或令牌名时,将所述访问请求通过所述用户终端定向发送至所述单点登录代理服务器;
所述单点登录代理服务器还用于,当接收到所述用户终端的访问请求时,生成所述令牌名,并将所述访问请求通过所述用户终端定向发送至所述账号中心服务器;
所述账号中心服务器还用于,根据所述访问请求与所述用户终端进行交互,对所述用户进行账号验证,生成令牌,并将所述令牌写入所述用户终端的本地缓存;以及,将所述访问请求通过所述用户终端定向发送至所述单点登录客户端,所述访问请求中携带所述令牌和所述令牌名。
3.根据权利要求2所述的单点登录***,其特征在于,
所述单点登录客户端还用于,当所述访问请求中携带有令牌和令牌名时,从所述访问请求中获取所述令牌名,并根据所述令牌名读取所述令牌;以及,将读取到的所述令牌通过所述单点登录代理服务器转发至所述账号中心服务器,以进行令牌验证。
4.根据权利要求3所述的单点登录***,其特征在于,
所述单点登录代理服务器还用于,将所述账号中心服务器进行令牌验证成功后返回的所述用户的用户信息转发至所述单点登录客户端;
所述单点登录客户端还用于,将接收到的所述用户信息存入会话对象。
5.一种单点登录方法,其特征在于,包括:
在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;
将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。
6.根据权利要求5所述的单点登录方法,其特征在于,所述在用户通过用户终端进行单点登录过程中,生成令牌名,包括:
当接收到所述用户终端的访问请求时,生成所述令牌名,并将所述访问请求通过所述用户终端定向发送至所述账号中心服务器,所述访问请求由所述用户终端在所述用户首次登录***时所产生。
7.根据权利要求5所述的单点登录方法,其特征在于,还包括:
将所述单点登录客户端根据所述令牌名读取到的令牌转发至所述账号中心服务器进行令牌验证。
8.根据权利要求5所述的单点登录方法,其特征在于,还包括:
将所述账号中心服务器进行令牌验证成功后返回的所述用户的用户信息转发至所述单点登录客户端。
9.根据权利要求5至8中任一权利要求所述的单点登录方法,其特征在于,还包括:
当接收到携带令牌的访问请求时,将所述令牌转化为票据信息,并将携带所述票据信息的访问请求通过所述用户终端定向发送至所述单点登录客户端;
当接收到所述票据信息时,根据所述票据信息,获取所述令牌,并将所述令牌发送至所述账号中心服务器进行令牌验证。
10.根据权利要求9所述的单点登录方法,其特征在于,所述将携带所述票据信息的访问请求通过所述用户终端定向发送至所述单点登录客户端,包括:
通过所述用户终端的统一资源定位符,将所述票据信息定向发送至所述单点登录客户端。
11.一种单点登录方法,其特征在于,包括:
在用户通过用户终端进行单点登录过程中,接收所述用户终端的访问请求;
根据所述访问请求以及由单点登录代理服务器所生成的令牌名,向账号中心服务器发起登录验证,所述令牌名与所述账号中心服务器唯一对应。
12.根据权利要求11所述的单点登录方法,其特征在于,所述根据所述访问请求以及由单点登录代理服务器所生成的令牌名,向账号中心服务器发起登录验证,包括:
当所述访问请求中未携带有令牌和/或令牌名时,将所述访问请求通过所述用户终端定向发送至所述单点登录代理服务器,使得所述单点登录代理服务器生成令牌名、并将所述访问请求通过所述用户终端定向发送至所述账号中心服务器。
13.根据权利要求11所述的单点登录方法,其特征在于,所述根据所述访问请求以及由单点登录代理服务器所生成的令牌名,向账号中心服务器发起登录验证,包括:
当所述访问请求中携带有令牌和令牌名时,从所述访问请求中获取所述令牌名,并根据所述令牌名读取所述令牌,所述令牌由所述账号中心服务器在对所述用户进行账号验证成功后所生成,所述令牌名由所述单点登录代理服务器所生成、并与账号中心服务器唯一对应;
将读取到的所述令牌通过单点登录代理服务器转发至所述账号中心服务器,以进行令牌验证。
14.根据权利要求11所述的单点登录方法,其特征在于,还包括:
当接收到所述单点登录代理服务器转发的所述用户的用户信息时,将所述用户信息存入会话对象。
15.根据权利要求11至14中任一权利要求所述的单点登录方法,其特征在于,还包括:
当无法读取所述访问请求中携带的令牌时,将所述访问请求通过所述用户终端定向发送至所述单点登录代理服务器,使得所述单点登录代理服务器将所述令牌转化为票据信息。
16.一种单点登录方法,其特征在于,包括:
在用户通过用户终端进行单点登录过程中,接收单点登录代理服务器发送的访问请求,所述访问请求由所述用户终端在所述用户首次登录***时所产生;
根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证。
17.根据权利要求16所述的单点登录方法,其特征在于,所述根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证,包括:
根据所述访问请求与所述用户终端进行交互,对所述用户进行账号验证;
生成令牌,并将所述令牌写入所述用户终端的本地缓存;
将所述访问请求通过所述用户终端定向发送至所述单点登录客户端,所述访问请求中携带所述令牌和所述令牌名。
18.根据权利要求17所述的单点登录方法,其特征在于,所述将所述令牌写入所述用户终端的本地缓存,包括:
通过超文本传输协议响应报文,将所述令牌写入所述用户终端的本地缓存。
19.一种单点登录装置,其特征在于,包括:
令牌名生成模块,用于在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;
令牌名写入模块,用于将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。
20.一种单点登录装置,其特征在于,包括:
第一接收模块,用于在用户通过用户终端进行单点登录过程中,接收所述用户终端的访问请求;
第一验证模块,用于根据所述访问请求,通过单点登录代理服务器生成的令牌名,向账号中心服务器发起登录验证,所述令牌名与所述账号中心服务器唯一对应。
21.一种单点登录装置,其特征在于,包括:
第二接收模块,用于在用户通过用户终端进行单点登录过程中,接收单点登录代理服务器发送的访问请求,所述访问请求由所述用户终端在所述用户首次登录***时所产生;
第二验证模块,用于根据所述访问请求以及所述单点登录代理服务器生成的令牌名,对所述用户进行登录验证。
22.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以用于:
在用户通过用户终端进行单点登录过程中,生成令牌名,所述令牌名与账号中心服务器唯一对应;
将所述令牌名写入所述用户终端的浏览器缓存,使得目标应用所部署的单点登录客户端根据所述令牌名发起登录验证。
23.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以用于:
在用户通过用户终端进行单点登录过程中,接收所述用户终端的访问请求;
根据所述访问请求以及由单点登录代理服务器所生成的令牌名,向账号中心服务器发起登录验证,所述令牌名与所述账号中心服务器唯一对应。
24.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以用于:
在用户通过用户终端进行单点登录过程中,接收单点登录代理服务器发送的访问请求,所述访问请求由所述用户终端在所述用户首次登录***时所产生;
根据所述访问请求以及由所述单点登录代理服务器所生成的令牌名,对所述用户进行登录验证。
CN201810215484.XA 2018-03-15 2018-03-15 单点登录方法、装置和***以及电子设备 Active CN110278179B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810215484.XA CN110278179B (zh) 2018-03-15 2018-03-15 单点登录方法、装置和***以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810215484.XA CN110278179B (zh) 2018-03-15 2018-03-15 单点登录方法、装置和***以及电子设备

Publications (2)

Publication Number Publication Date
CN110278179A true CN110278179A (zh) 2019-09-24
CN110278179B CN110278179B (zh) 2021-08-10

Family

ID=67958103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810215484.XA Active CN110278179B (zh) 2018-03-15 2018-03-15 单点登录方法、装置和***以及电子设备

Country Status (1)

Country Link
CN (1) CN110278179B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062023A (zh) * 2019-11-26 2020-04-24 深圳市思迪信息技术股份有限公司 多应用***实现单点登录的方法及装置
CN111107063A (zh) * 2019-12-04 2020-05-05 海南新软软件有限公司 一种登录方法及装置
CN111490974A (zh) * 2020-03-20 2020-08-04 支付宝(杭州)信息技术有限公司 一种跨端注册方法、客户端及注册服务器
CN111736830A (zh) * 2020-06-17 2020-10-02 浙江申跃信息科技有限公司 一种基于符号路径解析的页面集成方法
CN112487390A (zh) * 2020-11-27 2021-03-12 网宿科技股份有限公司 一种微服务切换方法及***
CN112929378A (zh) * 2021-02-19 2021-06-08 广东云智安信科技有限公司 跨域单点登入服务保存及获取方法、***、设备及介质
CN113347163A (zh) * 2021-05-20 2021-09-03 远景智能国际私人投资有限公司 单点登录方法、装置、设备及介质
CN114650142A (zh) * 2022-02-25 2022-06-21 深圳市梦网科技发展有限公司 5g消息身份认证方法、***及计算机可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060041933A1 (en) * 2004-08-23 2006-02-23 International Business Machines Corporation Single sign-on (SSO) for non-SSO-compliant applications
CN101277193A (zh) * 2008-05-05 2008-10-01 北京航空航天大学 基于面向服务架构认证服务代理的信息门户单点登录和访问***
CN101626369A (zh) * 2008-07-11 2010-01-13 ***通信集团公司 一种单点登录方法、设备及***
CN101645021A (zh) * 2009-06-18 2010-02-10 广东金宇恒科技有限公司 Java应用服务器下多***的单点登录整合方法
CN104378376A (zh) * 2014-11-18 2015-02-25 深圳中兴网信科技有限公司 基于soa的单点登录方法、认证服务器和浏览器
CN105592035A (zh) * 2015-04-03 2016-05-18 ***股份有限公司 一种用于多个应用***的单点登录方法
CN105897743A (zh) * 2016-05-26 2016-08-24 努比亚技术有限公司 一种跨域单点登录的方法及服务器
CN105959267A (zh) * 2016-04-25 2016-09-21 北京九州云腾科技有限公司 单点登录技术中的主令牌获取方法、单点登录方法及***
CN106131047A (zh) * 2016-08-12 2016-11-16 乐视控股(北京)有限公司 账号登录方法及相关设备、账号登录***
CN106789930A (zh) * 2016-11-28 2017-05-31 北京铭铭鑫软件有限公司 一种Linux操作***的单点登录方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060041933A1 (en) * 2004-08-23 2006-02-23 International Business Machines Corporation Single sign-on (SSO) for non-SSO-compliant applications
CN101277193A (zh) * 2008-05-05 2008-10-01 北京航空航天大学 基于面向服务架构认证服务代理的信息门户单点登录和访问***
CN101626369A (zh) * 2008-07-11 2010-01-13 ***通信集团公司 一种单点登录方法、设备及***
CN101645021A (zh) * 2009-06-18 2010-02-10 广东金宇恒科技有限公司 Java应用服务器下多***的单点登录整合方法
CN104378376A (zh) * 2014-11-18 2015-02-25 深圳中兴网信科技有限公司 基于soa的单点登录方法、认证服务器和浏览器
CN105592035A (zh) * 2015-04-03 2016-05-18 ***股份有限公司 一种用于多个应用***的单点登录方法
CN105959267A (zh) * 2016-04-25 2016-09-21 北京九州云腾科技有限公司 单点登录技术中的主令牌获取方法、单点登录方法及***
CN105897743A (zh) * 2016-05-26 2016-08-24 努比亚技术有限公司 一种跨域单点登录的方法及服务器
CN106131047A (zh) * 2016-08-12 2016-11-16 乐视控股(北京)有限公司 账号登录方法及相关设备、账号登录***
CN106789930A (zh) * 2016-11-28 2017-05-31 北京铭铭鑫软件有限公司 一种Linux操作***的单点登录方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062023A (zh) * 2019-11-26 2020-04-24 深圳市思迪信息技术股份有限公司 多应用***实现单点登录的方法及装置
CN111062023B (zh) * 2019-11-26 2024-04-30 深圳市思迪信息技术股份有限公司 多应用***实现单点登录的方法及装置
CN111107063A (zh) * 2019-12-04 2020-05-05 海南新软软件有限公司 一种登录方法及装置
CN111107063B (zh) * 2019-12-04 2022-04-22 海南新软软件有限公司 一种登录方法及装置
CN111490974A (zh) * 2020-03-20 2020-08-04 支付宝(杭州)信息技术有限公司 一种跨端注册方法、客户端及注册服务器
CN111490974B (zh) * 2020-03-20 2022-03-29 支付宝(杭州)信息技术有限公司 一种跨端注册方法、客户端及注册服务器
CN111736830A (zh) * 2020-06-17 2020-10-02 浙江申跃信息科技有限公司 一种基于符号路径解析的页面集成方法
CN112487390A (zh) * 2020-11-27 2021-03-12 网宿科技股份有限公司 一种微服务切换方法及***
CN112929378A (zh) * 2021-02-19 2021-06-08 广东云智安信科技有限公司 跨域单点登入服务保存及获取方法、***、设备及介质
CN113347163A (zh) * 2021-05-20 2021-09-03 远景智能国际私人投资有限公司 单点登录方法、装置、设备及介质
CN114650142A (zh) * 2022-02-25 2022-06-21 深圳市梦网科技发展有限公司 5g消息身份认证方法、***及计算机可读存储介质
CN114650142B (zh) * 2022-02-25 2024-01-30 深圳市梦网科技发展有限公司 5g消息身份认证方法、***及计算机可读存储介质

Also Published As

Publication number Publication date
CN110278179B (zh) 2021-08-10

Similar Documents

Publication Publication Date Title
CN110278179A (zh) 单点登录方法、装置和***以及电子设备
US11283797B2 (en) Authenticating a user device associated with a user to communicate via a wireless network in a secure web-based environment
CN108901022B (zh) 一种微服务统一鉴权方法及网关
US10616217B2 (en) Website authentication using an internet-connected device
US11297498B2 (en) Identity authentication
CN105007280B (zh) 一种应用登录方法和装置
CN105229987B (zh) 主动联合的移动认证
CN103503408B (zh) 用于提供访问凭证的***和方法
US9608814B2 (en) System and method for centralized key distribution
CN109165500B (zh) 一种基于跨域技术的单点登录认证***及方法
US20050120214A1 (en) Systems and methods for enhancing security of communication over a public network
CN101809585A (zh) 密码管理
CN105144111A (zh) 用于不同web服务架构的中继服务
CN104054321A (zh) 针对云服务的安全管理
CN109768965A (zh) 一种服务器的登录方法、设备及存储装置
US20210014064A1 (en) Method and apparatus for managing user authentication in a blockchain network
CN107241339A (zh) 身份验证方法、装置和存储介质
CN107464121A (zh) 电子账户的挂失、解挂、业务管理方法、装置及设备
HUE026214T2 (en) Qualified electronic signature system, associated process and mobile phone device for qualified electronic signature
Sabadello et al. Introduction to did auth
CN110493184A (zh) 在客户端中登录页面的处理方法、装置、电子装置
JP4897503B2 (ja) アカウントリンキングシステム、アカウントリンキング方法、連携サーバ装置
CN106209816B (zh) 一种网络摄像机登录方法及***
CN109218389A (zh) 处理业务请求的方法、装置和存储介质以及电子设备
JP5495194B2 (ja) アカウント発行システム、アカウントサーバ、サービスサーバおよびアカウント発行方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant