CN111651739B - 登录认证服务系统及方法、认证服务节点、电子设备 - Google Patents

登录认证服务系统及方法、认证服务节点、电子设备 Download PDF

Info

Publication number
CN111651739B
CN111651739B CN202010382860.1A CN202010382860A CN111651739B CN 111651739 B CN111651739 B CN 111651739B CN 202010382860 A CN202010382860 A CN 202010382860A CN 111651739 B CN111651739 B CN 111651739B
Authority
CN
China
Prior art keywords
authentication service
login
target object
target
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.)
Active
Application number
CN202010382860.1A
Other languages
English (en)
Other versions
CN111651739A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010382860.1A priority Critical patent/CN111651739B/zh
Publication of CN111651739A publication Critical patent/CN111651739A/zh
Application granted granted Critical
Publication of CN111651739B publication Critical patent/CN111651739B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供了一种登录认证服务系统及方法、认证服务节点、电子设备。该系统包括:第一认证服务节点,其第一认证服务本地缓存用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据,其第一认证服务模块用于接收目标对象登录第一应用系统的第一登录请求,响应第一登录请求从第一认证服务本地缓存获取目标对象的对象信息及其登录票据,并根据目标对象的对象信息及其登录票据对第一登录请求进行验证;目标认证服务中心节点,包括目标认证服务中心缓存,用于缓存目标对象的登录票据,以及定时从对象数据服务接收并缓存对象信息,对象信息包括目标对象的对象信息,并将对象信息同步至第一认证服务本地缓存。本公开涉及云安全技术。

Description

登录认证服务系统及方法、认证服务节点、电子设备
技术领域
本公开涉及通信技术领域,具体而言,涉及一种登录认证服务系统及方法、认证服务节点、电子设备。
背景技术
登录一般是每个技术产品必备的功能,登录的可靠性和稳定性直接影响了用户对产品的使用。随着信息技术的发展,企业建设的网络应用系统越来越多,而这些应用系统有的是只提供给企业内部人员使用的。
在企业内部,内部网络应用系统目前普遍实现了单点登录(Single Sign On,SSO)。SSO是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。这种情况下,登录的可靠性显得尤为重要。一旦登录出现故障,将导致所有OA(Office Automation,办公自动化)站点不可用。
因此,需要一种新的登录认证服务系统及方法、认证服务节点、电子设备。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解。
发明内容
本公开实施例提供一种登录认证服务系统及方法、认证服务节点、电子设备,利用分布式的登录认证服务系统,能够实现单个认证服务节点不依赖外部服务即可实现高可用的登录认证。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
本公开实施例提供一种登录认证服务系统,所述系统包括:第一认证服务节点,包括第一认证服务模块和第一认证服务本地缓存,所述第一认证服务本地缓存用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据,所述第一认证服务模块用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;目标认证服务中心节点,包括所述目标认证服务中心缓存,所述目标认证服务中心缓存用于缓存所述目标对象的登录票据,以及定时从对象数据服务接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息异步保存至所述第一认证服务本地缓存。
本公开实施例提供一种登录认证服务系统,所述系统包括:第一认证服务节点,包括第一认证服务模块和第一认证服务本地缓存,所述第一认证服务模块用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至所述第一认证服务本地缓存;所述第一认证服务本地缓存用于将所述目标对象的登录票据异步保存至目标认证服务中心缓存,接收并存储所述目标认证服务中心缓存分发的目标对象的对象信息;所述第一认证服务模块还用于从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;目标认证服务中心节点,包括所述目标认证服务中心缓存,所述目标认证服务中心缓存用于缓存所述第一认证服务本地缓存发送的所述目标对象的登录票据,以及定时从对象数据服务接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息异步保存至所述第一认证服务本地缓存。
本公开实施例提供一种登录认证服务方法,应用于第一认证服务节点,所述第一认证服务节点包括第一认证服务本地缓存;其中,所述方法包括:存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据至所述第一认证服务本地缓存;接收所述目标对象登录第一应用系统的第一登录请求;响应所述第一登录请求从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据;根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例提供一种登录认证服务方法,应用于第一认证服务节点,所述第一认证服务节点包括第一认证服务本地缓存;其中,所述方法包括:接收目标对象登录第一应用系统的第一登录请求;响应所述第一登录请求向目标验证服务发送登录验证请求;接收所述目标验证服务响应所述登录验证请求返回的认证结果;根据所述认证结果生成所述目标对象的登录票据;将所述目标对象的登录票据存储至所述第一认证服务本地缓存,并将所述目标对象的登录票据异步保存至目标认证服务中心缓存;存储所述目标认证服务中心缓存分发的目标对象的对象信息至所述第一认证服务本地缓存;从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据;根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例提供一种认证服务节点,所述认证服务节点包括:认证服务本地缓存,用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据;认证服务模块,用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求从所述认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例提供一种认证服务节点,所述认证服务节点包括:认证服务模块,用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至认证服务本地缓存;认证服务本地缓存,用于将所述目标对象的登录票据异步保存至目标认证服务中心缓存,接收并存储所述目标认证服务中心缓存分发的目标对象的对象信息;其中,所述认证服务模块还用于从所述认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的登录认证服务方法。
本公开实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,配置为存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的登录认证服务方法。
在本公开的一些实施例所提供的技术方案中,通过创建一个分布式的登录认证服务系统,该分布式的登录认证服务系统包括第一认证服务节点和目标认证服务中心节点,第一认证服务节点可以接收目标认证服务中心节点的目标认证服务中心缓存分发的目标对象的对象信息及其登录票据,并可以将接收到的目标对象的对象信息及其登录票据缓存至第一认证服务节点的第一认证服务本地缓存中,当第一认证服务节点的第一认证服务模块接收到目标对象想要登录第一应用系统的第一登录请求时,第一认证服务模块可以从其第一认证服务本地缓存中获取到目标对象的对象信息及其登录票据,以对第一登录请求进行验证,一方面,第一认证服务节点仅依赖第一认证服务节点自身即可完成登录过程;另一方面,由于第一认证服务节点不需要依赖外部的数据库和外部的服务,这样,在登录过程中,不需要频繁访问数据库,同时,即使外部的数据库和外部的服务不可用,依然不影响用户正常登录,大幅度提升了登录的可用性和可靠性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的登录认证服务方法的示例性系统架构的示意图;
图2示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图;
图3示出了相关技术中的登录认证方法的示意图;
图4示意性示出了根据本公开的一实施例的登录认证服务系统的框图;
图5示意性示出了根据本公开的一实施例的登录认证服务系统的框图;
图6示意性示出了根据本公开的一实施例的登录认证服务系统的框图;
图7示意性示出了根据本公开的一实施例的登录认证服务系统的框图;
图8示意性示出了根据本公开的一实施例的登录认证服务系统的框图;
图9示意性示出了根据本公开的一实施例的登录认证服务系统的架构图;
图10为采用相关技术中的方案获得的性能结果示意图;
图11为采用本公开实施例提供的方案获得的性能结果示意图
图12示意性示出了根据本公开的一实施例的登录认证服务方法的流程图;
图13示意性示出了根据本公开的一实施例的登录认证服务方法的流程图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
本公开所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图仅为本公开的示意性图解,图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和步骤,也不是必须按所描述的顺序执行。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本说明书中,用语“一个”、“一”、“该”、“所述”和“至少一个”用以表示存在一个或多个要素/组成部分/等;用语“包含”、“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”、“第二”和“第三”等仅作为标记使用,不是对其对象的数量限制。
下面结合附图对本公开示例实施方式进行详细说明。
图1示出了可以应用于本公开实施例的漏洞检测方法或漏洞检测装置的示例性系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器105可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备101、102、103可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备101、102、103以及服务器105可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
服务器105可例如接收终端设备101(也可以是终端设备102、103)发送的目标对象登录第一应用系统的第一登录请求;响应所述第一登录请求从服务器105的第一认证服务节点的第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证,向终端设备101返回针对所述第一登录请求的验证结果。其中,所述第一认证服务本地缓存用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据。服务器105还可以包括目标认证服务中心节点,目标认证服务中心节点包括所述目标认证服务中心缓存,所述目标认证服务中心缓存用于缓存所述目标对象的登录票据,以及定时从对象数据服务接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息异步保存至所述第一认证服务本地缓存。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的,服务器105可以是一个实体的服务器,还可以为多个服务器组成,根据实际需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图2,其示出了适于用来实现本申请实施例的终端设备的计算机系统200的结构示意图。图2示出的终端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图2所示,计算机系统200包括中央处理单元(CPU)201,其可以根据存储在只读存储器(ROM)202中的程序或者从储存部分208加载到随机访问存储器(RAM)203中的程序而执行各种适当的动作和处理。在RAM 203中,还存储有系统200操作所需的各种程序和数据。CPU 201、ROM 202以及RAM 203通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
以下部件连接至I/O接口205:包括键盘、鼠标等的输入部分206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分207;包括硬盘等的储存部分208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分209。通信部分209经由诸如因特网的网络执行通信处理。驱动器210也根据需要连接至I/O接口205。可拆卸介质211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器210上,以便于从其上读出的计算机程序根据需要被安装入储存部分208。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分209从网络上被下载和安装,和/或从可拆卸介质211被安装。在该计算机程序被中央处理单元(CPU)201执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本申请所示的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括发送单元、获取单元、确定单元和第一处理单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备可实现功能包括:接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据;接收所述目标对象登录第一应用系统的第一登录请求;响应所述第一登录请求从第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据;根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;或者,用于接收目标对象登录第一应用系统的第一登录请求;响应所述第一登录请求向目标验证服务发送登录验证请求;接收所述目标验证服务响应所述登录验证请求返回的认证结果;根据所述认证结果生成所述目标对象的登录票据;将所述目标对象的登录票据存储至第一认证服务本地缓存,并将所述目标对象的登录票据异步保存至目标认证服务中心缓存;接收并存储所述目标认证服务中心缓存分发的目标对象的对象信息;从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据;根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
需要理解的是,在本公开附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
首先对本公开实施例中涉及的部分术语进行定义说明。
准入网关/API(Application Programming Interface,应用程序编程接口)网关:为业务应用提供API托管的服务,同时可以支持权限管理、流量监控等。在本公开实施例中,可以理解为是一种接入层,用户访问目标站点时,会先经过准入网关;应用调用接口时,会经过API网关。
ACL(Access Control Lists):访问控制列表ACL是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。本公开实施例中提及的Passport ACL黑名单是一个黑名单配置表,保存了用户与目标站点的授权关系。在黑名单中的用户,无权限访问目标站点。
Outlook(是办公软件套装的组件之一)/AD(Active Directories,活动目录):一种登录方式,表现为使用账号+Outlook密码进行登录。用户通过此方式登录时,首先会经过认证服务,由认证服务向Outlook/AD服务再进行请求验证。Outlook/AD的服务本身,对认证服务而言,是一种依赖服务。
Token(令牌):一种登录方式,表现为使用账号+token进行登录。用户通过此方式登录时,首先会经过认证服务,由认证服务向Token服务再进行请求验证。Token服务本身,对认证服务而言,是一种依赖服务。
扫码登录:一种登录方式,变现为使用例如一种即时通讯应用程序扫描登录页上的二维码进行登录。用户通过此方式登录时,首先会经过认证服务,由认证服务向扫码服务再进行请求验证。扫码服务本身,对认证服务而言,是一种依赖服务。
统一登录/统一登录页面/SSO:指企业内部SSO的登录站点,所有OA内网的登录都会在此页面进行,并通过此认证服务完成登录,并将登录态返回给目标站点。
认证服务:指的是完成登录过程的服务。
票据(ticket)服务:是认证服务的一部分,用来生成票据、检查票据、验证票据等。
员工与组织架构服务:本身不属于认证服务,是独立的服务。但是认证过程需要依赖此服务,因此可看做是一种强依赖。
票据:登录过程产生的用户登录凭证。
SQL Sever:一种关系型数据库管理系统。
QPS(Queries-per-second,每秒查询率):是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。
服务节点:本公开实施例中特指认证服务节点,可以理解为是认证服务的一个集群。
认证服务代理(Proxy):可以进行协议转换,对新旧版本的协议进行转换,特指认证服务里的一个代理,可以视为接入层的服务。
认证配置服务:一个配置服务,用来缓存调用方的授权信息。
slave.configmanager.oa.com(修改配置服务站点):一个修改配置服务的站点。可以提供一个用户界面,运维人员可以通过该界面给用户分配key(键),用户取得授权后,将key和授权信息存储至认证配置服务中。还可以通过该站点进行服务器的配置,例如同步配置,假设设置为每5分钟同步或者每10分钟同步一次配置服务至服务节点,或者关闭同步功能。
rio.oa.com(应用配置站点):一个应用进行配置的站点。给业务站点申请注册使用的。
HRC:保存员工及组织架构数据的文件服务,用于存储员工信息、员工与组织架构之间的关系等。
GateAgent:一种与认证服务部署在同一服务器中的本地网关,主要是用于做负载均衡的,也可以用于保存哪些ip(Internet Protocol,网际互联协议)是不能访问的,或者只允许哪些ip访问目标站点。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云安全(Cloud Security)是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
图3示出了相关技术中的登录认证方法的示意图。
图3是市面上常见的产品的登录过程。图3描述了一个用户进行登录时,产品实现登录的过程。如图3所示,可以包括以下步骤:
0)将HRC中的员工及组织架构数据同步至员工及组织架构服务(Staff Service),员工及组织架构服务保存员工及组织架构数据至SQL Server(SQL服务器)。
1)用户通过目标站点的网站的登录页面请求登录,若是首次登录,则会在登录页面生成一个登录票据,准入网关具有会话保持功能,会将登录票据缓存在准入网关中,准入网关由此可以获知该用户是否处于登录态,若处于登录态,则会获取到登录票据,然后通过接入层,调用票据服务接口进行解密。用户通过准入网关访问目标站点,若无登录态,则目标站点将跳转至统一登录页面(SSO)进行登录。
2)用户登录时,认证服务会先将请求指向员工及组织架构服务,并先在数据库中查询此用户的员工信息。
3)获取员工信息后,会将请求指向票据服务,并在数据库中查询此员工是否存在有效的登录票据。
4)若无有效的登录票据,则向依赖的服务(这里以Outlook/AD,Token和扫码服务为例)请求认证。
5)认证所依赖的服务会对用户进行认证。
6)返回认证结果。
7)票据服务根据返回的认证结果生成登录票据,并将登录票据保存在数据库中。
8)生成登录票据之后,则再通过Passport ACL黑名单对用户进行权限检查,判断该用户是否具有目标站点的访问权限,以生成登录结果。
9)返回登录结果给用户。
上述登录过程是市面上大部分产品的逻辑,但其存在几大安全隐患,可能导致登录过程不可用:
1)登录过程频繁检查数据库。一旦数据库故障,整个登录过程将不可用。
2)登录过程强依赖员工及组织架构服务。一旦员工及组织架构服务故障,整个登录过程将不可用。
3)登录过程强依赖Passport ACL,一旦该配置失效,整个登录过程将不可用。
由此可见,相关技术中的方案的潜在风险非常高,几乎没有容错能力。一方面,一旦某站点发生缺陷,那么其他站点也会受此影响,无法完成登录。另一方面,如果频繁进行登录请求,可能直接导致数据库故障,影响整个登录和认证服务。
基于上述相关技术中存在的技术问题,本公开实施例提出了一种登录认证服务系统,以用于至少部分解决上述问题。图4示意性示出了根据本公开的一实施例的登录认证服务系统的框图。
如图4所示,本公开实施例提供了一种登录认证服务系统400,登录认证服务系统400可以包括:第一认证服务节点410和目标认证服务中心节点420。
其中,第一认证服务节点410可以进一步包括第一认证服务模块411和第一认证服务本地缓存412。目标认证服务中心节点420可以进一步包括目标认证服务中心缓存421。
图4实施例中,第一认证服务本地缓存412可以用于接收并存储目标认证服务中心缓存421分发的目标对象的对象信息及其登录票据。第一认证服务模块411可以用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求从第一认证服务本地缓存412获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。目标认证服务中心缓存421可以用于缓存所述目标对象的登录票据,以及定时从对象数据服务500接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息同步至第一认证服务本地缓存412。
本公开实施例中,目标对象例如可以是企业内部的某个员工,目标对象的对象信息例如可以是该员工的员工信息,例如员工的工号、姓名、身份证号码、手机号码等中的任意一个或者多个,但本公开并不限定于此,目标对象可以是任意的用户,目标对象的对象信息可以随着目标对象的变化而变化。
本公开实施例中,以企业内部网络系统为例,假设该企业内部网络系统可以包括多个应用系统,例如第一应用系统、第二应用系统、第三应用系统等等,并将这多个应用系统纳入单点登录的相互信任的内部网络系统中,但本公开并不限定于此,也可以将本公开实施例提供的方案应用于任意的网络系统中。
本公开实施例中,对象数据服务500例如可以是上述图3中的HRC,其可以用于存储企业内部的员工信息,以及员工与组织架构之间的关系等数据。
本公开实施例提供的登录认证服务系统400是一个分布式的登录认证服务系统,其可以包括多个(N个,N为大于或等于2的正整数)认证服务节点,第一认证服务节点410可以是这多个认证服务节点中的任意一个。在该登录认证服务系统400中的每个认证服务节点均分别包括各自的认证服务模块和认证服务本地缓存。可以配置对象数据服务500定时(例如,固定每天的某个时间点,但本公开并不限定于此,可以根据实际应用场景进行设置)将各个对象的对象信息(下面均以企业内部的员工的员工信息为例进行举例说明)同步至目标认证服务中心缓存421中,目标认证服务中心缓存421可以再将各个对象的对象信息异步保存至各个认证服务节点的认证服务本地缓存中。
在图4实施例中,假设目标对象已经在其它认证服务节点进行过登录,即已经产生了目标对象的登录票据,且该其它认证服务节点已经将目标对象的登录票据异步保存至目标认证服务中心缓存421,目标认证服务中心缓存421将该目标对象的登录票据分发至各个认证服务节点,并存储至各个认证服务节点的认证服务本地缓存中。这样,当第一认证服务节点410接收到目标对象登录第一应用系统(假设对应业务A)的第一登录请求时,第一认证服务模块411可以直接从其自身的第一认证服务本地缓存412中获取目标对象的对象信息及其登录票据,而不需要依赖外部服务(例如账号/密码登录服务,令牌服务,扫码服务,HRC等外部依赖服务),即第一认证服务节点410可以自活实现高可用登录。
本公开实施方式提供的登录认证服务系统,通过创建一个分布式的登录认证服务系统,该分布式的登录认证服务系统包括第一认证服务节点和目标认证服务中心节点,第一认证服务节点可以接收目标认证服务中心节点的目标认证服务中心缓存分发的目标对象的对象信息及其登录票据,并可以将接收到的目标对象的对象信息及其登录票据缓存至第一认证服务节点的第一认证服务本地缓存中,当第一认证服务节点的第一认证服务模块接收到目标对象想要登录第一应用系统的第一登录请求时,第一认证服务模块可以从其第一认证服务本地缓存中获取到目标对象的对象信息及其登录票据,以对第一登录请求进行验证,一方面,第一认证服务节点仅依赖第一认证服务节点自身即可完成登录过程;另一方面,由于第一认证服务节点不需要依赖外部的数据库和外部的服务,这样,在登录过程中,不需要频繁访问数据库,同时,即使外部的数据库和外部的服务不可用,依然不影响用户正常登录,大幅度提升了登录的可用性和可靠性。
图5示意性示出了根据本公开的一实施例的登录认证服务系统的框图。如图5所示,与上述图4实施例相比,其不同之处在于,登录认证服务系统400还可以进一步包括第二认证服务节点430,其中,第二认证服务节点430可以进一步包括第二认证服务模块431和第二认证服务本地缓存432。
图5实施例中,假设第二认证服务节点430是目标对象首次进行登录的认证服务节点,此时,当第二认证服务模块431接收到所述目标对象登录第二应用系统(假设对应业务B)的第二登录请求时,第二认证服务模块431响应所述第二登录请求向目标验证服务600发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至第二认证服务本地缓存432中。第二认证服务本地缓存432可以用于将所述目标对象的登录票据异步保存至目标认证服务中心缓存421,目标认证服务中心缓存421可以再将所述目标对象的登录票据分发至各个认证服务节点的认证服务本地缓存中,这里包括第一认证服务节点410的第一认证服务本地缓存412,由此可以实现业务B在第二认证服务节点430首次登录,第二认证服务节点430的第二认证服务模块431生成的目标对象的登录票据会缓存到第二认证服务节点430的第二认证服务本地缓存432中,并异步保存至目标认证服务中心节点420的目标认证服务中心缓存421中,目标认证服务中心缓存421会将目标对象的登录票据分发至除第二认证服务节点430以外的其它各个认证服务节点的认证服务本地缓存中。这样,即使目标对象想要在第一认证服务节点410登录业务A的第一应用系统,也不需要再次登录,实现SSO的功能。
图6示意性示出了根据本公开的一实施例的登录认证服务系统的框图。如图6所示,与上述图4实施例相比,其不同之处在于,第一认证服务节点410还可以进一步包括第一权限校验模块413和第一权限校验本地缓存414。
图6实施例中,第一权限校验本地缓存414可以用于存储权限校验信息。第一认证服务模块411可以用于根据从第一认证服务本地缓存412获取的所述目标对象的对象信息解密所述目标对象的登录票据。之后,第一权限校验模块413可以用于从第一权限校验本地缓存414获取所述权限校验信息,并根据所述权限校验信息对解密后的所述目标对象的登录票据进行验证,获得所述第一登录请求的验证结果。
本公开实施例中,第一权限校验本地缓存414中的权限校验信息可以是PassportACL黑名单,即在黑名单上的对象不具有访问目标站点(可以包括第一应用系统和第二应用系统)的权限。即第一权限校验模块413可以判断目标对象是否在该黑名单中,并且判断目标对象是否被限制访问第一应用系统,若目标对象在黑名单中,且被限制访问第一应用系统,则第一登录请求的验证结果为验证失败;若目标对象不在黑名单中,或者虽然在黑名单中,但是不被限制访问第一应用系统,则第一登录请求的验证结果为验证成功或者验证通过,此时可以在目标对象的客户端或者浏览器上显示第一应用系统的页面。
可以理解的是,第一权限校验本地缓存414不仅限于缓存上述Passport ACL黑名单,也可以采用其它权限验证方法,例如还可以缓存白名单,即存储具有访问权限的对象与目标站点之间的映射关系,在白名单上的对象具有访问目标站点的权限,本公开对此不做限制。
本公开实施例中,分布式的登录认证服务系统中包括的各个认证服务节点可以分别具有各自的权限校验模块和权限校验本地缓存。
本公开实施方式提供的登录认证服务系统,通过在认证服务节点中设置自身的权限校验本地缓存,将权限校验信息存储在权限校验本地缓存中,这样,一方面,可以进一步提高登录认证过程的安全性;另一方面,认证服务节点依靠自身即可实现权限校验,而不需要依赖外部的Passport ACL服务,提高认证服务节点的可用性。
图7示意性示出了根据本公开的一实施例的登录认证服务系统的框图。如图7所示,与上述图6实施例相比,其不同之处在于,登录认证服务系统400还包括第二认证服务节点430,其中,第二认证服务节点430除可以包括上述图5实施例中的第二认证服务模块431和第二认证服务本地缓存432以外,还可以进一步包括第二权限校验本地缓存434和第二权限校验模块433。目标认证服务中心节点420还可以进一步包括权限校验中心缓存422。
以权限校验信息包括Passport ACL黑名单为例,图7实施例中,假设将配置的新的Passport ACL黑名单上传至第一权限校验本地缓存414,则第一权限校验本地缓存414可以再将接收到的新的Passport ACL黑名单异步保存至目标认证服务中心节点420的权限校验中心缓存422,权限校验中心缓存422可以再将接收到的新的Passport ACL黑名单分发至其它各个认证服务节点,其中包括第二认证服务节点430,第二认证服务节点430可以将该新的Passport ACL黑名单缓存至第二权限校验本地缓存434中。
可以理解的是,若将配置的新的Passport ACL黑名单上传至第二权限校验本地缓存434(或其它任意一个权限校验本地缓存),则第二权限校验本地缓存434可以再将接收到的新的Passport ACL黑名单异步保存至目标认证服务中心节点420的权限校验中心缓存422,权限校验中心缓存422可以再将接收到的新的Passport ACL黑名单分发至其它各个认证服务节点,其中包括第一认证服务节点410,第一认证服务节点410可以将该新的Passport ACL黑名单缓存至第一权限校验本地缓存414中。
图8示意性示出了根据本公开的一实施例的登录认证服务系统的框图。与上述图5-7实施例的不同之处在于,图8实施例中,假设目标对象首次在第一认证服务节点410上请求登录,即假设第一认证服务模块411接收所述目标对象登录第一应用系统的第一登录请求,则第一认证服务模块411响应所述第一登录请求向目标验证服务600发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,第一认证服务模块411根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至第一认证服务节点410的第一认证服务本地缓存412。第一认证服务本地缓存412可以用于将所述目标对象的登录票据异步保存至目标认证服务中心节点420的目标认证服务中心缓存421,接收并存储目标认证服务中心缓存421分发的目标对象的对象信息。第一认证服务模块411还可以用于从第一认证服务本地缓存412获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
图8实施例中,目标认证服务中心节点420的目标认证服务中心缓存421可以用于缓存第一认证服务本地缓存412发送的所述目标对象的登录票据,以及定时从对象数据服务500接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息异步保存至第一认证服务本地缓存412。
图8实施例中,分布式的登录认证服务系统400也还可以包括其它的认证服务节点,其它的认证服务节点也可以分别具有各自的认证服务模块和认证服务本地缓存,目标认证服务中心缓存421也可以将其缓存的对象信息及其登录票据分发至其它各个认证服务节点的认证服务本地缓存。
下面结合图9对本公开实施例提供的登录认证服务系统进行举例说明。图9示意性示出了根据本公开的一实施例的登录认证服务系统的架构图。如图9所示,登录认证服务系统可以包括接入层、认证服务和持久化数据。
图9实施例中,接入层可以包括准入网关,目标对象发送的第一登录请求可以通过准入网关转发至各个认证服务节点(认证服务节点1至认证服务节点N)。或者,接入层也可以包括认证服务代理和API网关,若目标对象发送的第一登录请求是利用旧协议(例如SOAP(Simple Object Access Protocol,简单对象访问协议)协议)发送的,则可以通过认证服务代理进行协议转换,例如转换成新协议RESTful(Representational State Transfer,一种网络应用程序的设计风格和开发方式)协议,然后再通过API网关转发至各个认证服务节点。或者,第一登录请求若是利用新协议发送的,则可以直接通过API网关转发至各个认证服务节点。
在图9实施例中,接入层也可以是分布式设置于多个中心的,例如M个中心,M为大于或等于2的正整数。本公开实施例中,一个中心例如可以认为是一个机房,一个机房中可以布置至少一台服务器。
可以理解的是,接入层也可以不使用准入网关/API网关,而使用认证服务自身的接入层,达到类似接入的效果即可。
继续参考图9,认证服务也可以是分布式设置于多个中心的,例如包括N个认证服务节点,每个认证服务节点可以包括各自的本地网关、认证服务模块、认证服务本地缓存、权限校验模块和权限校验本地缓存,例如认证服务节点1包括本地网关1、认证服务模块1、认证服务本地缓存1、权限校验模块1和权限校验本地缓存1。图9实施例中,认证服务可以线性扩容,即可以根据实际需求增设相应数量的认证服务节点,本公开对认证服务节点数量不做限定。
需要说明的是,每个认证服务节点中的本地网关为可选模块,可以不存在。
图9实施例中,持久化数据可以异步容灾,例如假设在天津设置第一中心缓存集群,在深圳设置第二中心缓存集群。初始时,假设将第一中心缓存集群设置为目标认证服务中心节点,若一地例如深圳发生天灾等导致第一中心缓存集群无法使用,可以切换到另一地例如天津的第二中心缓存集群。需要说明的是,图9中仅以两地为例进行举例说明,但本公开并不限定于此,可以根据实际需要设置中心缓存集群的数量和分布位置,并根据实际需求选择某个中心缓存集群作为目标认证服务中心节点,本公开对此不做限定。
图9实施例中,N个中心的认证服务可以都连接到某一地即作为目标认证服务中心节点的中心缓存集群的持久化数据。N个中心的每个中心的认证服务节点是同时存活的,在相关技术中,只有一个认证服务节点是活的,其它认证服务节点是冷备的,只有在活的这个认证服务节点出现问题时,才切换至冷备的认证服务节点,但由于活的认证服务节点和冷备的认证服务节点之间是不同步的,所以切换过去会存在问题,而本公开实施例中多个认证服务节点是同时存活的,且各个认证服务节点之间是通过目标认证服务中心节点同步的,认证服务节点之间的切换不存在这个问题。
在实际部署中,可以实现“多点多活”的效果。一旦某个认证服务节点故障,可以快速把认证服务切换到其它认证服务节点。整个切换过程只需5分钟,这将极大降低故障造成的损失。
图9实施例中,假设全部缓存均采用Redis(Remote Dictionary Server,远程字典服务),例如目标认证服务中心缓存、各个认证服务节点中的认证服务本地缓存和权限校验本地缓存等均采用Redis,但本公开并不限定于此,也可以采用其他类似的产品,只要能够实现缓存的功能即可。
图9实施例中,假设各个认证服务节点的认证服务本地缓存采用Redis的Master模式(主模式),权限校验本地缓存采用Redis的Slave模式(从模式),但本公开并不限定于此。
图9实施例中,假设各个认证服务节点的权限校验模块采用Passport ACL黑名单过滤技术,但本公开并不限定于此,也可以通过其他类似的权限验证功能实现。
本公开实施例中,当Passport ACL发生故障时,运维人员可以手动或者系统自动设置为跳过Passport ACL检查,即在故障时可以快速降级,以保证用户登录的可用性。
继续参考图9,若各个认证服务节点的认证服务模块接收到短信验证请求,则认证服务模块会向外发送短信验证码,则认证服务模块可以将发送短信验证码有关的日志信息存储至持久化数据的MongoDB(一个基于分布式文件存储的数据库)中。可以理解的是,MongoDB为可选的,可以不存在。
下面结合图9对用户登录过程进行简单说明:
1)用户通过准入网关访问统一登录页面SSO进行登录时,会经过某个认证服务节点(这里以认证服务节点1为例进行举例说明)的本地网关1到认证服务模块1中登录,认证服务模块1会首先去认证服务本地缓存1中检查是否缓存有该用户的登录票据,若存在该用户的登录票据,则获知该用户处于登录态,则可以从认证服务本地缓存1中获取到该用户的登录票据,这样检查登录票据的过程可以在认证服务节点1中的认证服务本地缓存1中完成,不需要访问数据库。
若认证服务本地缓存1中不存在该用户的登录票据,则认证服务模块1可以调用外部依赖服务,例如账号/密码登录服务、令牌服务或者扫码服务等中的任意一种请求验证,获得认证结果后,生成该用户的登录票据并存储至认证服务本地缓存1中。
图9实施例中,每种登录方式之间是相互独立的,例如账号/密码登录服务、令牌服务或者扫码服务之间是独立的,这样当某种登录方式产生故障时,其他几种登录方式不受影响。
2)SSO拿到用户的登录票据后,会通过API网关或认证服务Proxy调用认证服务进行登录票据解密。解密登录票据时,需要获取该用户的员工信息,也将在认证服务节点1的认证服务本地缓存1中获取。类似的,HRC将员工信息定时同步至目标认证服务中心缓存,目标认证服务中心缓存将员工信息分发至各个认证服务节点的认证服务本地缓存中。
3)解密登录票据后,需要验证该用户是否有权限访问目标站点,此过程将通过认证服务节点1中的权限校验模块1完成。若通过某个认证服务节点上传新的黑名单,则缓存到该对应认证服务节点的权限校验本地缓存,并同步至权限校验中心缓存,以供同步至其它各个认证服务节点的权限校验本地缓存。
以上过程即可完成一次用户登录。该过程经过接入层之后,仅依赖认证服务本身,不依赖其他模块。
其他模块都是异步完成,并非认证过程的强依赖。下面介绍其它模块与认证服务的交互过程:
1)产生的登录票据会异步保存到持久化数据的目标认证服务中心缓存。保存在此的作用是,通过持久化数据可以向其它认证服务节点分发(认证服务支持部署多个中心)。
2)所需的员工及组织架构信息,由目标认证服务中心缓存每天定时从HRC中同步,再异步保存至各个认证服务节点的认证服务本地缓存。如果HRC故障,登录过程则沿用之前一个时段例如昨日的员工信息,最多影响新入职员工,不会造成登录过程的全面故障。
3)配置服务可以设置均为每5分钟同步一次到认证服务的各个认证服务节点中,既能保持数据时效,又使得登录过程不依赖配置服务。
本公开实施例中,若某个认证服务节点发生故障,则可以通过平行扩容解决。认证服务可以支持横向平行扩容,支持部署多个节点,并实现节点之间的一致性。
本公开实施方式提供的登录认证服务系统,对相关技术的方案进行了优化,并且创新性地设计出一种仅依赖认证服务节点即可完成登录的高可用方案,可以达到以下容错和容灾标准:
1)采用分布式方式和缓存技术,解除了认证服务节点与数据库之间的强耦合,使得当数据库故障时,登录服务依然可用。
2)通过认证服务节点自身的认证服务本地缓存读取员工信息,使得认证服务节点可以不依赖员工和组织架构服务,使得当员工和组织架构服务发生故障时,登录服务依然可用。
3)通过认证服务节点自身的权限校验本地缓存,使得认证服务节点弱依赖Passport ACL。
4)不依赖其他配置服务。
本公开实施方式提供的登录认证服务系统,实现了认证过程中不存在任何单点的依赖或数据库的依赖,可以极大地提升性能。从性能测试结果来看,如图10所示,图3相关技术的方案的性能结果仅为500qps。如图11所示,采用本公开实施例提供的方案后,单台认证服务的性能可以达到1500qps。那么,基于本公开实施例提供的方案,认证服务可以横向平行扩展,因此其性能可以线性提升。此外,由于解除了认证与其他服务的强依赖关系,一旦数据库、配置等其它服务故障,登录过程不受影响,降低了对用户造成的影响和对企业造成的损失。
图12示意性示出了根据本公开的一实施例的登录认证服务方法的流程图。图12实施例提供的方法应用于上述实施例中的第一认证服务节点,所述第一认证服务节点包括第一认证服务本地缓存。如图12所示,可以包括以下步骤。
在步骤S1210中,存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据至所述第一认证服务本地缓存。
在步骤S1220中,接收所述目标对象登录第一应用系统的第一登录请求。
在步骤S1230中,响应所述第一登录请求从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据。
在步骤S1240中,根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例的登录认证服务方法的其它内容可以参照上述实施例。
图13示意性示出了根据本公开的一实施例的登录认证服务方法的流程图。图13实施例提供的方法应用于上述实施例中的第一认证服务节点,所述第一认证服务节点包括第一认证服务本地缓存。如图13所示,可以包括以下步骤。
在步骤S1310中,接收目标对象登录第一应用系统的第一登录请求。
在步骤S1320中,响应所述第一登录请求向目标验证服务发送登录验证请求。
在步骤S1330中,接收所述目标验证服务响应所述登录验证请求返回的认证结果。
在步骤S1340中,根据所述认证结果生成所述目标对象的登录票据。
在步骤S1350中,将所述目标对象的登录票据存储至所述第一认证服务本地缓存,并将所述目标对象的登录票据异步保存至目标认证服务中心缓存。
在步骤S1360中,存储所述目标认证服务中心缓存分发的目标对象的对象信息至所述第一认证服务本地缓存。
在步骤S1370中,从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据。
在步骤S1380中,根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例的登录认证服务方法的其它内容可以参照上述实施例。
进一步的,本公开实施例还提供了一种认证服务节点,该认证服务节点可以包括:认证服务本地缓存和认证服务模块。
其中,认证服务本地缓存可以用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据。认证服务模块可以用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求从所述认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例的认证服务节点的其它内容可以参照上述实施例。
进一步的,本公开实施例还提供了一种认证服务节点,该认证服务节点可以包括:认证服务本地缓存和认证服务模块。
其中,认证服务模块可以用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至认证服务本地缓存。认证服务本地缓存可以用于将所述目标对象的登录票据异步保存至目标认证服务中心缓存,接收并存储所述目标认证服务中心缓存分发的目标对象的对象信息。
其中,所述认证服务模块还可以用于从所述认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证。
本公开实施例的认证服务节点的其它内容可以参照上述实施例。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (14)

1.一种登录认证服务系统,其特征在于,包括:
第一认证服务节点,包括第一认证服务模块和第一认证服务本地缓存,所述第一认证服务本地缓存用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据,所述第一认证服务模块用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;
目标认证服务中心节点,包括所述目标认证服务中心缓存,所述目标认证服务中心缓存用于缓存所述目标对象的登录票据,以及定时从对象数据服务接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息异步保存至所述第一认证服务本地缓存;
第二认证服务节点,包括第二认证服务模块和第二认证服务本地缓存;其中,
所述第二认证服务模块用于接收所述目标对象登录第二应用系统的第二登录请求,响应所述第二登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至所述第二认证服务本地缓存;
所述第二认证服务本地缓存用于将所述目标对象的登录票据异步保存至所述目标认证服务中心缓存。
2.根据权利要求1所述的登录认证服务系统,其特征在于,所述第一认证服务节点还包括第一权限校验模块和第一权限校验本地缓存;其中,
所述第一权限校验本地缓存用于存储权限校验信息;
所述第一认证服务模块用于根据所述目标对象的对象信息解密所述目标对象的登录票据;
所述第一权限校验模块用于从所述第一权限校验本地缓存获取所述权限校验信息,并根据所述权限校验信息对解密后的所述目标对象的登录票据进行验证,获得所述第一登录请求的验证结果。
3.根据权利要求2所述的登录认证服务系统,其特征在于,所述第二认证服务节点还包括第二权限校验本地缓存;其中,
所述目标认证服务中心节点还包括权限校验中心缓存,用于接收并缓存所述第一权限校验本地缓存发送的所述权限校验信息,并将所述权限校验信息分发至所述第二权限校验本地缓存。
4.根据权利要求1所述的登录认证服务系统,其特征在于,还包括:
接入层,包括准入网关,所述准入网关用于接收所述第一登录请求,并将所述第一登录请求转发至所述第一认证服务节点。
5.根据权利要求1所述的登录认证服务系统,其特征在于,还包括:
接入层,包括认证服务代理和API网关;其中,
所述认证服务代理用于接收所述第一登录请求,对所述第一登录请求进行协议转换,并将协议转换后的第一登录请求通过所述API网关转发至所述第一认证服务节点。
6.根据权利要求4或5所述的登录认证服务系统,其特征在于,所述接入层分布式设置于多个中心。
7.根据权利要求1所述的登录认证服务系统,其特征在于,所述目标认证服务中心节点为第一中心缓存集群,若所述第一中心缓存集群发生故障,则切换至第二中心缓存集群。
8.根据权利要求1所述的登录认证服务系统,其特征在于,还包括:
配置服务,用于定时将配置信息同步至所述第一认证服务节点。
9.一种登录认证服务系统,其特征在于,包括:
第一认证服务节点,包括第一认证服务模块和第一认证服务本地缓存,所述第一认证服务模块用于接收目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至所述第一认证服务本地缓存;所述第一认证服务本地缓存用于将所述目标对象的登录票据异步保存至目标认证服务中心缓存,接收并存储所述目标认证服务中心缓存分发的目标对象的对象信息;所述第一认证服务模块还用于从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;
目标认证服务中心节点,包括所述目标认证服务中心缓存,所述目标认证服务中心缓存用于缓存所述第一认证服务本地缓存发送的所述目标对象的登录票据,以及定时从对象数据服务接收并缓存对象信息,所述对象信息包括所述目标对象的对象信息,并将所述对象信息异步保存至所述第一认证服务本地缓存;
其它的认证服务节点,具有各自的认证服务模块和认证服务本地缓存,其认证服务本地缓存用于接收并存储所述目标认证服务中心缓存分发的所述目标对象的对象信息及其登录票据,其认证服务模块用于接收所述目标对象登录应用系统的登录请求,响应所述登录请求从其认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述登录请求进行验证。
10.一种登录认证服务方法,其特征在于,应用于第一认证服务节点,所述第一认证服务节点包括第一认证服务本地缓存;其中,所述方法包括:
存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据至所述第一认证服务本地缓存;
接收所述目标对象登录第一应用系统的第一登录请求;
响应所述第一登录请求从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据;
根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;
其中,第二认证服务节点包括第二认证服务模块和第二认证服务本地缓存;其中,所述第二认证服务模块用于接收所述目标对象登录第二应用系统的第二登录请求,响应所述第二登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至所述第二认证服务本地缓存;所述第二认证服务本地缓存用于将所述目标对象的登录票据异步保存至所述目标认证服务中心缓存。
11.一种登录认证服务方法,其特征在于,应用于第一认证服务节点,所述第一认证服务节点包括第一认证服务本地缓存;其中,所述方法包括:
接收目标对象登录第一应用系统的第一登录请求;
响应所述第一登录请求向目标验证服务发送登录验证请求;
接收所述目标验证服务响应所述登录验证请求返回的认证结果;
根据所述认证结果生成所述目标对象的登录票据;
将所述目标对象的登录票据存储至所述第一认证服务本地缓存,并将所述目标对象的登录票据异步保存至目标认证服务中心缓存;
存储所述目标认证服务中心缓存分发的目标对象的对象信息至所述第一认证服务本地缓存;
从所述第一认证服务本地缓存获取所述目标对象的对象信息及其登录票据;
根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;
其中,其它的认证服务节点,具有各自的认证服务模块和认证服务本地缓存,其认证服务本地缓存用于接收并存储所述目标认证服务中心缓存分发的所述目标对象的对象信息及其登录票据,其认证服务模块用于接收所述目标对象登录应用系统的登录请求,响应所述登录请求从其认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述登录请求进行验证。
12.一种认证服务节点,其特征在于,包括:
认证服务本地缓存,用于接收并存储目标认证服务中心缓存分发的目标对象的对象信息及其登录票据;
认证服务模块,用于接收所述目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求从所述认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;
其中,其它的认证服务节点,包括各自的认证服务模块和认证服务本地缓存,其认证服务模块用于接收所述目标对象登录第二应用系统的第二登录请求,响应所述第二登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至其认证服务本地缓存;其认证服务本地缓存用于将所述目标对象的登录票据异步保存至所述目标认证服务中心缓存。
13.一种认证服务节点,其特征在于,包括:
认证服务模块,用于接收目标对象登录第一应用系统的第一登录请求,响应所述第一登录请求向目标验证服务发送登录验证请求,并接收所述目标验证服务响应所述登录验证请求返回的认证结果,根据所述认证结果生成所述目标对象的登录票据,将所述目标对象的登录票据存储至认证服务本地缓存;
认证服务本地缓存,用于将所述目标对象的登录票据异步保存至目标认证服务中心缓存,接收并存储所述目标认证服务中心缓存分发的目标对象的对象信息;
其中,所述认证服务模块还用于从所述认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述第一登录请求进行验证;
其中,其它的认证服务节点,具有各自的认证服务模块和认证服务本地缓存,其认证服务本地缓存用于接收并存储所述目标认证服务中心缓存分发的所述目标对象的对象信息及其登录票据,其认证服务模块用于接收所述目标对象登录应用系统的登录请求,响应所述登录请求从其认证服务本地缓存获取所述目标对象的对象信息及其登录票据,并根据所述目标对象的对象信息及其登录票据对所述登录请求进行验证。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,配置为存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求10至11中任一项所述的方法。
CN202010382860.1A 2020-05-08 2020-05-08 登录认证服务系统及方法、认证服务节点、电子设备 Active CN111651739B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010382860.1A CN111651739B (zh) 2020-05-08 2020-05-08 登录认证服务系统及方法、认证服务节点、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010382860.1A CN111651739B (zh) 2020-05-08 2020-05-08 登录认证服务系统及方法、认证服务节点、电子设备

Publications (2)

Publication Number Publication Date
CN111651739A CN111651739A (zh) 2020-09-11
CN111651739B true CN111651739B (zh) 2024-05-14

Family

ID=72346841

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010382860.1A Active CN111651739B (zh) 2020-05-08 2020-05-08 登录认证服务系统及方法、认证服务节点、电子设备

Country Status (1)

Country Link
CN (1) CN111651739B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113824675B (zh) * 2020-09-17 2023-08-08 京东科技控股股份有限公司 管理登录态的方法和装置
CN114254217B (zh) * 2020-09-22 2024-07-12 福建天泉教育科技有限公司 一种基于产品拼装门户中产品统一域名的方法及其系统
CN114598490B (zh) * 2021-04-09 2024-03-29 亚信科技(南京)有限公司 基于api网关重定向页面的方法、装置、设备及存储介质
CN113949710B (zh) * 2021-10-15 2024-04-05 北京奇艺世纪科技有限公司 一种数据处理方法及服务器集群
CN115604041B (zh) * 2022-12-16 2023-05-09 深圳高灯计算机科技有限公司 安全代理方法、系统、装置、计算机设备和存储介质
CN116361753B (zh) * 2023-03-17 2024-03-22 深圳市东信时代信息技术有限公司 权限认证方法、装置、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2530618A1 (en) * 2011-06-01 2012-12-05 DSwiss AG Sign-On system with distributed access
CN104660409A (zh) * 2013-11-25 2015-05-27 北京神州泰岳软件股份有限公司 集群环境下系统登录的方法和认证服务器集群
CN107196957A (zh) * 2017-06-20 2017-09-22 北京明朝万达科技股份有限公司 一种分布式身份认证方法及系统
CN109729045A (zh) * 2017-10-30 2019-05-07 腾讯科技(深圳)有限公司 单点登录方法、系统、服务器以及存储介质
CN110276197A (zh) * 2019-06-25 2019-09-24 四川长虹电器股份有限公司 基于共享黑名单撤销jwt令牌实时生效的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8087075B2 (en) * 2006-02-13 2011-12-27 Quest Software, Inc. Disconnected credential validation using pre-fetched service tickets
US20090007250A1 (en) * 2007-06-27 2009-01-01 Microsoft Corporation Client authentication distributor
US10038726B2 (en) * 2013-06-12 2018-07-31 Visa International Service Association Data sensitivity based authentication and authorization
US10454917B2 (en) * 2015-11-05 2019-10-22 Red Hat, Inc. Enabling single sign-on authentication for accessing protected network services
US10749854B2 (en) * 2015-11-12 2020-08-18 Microsoft Technology Licensing, Llc Single sign-on identity management between local and remote systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2530618A1 (en) * 2011-06-01 2012-12-05 DSwiss AG Sign-On system with distributed access
CN104660409A (zh) * 2013-11-25 2015-05-27 北京神州泰岳软件股份有限公司 集群环境下系统登录的方法和认证服务器集群
CN107196957A (zh) * 2017-06-20 2017-09-22 北京明朝万达科技股份有限公司 一种分布式身份认证方法及系统
CN109729045A (zh) * 2017-10-30 2019-05-07 腾讯科技(深圳)有限公司 单点登录方法、系统、服务器以及存储介质
CN110276197A (zh) * 2019-06-25 2019-09-24 四川长虹电器股份有限公司 基于共享黑名单撤销jwt令牌实时生效的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
跨域单点登录解决方案研究;伍孟轩;李伟;易叔海;程蒙;刘川;;网络安全技术与应用;20180215(第02期);第52-54页 *

Also Published As

Publication number Publication date
CN111651739A (zh) 2020-09-11

Similar Documents

Publication Publication Date Title
CN111651739B (zh) 登录认证服务系统及方法、认证服务节点、电子设备
CN111801923B (zh) 用于多租户身份云服务的资源类型和模式元数据的复制
CN112166588B (zh) 多租户身份云服务的租户复制自举
CN111651747B (zh) 登录票据同步系统及方法、相关设备
CN112422532B (zh) 业务通信方法、系统、装置及电子设备
CN111741016B (zh) 用于管理应用接口的方法、计算设备和计算机存储介质
CN106664302B (zh) 使用信令撤销会话的方法和系统
US8412932B2 (en) Collecting account access statistics from information provided by presence of client certificates
CN112261172B (zh) 服务寻址访问方法、装置、系统、设备及介质
CN112149105A (zh) 数据处理系统、方法、相关设备及存储介质
CN108289098B (zh) 分布式文件系统的权限管理方法和装置、服务器、介质
US10389528B2 (en) On-demand generation and distribution of cryptographic certificates
US20170195299A1 (en) Systems and methods for automating client-side synchronization of public keys of external contacts
CN113271311B (zh) 一种跨链网络中的数字身份管理方法及系统
KR20220160549A (ko) 클러스터 접속 방법, 장치, 전자 설비 및 매체
US11943260B2 (en) Synthetic request injection to retrieve metadata for cloud policy enforcement
US11658812B1 (en) Distributed key management system
Yoon et al. Blockchain-based object name service with tokenized authority
US11943226B2 (en) Container and resource access restriction
CN112953719B (zh) 一种令牌认证方法和装置
CN112291244A (zh) 一种工业生产数据实时处理平台系统多租用户方法
WO2021242395A1 (en) Client certificate authentication in multi-node scenarios
CN113765866A (zh) 一种登录远程主机的方法和装置
US11528140B2 (en) Compromised access token invalidation in a singleton process
CN112511565B (zh) 请求响应方法、装置、计算机可读存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40028566

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant