CN118118227A - 统一身份认证方法及装置 - Google Patents
统一身份认证方法及装置 Download PDFInfo
- Publication number
- CN118118227A CN118118227A CN202410138932.6A CN202410138932A CN118118227A CN 118118227 A CN118118227 A CN 118118227A CN 202410138932 A CN202410138932 A CN 202410138932A CN 118118227 A CN118118227 A CN 118118227A
- Authority
- CN
- China
- Prior art keywords
- client
- login
- information
- user
- authentication
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 110
- 238000013475 authorization Methods 0.000 claims description 153
- 230000008569 process Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 abstract description 12
- 230000000875 corresponding effect Effects 0.000 description 35
- 238000012795 verification Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 16
- 239000003795 chemical substances by application Substances 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 9
- 206010002091 Anaesthesia Diseases 0.000 description 8
- 230000037005 anaesthesia Effects 0.000 description 8
- 230000001276 controlling effect Effects 0.000 description 7
- 230000010365 information processing Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 210000004258 portal system Anatomy 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 210000000554 iris Anatomy 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network 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)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
本公开涉及一种统一身份认证方法及装置,应用于认证服务器,认证服务器用于处理用户的统一身份认证,所述方法包括:接收来自浏览器的认证请求,认证请求中携带有认证信息,认证信息用于指示用户的身份;对认证信息进行校验,在认证信息正确的情况下确定通过校验;根据认证信息识别用户并生成登录标识和唯一标识,登录标识用于指示用户的登录状态,唯一标识用于指示用户本次登录期间授权的客户端;将登录标识和唯一标识进行关联,并将登录标识返回浏览器,以使浏览器在接收到登录标识后向用户发出登录成功提醒。本公开实施例能够利用登录标识查找出当前授权访问的客户端,可以让当前登录用户强制登出客户端,有效的保护了系统数据和用户隐私。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种统一身份认证方法及装置。
背景技术
随着电子商务、在线娱乐、社交媒体和其他一系列网络服务的发展,用户需要在多个网站进行注册和登录,每次都需要记住各自的用户名和密码,这无疑给用户带来了很大的困扰。同样,对于企业来说,管理用户在企业内部多个系统的身份验证也是一个重大挑战。在这种背景下,统一身份认证的理念应运而生。与以往认证方法的集中化和分散化管理模式相比,统一身份认证技术提供了一种以用户为中心的全新管理模式。这种技术将用户的所有身份信息集中在一个服务中,从而使管理员能够更方便、更安全地管理用户访问企业网络的权限。同时,用户只需要记住一组用户名和密码,所以使用起来更加方便。统一身份认证的技术包含了身份识别技术、密码技术、认证协议、安全传输协议等多种技术。
统一身份认证可以让用户授权给第三方应用访问用户存储在某个特定服务提供者的信息,而无需将用户名和密码提供给第三方应用或分享用户数据的所有内容。但是如果第三方应用不安全,信息可能会暴露,且无法退出第三方应用的登录状态。因此,如何通过统一身份认证使已登录的第三方应用登出成为当前亟待解决的问题。
发明内容
有鉴于此,本公开提出了一种统一身份认证方法及装置,可以利用登录标识查找出当前授权访问的客户端,可以通过统一身份认证或者客户端任何一端让当前登录用户强制登出,有效的保护了系统数据和用户隐私。
根据本公开的一方面,提供了一种统一身份认证方法,应用于认证服务器,所述认证服务器用于处理用户的统一身份认证,所述方法包括:接收来自浏览器的认证请求,所述认证请求中携带有认证信息,所述认证信息用于指示用户的身份;对所述认证信息进行校验,在所述认证信息正确的情况下确定通过校验;根据所述认证信息识别用户并生成登录标识和唯一标识,所述登录标识用于指示用户的登录状态,所述唯一标识用于指示用户本次登录期间授权的客户端;将所述登录标识和所述唯一标识进行关联,并将所述登录标识返回所述浏览器,以使所述浏览器在接收到所述登录标识后向用户发出登录成功提醒。
在一种可能的实现方式中,所述方法还包括:接收来自客户端的授权请求,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端;对所述客户端信息和所述登录标识进行校验,在所述登录标识和所述客户端信息合法的情况下确定通过校验,并根据所述登录标识生成授权码,所述授权码用于指示用户授予所述客户端的权限;基于所述登录标识获取所述唯一标识,将所述授权码与所述唯一标识进行关联,并将所述与唯一标识关联的授权码返回所述客户端。
在一种可能的实现方式中,所述方法还包括:接收来自所述客户端的令牌请求,所述令牌请求中携带有客户端信息和授权码;对所述客户端信息和所述授权码进行校验,在所述客户端信息和所述授权码合法的情况下确定通过校验,并根据所述授权码生成访问令牌,所述访问令牌用于获取用户信息以完成客户端的登录;基于所述授权码获取所述唯一标识,将所述访问令牌与所述唯一标识进行关联,并将所述与唯一标识关联的访问令牌返回所述客户端。
在一种可能的实现方式中,所述方法还包括:接收来自所述客户端的登出请求,所述登出请求中携带有客户端信息和访问令牌;对所述客户端信息和所述访问令牌进行校验,在所述客户端信息合法且所述访问令牌有效的情况下确定通过校验;基于所述访问令牌获取所述唯一标识,查找与所述唯一标识关联的登录标识和所有访问令牌,并将所述登录标识设置为失效;通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述客户端。
在一种可能的实现方式中,所述方法还包括:接收来自所述浏览器的登出请求,所述登出请求中携带有登录标识;对所述登录标识进行校验,在所述登录标识正确的情况下确定通过校验;基于所述登录标识获取所述唯一标识,查找与所述唯一标识关联的所有访问令牌,并将所述登录标识设置为失效;通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述浏览器,以使所述浏览器在接收到所述登出成功的信息后向用户发出登出成功提醒。
根据本公开的一方面,提供了一种统一身份认证方法,应用于客户端,所述方法包括:将授权请求发送至认证服务器,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端,所述登录标识用于指示用户的登录状态;接收所述认证服务器返回的与唯一标识关联的授权码,所述唯一标识用于指示用户本次登录期间授权的客户端,所述授权码用于指示用户授予所述客户端的权限。
在一种可能的实现方式中,所述方法还包括:将令牌请求发送至所述认证服务器,所述令牌请求中携带有客户端信息和授权码;接收所述认证服务器返回的与唯一标识关联的访问令牌,所述访问令牌用于获取用户信息以完成客户端的登录。
在一种可能的实现方式中,所述方法还包括:将登出请求发送至所述认证服务器,所述登出请求中携带有客户端信息和访问令牌;使用登出接口退出当前登录状态;接收所述认证服务器返回的登出成功的信息。
根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
在本公开实施例中,认证服务器在接收到浏览器的认证请求并完成校验后,识别用户并进行登录,生成登录标识和唯一标识,在接收到来自客户端的授权请求和令牌请求后完成对两个请求中携带的信息进行校验通过后为客户端返回授权码和访问令牌,将登录标识、授权码和访问令牌与唯一标识进行关联,在认证服务器接收到登出请求的时候,即可以通过唯一标识查找到关联的所有访问令牌并找到对应的客户端,使其退出登录。即通过本公开实施例的方法可以利用登录标识查找出当前授权访问的客户端,可以通过统一身份认证或者客户端任何一端让当前登录用户强制登出,有效的保护了系统数据和用户隐私。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1示出根据本公开实施例的统一身份认证方法的登录过程中认证服务器的流程图。
图2示出根据本公开实施例的统一身份认证方法的登录过程的示意图。
图3示出根据本公开实施例的统一身份认证方法的获取授权码过程的示意图。
图4示出根据本公开实施例的统一身份认证方法的获取授权码过程的示意图。
图5示出根据本公开实施例的统一身份认证方法的获取访问令牌过程的示意图。
图6示出根据本公开实施例的统一身份认证方法的登出过程的示意图。
图7示出根据本公开实施例的统一身份认证方法的登出过程的示意图。
图8示出根据本公开实施例的统一身份认证装置的结构示意图。
图9示出根据本公开实施例的一种电子设备1900的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
统一身份认证可以通过多种技术实现,如基于标记(Token)的身份认证、基于票据(Ticket)的认证、基于OAuth2(一种开放授权协议)、OpenID(一种身份识别框架)等开放标注的认证等。其中,基于OAuth2和OpenID等开放标准特别受到欢迎,因为它们提供了一种跨网站、跨系统的身份验证解决方案。
OAuth2协议是一个开放的标准,让用户可以授权第三方应用访问他们存储在某个特定服务提供者的信息,而无需将用户名和密码提供给第三方应用或分享他们数据的所有内容。但是如果客户端不安全,如公共计算机或没有加密的网路,授权码和访问令牌(Access Token)可能会被暴露。当发生安全问题时,OAuth2协议并没有提供相应方案进行补救。这个第三方应用,可以是一个网页应用,一个浏览器插件,一个移动应用。
为了解决上述技术问题,本公开实施例提出了一种统一身份认证方法,可以利用登录标识查找出当前授权访问的客户端,可以通过统一身份认证服务端或者客户端任何一端让当前登录用户强制登出,有效的保护了系统数据和用户隐私。
统一身份认证方法可以在客户端使用多个系统时,只需要一次登录即可使用所有系统,所述多个系统,可以属于某一个企业(或机构),也可以分别属于不同的企业(或机构)。统一身份认证方法,可以看作五个角色间的信息传输,即客户端(Client)、用户代理(User Agent)、资源所有者(Resource Owner)、认证服务器(Authorization Server)和资源服务器(Resource Server)。
客户端是服务的接入方,其请求访问资源所有者(比如一个用户)存储在资源服务器上的受保护资源,但是它需要得到认证服务器(一般是资源所有者使用的服务)的许可。本公开实施例中对客户端的具体形式不作限定,符合客户端的要求即可。用户代理是用户参与互联网的工具,一般可以理解为浏览器。资源所有者即受保护资源所属的实体,比如资源的持有人等,下文中的用户即可作为资源所有者。认证服务器用于验证资源所有者的身份,并依据资源所有者的许可对客户端下发令牌。资源服务器为托管资源的服务器,能够接收和响应持有令牌的资源访问请求,可以与认证服务器是同一台服务器,也可以是不同的服务器。
图1示出根据本公开实施例的统一身份认证方法的登录过程中认证服务器的流程图。如图1所示,在用户进行统一身份认证系统的登录时,认证服务器的步骤包括:
S11,接收来自浏览器的认证请求,所述认证请求中携带有认证信息。
其中,所述认证信息用于指示用户的身份。
S12,对所述认证信息进行校验,在所述认证信息正确的情况下确定通过校验。
S13,根据所述认证信息识别用户并生成登录标识和唯一标识。
其中,所述登录标识用于指示用户的登录状态,所述唯一标识用于指示用户本次登录期间授权的客户端。
S14,将所述登录标识和所述唯一标识进行关联,并将所述登录标识返回所述浏览器。
使所述浏览器在接收到所述登录标识后向用户发出登录成功提醒。
在步骤S11中,认证服务器接收到认证请求,认证请求可以携带认证信息,所述认证信息可以用于指示用户的身份,认证信息可以是不同的形式,根据统一身份认证系统采用的登录系统的认证方式来确定认证信息的形式,例如,登录系统采用基于口令的认证方式,则认证信息可以是用户输入的用户名和密码;登录系统采用基于智能卡的认证方式,则认证信息可以是智能卡中携带的与身份相关的数据信息;登录系统采用基于生物特征的认证方式,则认证信息可以是用户的生物学特征,例如指纹、虹膜等;登录阶段的认证方法和认证信息不限于上述提及的方式,根据实际需要,只需可以用于准确的识别用户身份的信息即可用于作为本公开实施例中的认证信息。
在步骤S12中,对上述接收到的认证信息进行校验,基于认证信息的不同形式,校验的方式也可以不同,例如,认证信息为用户的用户名和密码的情况下,则系统可以将用户名和密码与系统中存储的已有的合法的用户信息进行匹配,当匹配成功的情况下,则认为所述认证信息正确,通过校验;认证信息为智能卡中携带的与身份相关的数据信息的情况下,系统可以通过读卡器识别智能卡中携带的数据信息是否真实有效,在数据真实有效的情况下,即可认为所述认证信息正确,通过校验;认证信息为用户的生物学特征的情况下,系统可以通过图像处理或图像识别等方式确定用户的身份,在生物特征对应的用户为系统中存储的合法用户的情况下,认为所述认证信息正确,通过校验。与S11相似,登录阶段的认证信息的校验方式不限于上述提及的方式,根据实际需要,只需可以对认证信息进行校验得到有效的认证结果即可以作为本公开实施例中的校验方式。
在步骤S13中,在认证信息通过认证服务器的校验后,认证服务器根据认证信息识别用户并在生成一个登录标识,所述登录标识的形式不作限定,可以是cookie、session、token中的任意一种。在生成登录标识后,即可根据登录标识生成与其对应的唯一标识(Unique Key),所述唯一标识在当前用户的本次登录过程中不发生变化,唯一标识与登录标识是一一对应的关系,即在本次登录过程中,仅存在一个唯一标识。
在步骤S14中,获取了登录标识和唯一标识后,将登录标识和唯一标识进行关联,并将登录标识和唯一标识的关联关系存储在数据库或者缓存中,即可以通过查找数据库或缓存的方式寻找到登录标识和唯一标识的关联关系,通过登录标识查找唯一标识或通过唯一标识查找登录标识。关联后,将登录标识返回浏览器,通过浏览器显示登录成功,至此在认证服务器完成了用户的登录。
在用户登录统一身份认证系统的过程中,用户将认证信息发送到用户代理,用户代理将接收到的用户信息发送到认证服务器进行认证,在认证通过后,用户代理接收到认证服务器发送的登录标识,并将所述登录标识发送给用户。在用户的整个登录过程中,可以将用户代理看作是统一身份认证系统的前端,将认证服务器看作是统一身份认证系统的后端,在用户的角度看来,仅需要在统一身份认证系统中输入认证信息即可以接收到登录成功或登录失败的提醒。
图2示出根据本公开实施例的统一身份认证方法的登录过程的示意图。如图2所示,在用户登录统一身份认证系统的过程中,用户代理(即统一身份认证系统的前端)可以是浏览器,用户输入认证信息,将认证信息发送至浏览器,浏览器将携带认证信息的认证请求发送到认证服务器,认证服务器对认证请求中的认证信息进行校验,在校验通过后生成登录标识,并生成相应的唯一标识(Unique Key),在登录标识和唯一标识关联后,将登录标识返回给浏览器,浏览器显示登录成功。用户仅需在浏览器中输入认证信息,即可以根据浏览器显示登录成功或登录失败得到登录状态的提醒。
在一种可能的实现方式中,在用户已经登录了统一身份认证系统的情况下,用户使用客户端时,可以无需再次登录,仅通过授权的形式即可使用客户端应用。即在用户登录后,用户在访问其他的客户端应用时,通过登录标识作为自己的认证的凭证,不需要再进行认证就可以直接使用客户端应用。
在用户使用客户端应用时,客户端请求认证服务器,认证服务器的授权端重新为用户定向到授权交互页面,询问用户是否授权,如果用户许可,则认证服务器验证客户端的身份,并发放授权码给客户端,客户端拿到授权码后,携带授权码去认证服务器请求访问令牌,在客户端拿到访问令牌后即可通过访问令牌去资源服务器请求资源服务器上的受保护资源,可见,在整个过程中,用户仅需进行授权许可,即可以直接使用客户端应用,而无需重复登录。
在本公开实施例中,将客户端请求授权码和客户端请求访问令牌这两个步骤中引入唯一标识,下面对其进行详细的说明。
图3示出根据本公开实施例的统一身份认证方法的获取授权码过程的示意图。如图3所示,在获取授权码的过程中,认证服务器的步骤包括:
S21,接收来自客户端的授权请求。
其中,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端。
S22,对所述客户端信息和所述登录标识进行校验,在所述登录标识和所述客户端信息合法的情况下确定通过校验,并根据所述登录标识生成授权码。
其中,所述授权码用于指示用户授予所述客户端的权限。
S23,基于所述登录标识获取所述唯一标识,将所述授权码与所述唯一标识进行关联,并将所述与唯一标识关联的授权码返回所述客户端。
在步骤S21中,认证服务器接收客户端的授权请求,授权请求中携带有客户端信息和登录标识。客户端发送的授权请求中,必须携带有客户端标识(ID)和登录标识,可选的,授权请求中可以携带回调地址,权限范围和状态参数(state)。
在统一身份认证系统中,仅通过登录标识去认证服务器中请求授权码很容易导致用户的信息出现安全风险,因此,在一个统一身份认证系统中,客户端应用应进行提前的注册或备案,即将客户端的ID注册在系统中,因此,客户端为认证服务器发送的授权请求中需要携带有客户端的ID,以识别出客户端是否注册在系统中,只有客户端为值得信任的客户端(即已注册)才会对登录标识进行识别。
同样,如果在客户端请求的过程中,如果存在攻击者将回调地址修改为指向特定服务器的地址,那么授权码将被发送到该攻击者的服务器,从而使其可以获取到用户的数据。因此,在客户端注册时,可以同时将对应的多个回调地址也注册到系统中。客户端在进行授权请求时,携带一个已注册的地址,认证服务器验证客户端发送的回调地址是否与之前注册的地址相同,或者前者是后者集合中的一个元素,只有满足条件的情况下才对登录标识进行识别。
权限范围即为客户端的授权范围,在范围维度上对客户端进行限制。权限范围可以看作是一个对象,包含一个权限的名称、描述等信息,例如:“获取您的基本资料(头像、昵称)”。权限范围可以在获得用户授权许可时由用户指定参数。如果客户端没有传递该参数,那么服务器则以该应用的所有权限代替。
状态参数(state)用于维持请求和回调过程中的状态,防止跨站请求伪造漏洞(Cross-Site Request Forgery,CSRF)攻击,服务器不对该参数做任何处理,如果客户端携带了该参数,则服务器在响应时原封不动的返回。
在步骤S22中,认证服务器对客户端信息和登录标识进行校验,客户端ID和客户端的回调地址经过验证已在系统中注册则通过验证,通过登录标识识别用户的登录状态,在登录标识和客户端信息都合法的情况下,生成授权码。授权码代表用户确认授权的暂时性凭证,只能使用一次。
在步骤S23中,认证服务器基于登录标识获取到与其关联的唯一标识,将上述授权码与唯一标识进行关联,相应的,授权码和唯一标识和关联关系同样存储在数据库或缓存中。根据客户端的回调地址将授权码返回给客户端,在返回授权码的过程中,为了防止CSRF攻击,将状态参数同样返回给客户端。
如图3所示,在获取授权码的过程中,客户端的步骤包括:
S31,将授权请求发送至认证服务器。
其中,所述授权请求中携带有客户端信息和登录标识。所述客户端信息用于识别所述客户端,所述登录标识用于指示用户的登录状态。
S32,接收所述认证服务器返回的与唯一标识关联的授权码。
其中,所述唯一标识用于指示用户本次登录期间授权的客户端,所述授权码用于指示用户授予所述客户端的权限。
在步骤S31中,客户端在得到用户的许可后,将授权请求发送至认证服务器,授权请求中携带有客户端ID、客户端的回调地址、状态参数和登录标识,通过授权请求向认证服务器请求授权码。
在步骤S32中,客户端接收认证服务器返回的授权码和状态参数,将授权码提取,以为后面请求访问令牌做准备。
在本公开实施例中,如果用户选择通过统一身份认证系统登录或使用客户端时,客户端应用将授权请求发送至认证服务器,认证服务器在接收到客户端传来的授权请求后,对授权请求中携带的客户端信息和登录标识进行校验,在通过客户端信息验证所述客户端为已在认证服务器中注册的客户端,则校验登录标识是否合法,在登录标识合法的情况下,视为所述客户端通过校验,并根据登录标识生成授权码。
在本公开实施例中,在生成授权码后,认证服务器可以根据登录标识获取唯一标识,将唯一标识于授权码进行关联,并将与唯一标识关联的授权码返回给客户端,客户端接收该授权码,在这过程中,用户通过统一身份认证系统,只需点击授权确认就可以让客户端从认证服务器中获取授权码,无需单独对客户端进行登录,且所述授权码与唯一标识进行关联,使得认证服务器可以通过唯一标识寻找到接收授权码的多个客户端,方便认证服务器对任意客户端进行权限修改、登录登出等操作。
图4示出根据本公开实施例的统一身份认证方法的获取授权码过程的示意图。如图4所示,第三方应用(客户端)生成状态参数(state),携带应用信息(客户端ID)、回调地址跳转到获取授权码页面,浏览器将接收到的数据发送给认证服务器,认证服务器校验应用信息和登录标识,认证服务器根据登录标识获取登录时生成的唯一标识(Unique Key),认证服务器根据唯一标识生成授权码,并与唯一标识进行关联,认证服务器携带授权码和状态参数(state)返回客户端发送的回调地址。
在一种可能的实现方式中,客户端接收到授权码后,即可以携带授权码去认证服务器请求访问令牌。图5示出根据本公开实施例的统一身份认证方法的获取访问令牌过程的示意图。如图5所示,在获取访问令牌的过程中,认证服务器的步骤包括:
S41,接收来自所述客户端的令牌请求。
其中,所述令牌请求中携带有客户端信息和授权码。
S42,对所述客户端信息和所述授权码进行校验,在所述客户端信息和所述授权码合法的情况下确定通过校验,并根据所述授权码生成访问令牌。
其中,所述访问令牌用于获取用户信息以完成客户端的登录。
S43,基于所述授权码获取所述唯一标识,将所述访问令牌与所述唯一标识进行关联,并将所述与唯一标识关联的访问令牌返回所述客户端。
在步骤S41中,认证服务器接收客户端的令牌请求,令牌请求中携带有客户端信息和授权码,所述客户端信息可以为客户端ID、客户端的回调地址。
在步骤S42中,对客户端信息和授权码进行校验,客户端ID如上所述,查询系统中是否存在有注册的客户端ID,对于回调地址,需要和获取授权码阶段的客户端发送的回调地址相同,满足上述条件即为客户端信息校验通过。授权码则需要识别其是否正确,如果授权码正确,则通过校验。在客户端信息和授权码校验通过后,生成访问令牌。
访问令牌是在用户授权许可下,认证服务器下发给客户端的一个授权凭证,该令牌所要表达的意思是“用户授予该客户端应用在多少时间范围内允许访问哪些与自己相关的服务”,访问令牌主要在时间范围和权限范围两个维度进行控制,此外访问令牌对于客户端来说是非透明的,外在表现就是一个字符串,客户端无法知晓字符串背后所隐藏的用户信息,因此不用担心用户的信息会因此而泄露。
在步骤S43中,基于授权码获取唯一标识,即从数据库或缓存中提取出授权码与唯一标识的关联关系,将得到的访问令牌和唯一标识进行关联,同样将关联关系存储在数据库或缓存中。
认证服务器为客户端返回访问令牌时,必须要返回访问令牌还可以返回访问令牌的生命周期,即用于表示令牌下发后多久时间过期,如果没有指定该项,则使用默认值。也可以返回刷新令牌,刷新令牌的作用在于更新访问令牌,访问令牌的有效期一般较短,这样可以保证在发生访问令牌泄露时,不至于造成太坏的影响,但是访问令牌有效期设置太短存在的副作用就是用户需要频繁授权,虽然可以通过一定的机制进行静默授权,但是频繁的调用授权接口,之于认证服务器也是一种压力,这种情况下就可以在返回访问令牌的同时返回一个刷新令牌,刷新令牌的有效期明显长于访问令牌,这样在访问令牌失效时,可以利用刷新令牌去认证服务器换取新的访问令牌,不过协议对于刷新令牌没有强制规定,是否需要该令牌是客户端可以自行选择。
如图5所示,在获取访问令牌的过程中,客户端的步骤包括:
S51,将令牌请求发送至所述认证服务器。
其中,所述令牌请求中携带有客户端信息和授权码。
S52,接收所述认证服务器返回的与唯一标识关联的访问令牌。
其中,所述访问令牌用于获取用户信息以完成客户端的登录。
在步骤S51中,将令牌请求发送给认证服务器,令牌请求中携带有客户端信息和授权码,客户端信息可以为客户端ID、客户端的回调地址。
在步骤S52中,客户端接收认证服务器返回的访问令牌时,还可以接收返回的访问令牌的生命周期和刷新令牌,
在客户端获得了访问令牌后,客户端即可使用访问令牌到资源服务器中申请用户的特定信息数据,资源服务器校验客户端使用的令牌,在校验通过的情况下,将指定的用户信息数据发送给客户端。
在本公开实施例中,所述客户端接收到授权码后,即可通过授权码去请求可以访问资源服务器的访问令牌,认证服务器在接收到客户端发送的令牌请求后,对令牌请求中携带的客户端信息和授权码进行校验,再通过校验的情况下生成访问令牌。
在本公开实施例中,认证服务器在生成访问令牌后,将访问令牌和唯一标识进行关联,并将所述访问令牌发放给客户端,客户端可以通过访问令牌去资源服务器中请求用户的资源信息,且所述访问令牌与唯一标识进行关联,使得认证服务器可以通过唯一标识寻找到接收访问令牌的多个客户端,方便认证服务器对任意客户端进行权限修改、登录登出等操作。
在访问令牌没有失效的情况下,客户端可以通过访问令牌去资源服务器不断的获得用户数据,在一种可能的实现方式中,客户端处于公开或暴露状态,此时需要通过统一身份认证系统登出客户端。
图6示出根据本公开实施例的统一身份认证方法的登出过程的示意图。如图6所示,在登出系统的过程中,认证服务器的步骤包括:
S61,接收来自所述客户端的登出请求。
其中,所述登出请求中携带有客户端信息和访问令牌。
S62,对所述客户端信息和所述访问令牌进行校验,在所述客户端信息合法且所述访问令牌有效的情况下确定通过校验。
S63,基于所述访问令牌获取所述唯一标识,查找与所述唯一标识关联的登录标识和所有访问令牌,并将所述登录标识设置为失效。
S64,通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述客户端。
在步骤S61中,认证服务器接收客户端发送的登出请求,登出请求中携带有客户端信息和访问令牌,客户端信息包括客户端ID等可以让系统识别客户端的信息。
在步骤S62中,对所述客户端信息和所述访问令牌进行校验,在所述客户端信息识别出客户端应用已注册的情况下通过校验,在访问令牌有效的情况下通过校验。
在一种可能的实现方式中,认证服务器可以通过客户端信息对客户端应用进行识别,例如通过查看客户端ID来校验所述客户端是否已经在系统中注册。在利用客户端信息校验通过的情况下,对访问令牌进行校验,通过查看访问令牌是否有效及其是否由当前认证服务器发放来校验所述客户端是否有对应的权限。
在一种可能的实现方式中,认证服务器通过客户端信息可以识别对应客户端,且访问令牌有效的情况下,认为所述客户端通过校验并具有登出所有客户端的权限。
在步骤S63中,通过访问令牌在数据库和缓存中查找到与访问令牌关联的唯一标识,通过唯一标识在数据库和缓存中查找到与唯一标识关联的登录标识和访问令牌,使登录标识失效,这样,用户无法再通过客户端请求授权码。
在一种可能的实现方式中,在用户当前登录统一认证系统的过程中,唯一标识有且仅有一个与其关联的登录标识,和一个或多个与其关联的授权码和访问令牌,通过存放在数据库或缓存中的唯一标识对应的关联关系,可以查找到当前唯一标识对应的登录标识和所有关联的访问令牌。在对客户端校验通过后,即可根据唯一标识查找到与其对应的登录标识和访问令牌,并使对应的登录标识和访问令牌失效,使得所有客户端无法通过访问令牌去资源服务器请求用户资源也无法通过登录标识在认证服务器再次请求新的授权码以得到新的访问令牌。
在步骤S64中,通过访问令牌调出对应的客户端的登出接口,控制对应的客户端退出登录状态,并使访问令牌失效。
在一种可能的实现方式中,可以通过直接从客户端中移除访问令牌,通过删除访问令牌来使其失效。
在一种可能的实现方式中,可以预先建立白名单,在访问令牌生成后,将访问令牌存入其中,在验证访问令牌时,需要先查询白名单中是否存在访问令牌,存在的情况下正常解析该访问令牌,否则认为访问令牌无效。在使访问令牌失效时,将白名单中的访问令牌移除即可使其失效。
在一种可能的实现方式中,可以创建一份访问令牌的黑名单,将未到期的访问令牌存储在内,每次请求时对比访问令牌黑名单,在黑名单中则禁止访问。
在一种可能的实现方式中,可以在使访问令牌失效的同时使刷新令牌失效,在客户端的访问令牌失效的情况下,如果存在刷新令牌,则会通过刷新令牌去重新获得有效的访问令牌,因此,在登出客户端的情况下,可以使访问令牌和刷新令牌同时失效。
如图6所示,登出系统的过程中,客户端的步骤包括:
S71,将登出请求发送至所述认证服务器。
其中,所述登出请求中携带有客户端信息和访问令牌。
S72,使用登出接口退出当前登录状态。
在一种可能的实现方式中,用户可以任意选择要登出的客户端,在用户确定要登出的客户端后,即可根据查找到的与唯一标识关联的访问令牌调用对应的客户端的登出接口,退出客户端的登录状态。
S73,接收所述认证服务器返回的登出成功的信息。
在本公开实施例中,用户可以通过任意客户端向统一身份认证系统发出登出请求,以使得所有的客户端退出登录,在用户认为之前登录过的客户端存在暴露信息的风险时,可以利用当前使用的客户端向统一身份认证系统发出登出请求,在认证服务器接收到登出请求后,对其携带的客户端信息和访问令牌进行校验,在客户端信息合法且访问令牌有效的情况下通过校验。基于访问令牌获取与其关联的唯一标识,通过唯一标识获取关联的登录标识和所有访问令牌,通过访问令牌调用对应的客户端的登出接口,控制对应的客户端退出登录状态,并使登录标识和访问令牌失效。将登出成功的消息发送给用户当前使用的客户端。
在本公开实施例中,用户利用当前使用的客户端即可向统一认证系统发送登出请求,统一认证系统可以根据客户端的访问令牌查找到关联的唯一标识,并根据唯一标识查找到所有关联的访问令牌以获取其对应的客户端,通过调用对应的客户端的登出接口,可以将任意的客户端登出,或使系统和所有客户端实现统一的登出。在面对客户端存在公开或暴露风险的情况下,有效的保护了系统数据和用户隐私。
在一种可能的实现方式中,可以通过统一身份认证系统实现对客户端的登出。图7示出根据本公开实施例的统一身份认证方法的登出过程的示意图。如图7所示,在登出系统的过程中,认证服务器的步骤包括:
S81,接收来自所述浏览器的登出请求。
其中,所述登出请求中携带有登录标识。
S82,对所述登录标识进行校验,在所述登录标识正确的情况下确定通过校验。
S83,基于所述登录标识获取所述唯一标识,查找与所述唯一标识关联的所有访问令牌,并将所述登录标识设置为失效。
S84,通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述浏览器,以使所述浏览器在接收到所述登出成功的信息后向用户发出登出成功提醒。
在步骤S81中,认证服务器接收浏览器的登出请求,登出请求中携带有登录标识,认证服务器调出登出接口。
在步骤S83中,认证服务器通过登录标识在数据库或缓存中查找到关联的唯一标识,通过唯一标识在数据库和缓存中查找到与唯一标识关联的所有访问令牌,将登录标识失效,使客户端无法再获取授权码。
如上所述,在用户登录统一身份认证系统的情况下,唯一标识有且仅有一个与其关联的登录标识,和一个或多个与其关联的授权码和访问令牌,通过存放在数据库或缓存中的唯一标识对应的关联关系,可以查找到当前唯一标识对应的登录标识和所有关联的访问令牌。在接到登出请求后,认证服务器即可利用登录标识查找到与其关联的唯一标识,并根据唯一标识查找到所有关联的访问令牌。
在步骤S84中,认证服务器通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述浏览器,以使所述浏览器在接收到所述登出成功的信息后向用户发出登出成功提醒。
认证服务器逐个寻找访问令牌,在使访问令牌失效后,通过访问令牌调用客户端的登出接口,完成客户端的登出操作。不断循环上述过程,以使得所有的客户端都退出登录。
在本公开实施例中,用户在希望退出统一身份认证系统的情况下,可以在统一身份认证系统的前端(浏览器)向统一身份认证系统的后端(认证服务器)发送登出请求,认证服务器在登出请求携带的登录标识有效的情况下,利用登录标识寻找与其关联的所有访问令牌,并根据访问令牌以此调用对应的客户端的登出接口,使客户端退出登录状态,并使登录标识和访问令牌失效。通过统一身份认证系统,用户可以进行单点登出,即仅需进行一次登出操作即可使得所有授权的客户端都退出登录状态,在面对客户端不安全(例如公共计算机或没有加密的网路)的情况下,可以实现客户端和统一身份认证系统的相互调用达到全局登出的效果。
本公开实施例的统一身份认证方法可以应用于所有的使用统一身份认证技术的场景,下面以医院信息门户系统为例进行说明。
医院信息门户系统中患者和医院工作人员都可以通过统一身份认证来对医院中的各个客户端应用进行操作,在医院工作人员使用时,可能会通过统一身份认证系统使用医生工作站、护士工作站、手术麻醉系统、实验室信息管理系统、影像归档和通信系统、医院资源管理系统、统一用户管理平台、门户引擎等。医学信息系统中存放着大量包括患者隐私的敏感数据,这就更加突出了安全性在系统设计开发中的地位。因此必须采取措施以保证数据在存储、传递等各个环节的安全性。
以医生为例,在医生登录系统的过程中,统一身份认证系统后端自动根据该医生的登录标识生成唯一标识,并将登录标识和唯一标识进行关联。在医生使用手术麻醉系统希望查看病人的麻醉部位和用药剂量时,无需登录手术麻醉系统,仅通过统一身份认证系统前端显示的授权许可询问确定给手术麻醉系统授权许可,统一身份认证系统后端即可以与手术麻醉系统间进行授权请求、令牌请求、授权码和访问令牌的发送和接收,并在系统后端将授权码和访问令牌分别与唯一标识进行关联。在医生使用影像系统查看病人的医学影像时,无需登录影像系统仅通过统一身份认证系统前端显示的授权许可询问确定给影像系统授权许可,统一身份认证系统后端即可以与影像系统间进行授权请求、令牌请求、授权码和访问令牌的发送和接收,并在系统后端将授权码和访问令牌分别与唯一标识进行关联。在医生想要登出使用的客户端时,可以通过客户端登出所有的客户端,也可以使用统一身份认证系统登出所有的客户端。例如,通过影像系统访问统一身份认证系统,通过访问令牌寻找关联的唯一标识,通过唯一标识寻找到对应的所有访问令牌和登录标识,使其全部失效,并登出对应的客户端,如寻找到手术麻醉系统的访问令牌,使其无效并登出手术麻醉系统。
在本公开实施例中,认证服务器在接收到浏览器的认证请求并完成校验后,识别用户并进行登录,生成登录标识和唯一标识,在接收到来自客户端的授权请求和令牌请求后完成对两个请求中携带的信息进行校验通过后为客户端返回授权码和访问令牌,将登录标识、授权码和访问令牌与唯一标识进行关联,在认证服务器接收到登出请求的时候,即可以通过唯一标识查找到关联的所有访问令牌并找到对应的客户端,使其退出登录。即通过本公开实施例的方法可以利用登录标识查找出当前授权访问的客户端,可以通过统一身份认证或者客户端任何一端让当前登录用户强制登出,有效的保护了系统数据和用户隐私。
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
此外,本公开还提供了统一身份认证装置、电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种统一身份认证方法,相应技术方案和描述和参见方法部分的相应记载,不再赘述。
图8示出根据本公开实施例的统一身份认证装置的结构示意图。如图8所示,应用于认证服务器,所述认证服务器用于处理用户的统一身份认证,该装置80可以包括:
第一接收模块81,接收来自浏览器的认证请求,所述认证请求中携带有认证信息,所述认证信息用于指示用户的身份;
第一校验模块82,对所述认证信息进行校验,在所述认证信息正确的情况下确定通过校验;
第一生成模块83,根据所述认证信息识别用户并生成登录标识和唯一标识,所述登录标识用于指示用户的登录状态,所述唯一标识用于指示用户本次登录期间授权的客户端;
第一关联模块84,将所述登录标识和所述唯一标识进行关联,并将所述登录标识返回所述浏览器,以使所述浏览器在接收到所述登录标识后向用户发出登录成功提醒。
在一种可能的实现方式中,所述装置还包括:
第二接收模块,接收来自客户端的授权请求,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端;
第二校验模块,对所述客户端信息和所述登录标识进行校验,在所述登录标识和所述客户端信息合法的情况下确定通过校验,并根据所述登录标识生成授权码,所述授权码用于指示用户授予所述客户端的权限;
第二关联模块,基于所述登录标识获取所述唯一标识,将所述授权码与所述唯一标识进行关联,并将所述与唯一标识关联的授权码返回所述客户端。
在一种可能的实现方式中,所述装置还包括:
第三接收模块,接收来自所述客户端的令牌请求,所述令牌请求中携带有客户端信息和授权码;
第三校验模块,对所述客户端信息和所述授权码进行校验,在所述客户端信息和所述授权码合法的情况下确定通过校验,并根据所述授权码生成访问令牌,所述访问令牌用于获取用户信息以完成客户端的登录;
第三关联模块,基于所述授权码获取所述唯一标识,将所述访问令牌与所述唯一标识进行关联,并将所述与唯一标识关联的访问令牌返回所述客户端。
在一种可能的实现方式中,所述装置还包括:
第四接收模块,接收来自所述客户端的登出请求,所述登出请求中携带有客户端信息和访问令牌;
第四校验模块,对所述客户端信息和所述访问令牌进行校验,在所述客户端信息合法且所述访问令牌有效的情况下确定通过校验;
第一查找模块,基于所述访问令牌获取所述唯一标识,查找与所述唯一标识关联的登录标识和所有访问令牌,并将所述登录标识设置为失效;
第一登出模块,通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述客户端。
在一种可能的实现方式中,所述装置还包括:
第五接收模块,接收来自所述浏览器的登出请求,所述登出请求中携带有登录标识;
第五校验模块,对所述登录标识进行校验,在所述登录标识正确的情况下确定通过校验;
第二查找模块,基于所述登录标识获取所述唯一标识,查找与所述唯一标识关联的所有访问令牌,并将所述登录标识设置为失效;
第二登出模块,通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述浏览器,以使所述浏览器在接收到所述登出成功的信息后向用户发出登出成功提醒。
本公开实施例还提供一种统一身份认证装置,应用于客户端,所述装置包括:
第一发送模块,将授权请求发送至认证服务器,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端,所述登录标识用于指示用户的登录状态;
第六接收模块,接收所述认证服务器返回的与唯一标识关联的授权码,所述唯一标识用于指示用户本次登录期间授权的客户端,所述授权码用于指示用户授予所述客户端的权限。
在一种可能的实现方式中,所述装置还包括:
第二发送模块,将令牌请求发送至所述认证服务器,所述令牌请求中携带有客户端信息和授权码;
第七接收模块,接收所述认证服务器返回的与唯一标识关联的访问令牌,所述访问令牌用于获取用户信息以完成客户端的登录。
在一种可能的实现方式中,所述装置还包括:
第三发送模块,将登出请求发送至所述认证服务器,所述登出请求中携带有客户端信息和访问令牌;
登出接口调用模块,使用登出接口退出当前登录状态;
第八接收模块,接收所述认证服务器返回的登出成功的信息。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
电子设备可以被提供为服务器或其它形态的设备。
图9示出根据本公开实施例的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图9,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如微软服务器操作系统(Windows ServerTM),苹果公司推出的基于图形用户界面操作系统(Mac OSXTM),多用户多进程的计算机操作系统(UnixTM),自由和开放原代码的类Unix操作系统(LinuxTM),开放原代码的类Unix操作系统(FreeBSDTM)或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
若本申请技术方案涉及个人信息,应用本申请技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本申请技术方案涉及敏感个人信息,应用本申请技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种统一身份认证方法,其特征在于,应用于认证服务器,所述认证服务器用于处理用户的统一身份认证,所述方法包括:
接收来自浏览器的认证请求,所述认证请求中携带有认证信息,所述认证信息用于指示用户的身份;
对所述认证信息进行校验,在所述认证信息正确的情况下确定通过校验;
根据所述认证信息识别用户并生成登录标识和唯一标识,所述登录标识用于指示用户的登录状态,所述唯一标识用于指示用户本次登录期间授权的客户端;
将所述登录标识和所述唯一标识进行关联,并将所述登录标识返回所述浏览器,以使所述浏览器在接收到所述登录标识后向用户发出登录成功提醒。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收来自客户端的授权请求,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端;
对所述客户端信息和所述登录标识进行校验,在所述登录标识和所述客户端信息合法的情况下确定通过校验,并根据所述登录标识生成授权码,所述授权码用于指示用户授予所述客户端的权限;
基于所述登录标识获取所述唯一标识,将所述授权码与所述唯一标识进行关联,并将所述与唯一标识关联的授权码返回所述客户端。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收来自所述客户端的令牌请求,所述令牌请求中携带有客户端信息和授权码;
对所述客户端信息和所述授权码进行校验,在所述客户端信息和所述授权码合法的情况下确定通过校验,并根据所述授权码生成访问令牌,所述访问令牌用于获取用户信息以完成客户端的登录;
基于所述授权码获取所述唯一标识,将所述访问令牌与所述唯一标识进行关联,并将所述与唯一标识关联的访问令牌返回所述客户端。
4.根据权利要求1-3中任意一项所述的方法,其特征在于,所述方法还包括:
接收来自所述客户端的登出请求,所述登出请求中携带有客户端信息和访问令牌;
对所述客户端信息和所述访问令牌进行校验,在所述客户端信息合法且所述访问令牌有效的情况下确定通过校验;
基于所述访问令牌获取所述唯一标识,查找与所述唯一标识关联的登录标识和所有访问令牌,并将所述登录标识设置为失效;
通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述客户端。
5.根据权利要求1-3中任意一项所述的方法,其特征在于,所述方法还包括:
接收来自所述浏览器的登出请求,所述登出请求中携带有登录标识;
对所述登录标识进行校验,在所述登录标识正确的情况下确定通过校验;
基于所述登录标识获取所述唯一标识,查找与所述唯一标识关联的所有访问令牌,并将所述登录标识设置为失效;
通过所述访问令牌调用对应的客户端的登出接口,控制所述客户端退出登录状态,并将所述访问令牌设置为失效,返回登出成功的信息至所述浏览器,以使所述浏览器在接收到所述登出成功的信息后向用户发出登出成功提醒。
6.一种统一身份认证方法,其特征在于,应用于客户端,所述方法包括:
将授权请求发送至认证服务器,所述授权请求中携带有客户端信息和登录标识,所述客户端信息用于识别所述客户端,所述登录标识用于指示用户的登录状态;
接收所述认证服务器返回的与唯一标识关联的授权码,所述唯一标识用于指示用户本次登录期间授权的客户端,所述授权码用于指示用户授予所述客户端的权限。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
将令牌请求发送至所述认证服务器,所述令牌请求中携带有客户端信息和授权码;
接收所述认证服务器返回的与唯一标识关联的访问令牌,所述访问令牌用于获取用户信息以完成客户端的登录。
8.根据权利要求6或7所述的方法,其特征在于,所述方法还包括:
将登出请求发送至所述认证服务器,所述登出请求中携带有客户端信息和访问令牌;
使用登出接口退出当前登录状态;
接收所述认证服务器返回的登出成功的信息。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至8中任意一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410138932.6A CN118118227A (zh) | 2024-01-31 | 2024-01-31 | 统一身份认证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410138932.6A CN118118227A (zh) | 2024-01-31 | 2024-01-31 | 统一身份认证方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118118227A true CN118118227A (zh) | 2024-05-31 |
Family
ID=91214782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410138932.6A Pending CN118118227A (zh) | 2024-01-31 | 2024-01-31 | 统一身份认证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118118227A (zh) |
-
2024
- 2024-01-31 CN CN202410138932.6A patent/CN118118227A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200236147A1 (en) | Brokered authentication with risk sharing | |
US10771459B2 (en) | Terminal apparatus, server apparatus, blockchain and method for FIDO universal authentication using the same | |
US11704393B2 (en) | Self-owned authentication and identity framework | |
KR100920871B1 (ko) | 네트워크 위치의 하위 위치에 대한 사용자의 인증을 위한방법 및 시스템 | |
US7571473B1 (en) | Identity management system and method | |
EP2893484B1 (en) | Method and system for verifying an access request | |
US11841929B2 (en) | Authentication translation | |
US9578018B2 (en) | Remote sign-out of web based service sessions | |
KR101451359B1 (ko) | 사용자 계정 회복 | |
US20090031125A1 (en) | Method and Apparatus for Using a Third Party Authentication Server | |
CN111433770B (zh) | 用于用户认证的方法和装置以及计算机可读介质 | |
WO2019205389A1 (zh) | 电子装置、基于区块链的身份验证方法、程序和计算机存储介质 | |
EP3206329B1 (en) | Security check method, device, terminal and server | |
JP2007280393A (ja) | コンピューターログインをコントロールする装置およびその方法 | |
CN113826095A (zh) | 单击登录过程 | |
US12107956B2 (en) | Information processing device, information processing method, and non-transitory computer readable storage medium | |
Cetin | Design, testing and implementation of a new authentication method using multiple devices | |
CN112929388B (zh) | 网络身份跨设备应用快速认证方法和系统、用户代理设备 | |
KR102452717B1 (ko) | 사용자 인증 장치 및 방법 | |
KR100993333B1 (ko) | 인터넷 접속 도구를 고려한 사용자 인증 방법 및 시스템 | |
KR101545897B1 (ko) | 주기적인 스마트카드 인증을 통한 서버 접근 통제 시스템 | |
CN118118227A (zh) | 统一身份认证方法及装置 | |
KR20050070381A (ko) | 원타임 패스워드 기반 인증 시스템 | |
KR20220122224A (ko) | 사용자 단말 및 대상 서버에서의 분산 id에 기반한 사용자 통합 인증 방법 | |
RU2626664C1 (ru) | Способ предоставления доступа к распределенным информационно-вычислительным ресурсам в виде корпоративных порталов через защищенную виртуальную среду |
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 |