CN111786969A - 单点登录方法、装置及系统 - Google Patents
单点登录方法、装置及系统 Download PDFInfo
- Publication number
- CN111786969A CN111786969A CN202010555814.7A CN202010555814A CN111786969A CN 111786969 A CN111786969 A CN 111786969A CN 202010555814 A CN202010555814 A CN 202010555814A CN 111786969 A CN111786969 A CN 111786969A
- Authority
- CN
- China
- Prior art keywords
- service system
- service
- http request
- user information
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000012795 verification Methods 0.000 claims abstract description 64
- 238000012546 transfer Methods 0.000 claims description 16
- 238000013475 authorization Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 11
- 235000014510 cooky Nutrition 0.000 claims description 10
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 210000000940 dendritic epidermal T lymphocyte Anatomy 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- LMBWSYZSUOEYSN-UHFFFAOYSA-N diethyldithiocarbamic acid Chemical compound CCN(CC)C(S)=S LMBWSYZSUOEYSN-UHFFFAOYSA-N 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/41—User authentication where a single sign-on provides access to a plurality of computers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种单点登录方法、装置及系统。其中,方法包括:接收业务系统发送的重定向请求,根据重定向请求,将第一http请求重定向至业务系统的登录页面,以使得业务系统接收基于登录页面输入的用户信息;接收业务系统发送的用户信息,根据预先配置的认证方式,对用户信息进行身份认证;若认证通过,则生成业务票据,将TGC发送至浏览器端,并将第二http请求重定向至业务系统;对第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统。本发明实施例通过重定向至业务系统的登录页面,能适应各业务系统不同的登录安全需求,具有更好的便捷性、安全性和易用性。
Description
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种单点登录方法、装置及系统。
背景技术
随着云计算和移动互联网技术的快速发展,企业用户针对PC和内网WEB业务系统的统一认证的需求会愈发的强烈。企业用户经过多年的信息化建设,基于IT环境的业务系统越来越多、越来越大,平均每个政企用户有OA、人事、邮件和具体业务系统等,用户会有越来越多的用户账号和密码需要记录,以应对不同的业务系统。
碎片化、分散式的身份验证模式已经无法满足目前企业用户需求,迫切需要建立一套高安全性和高可靠性的统一身份认证解决方案来实现安全的单点登录(Single SignOn,SSO)。单点登录系统就此产生,帮助企业用户简化用户登录多个系统的过程。用户只需要通过一次强身份认证,就可以免登录访问授权范围内的所有系统应用,对用户账户的生命周期进行统一管理,极大降低运营维护成本。
但目前的单点登录系统,需要开发统一的认证中心页面,由CAS(CentralAuthentication Service,统一认证服务)服务端进行用户的身份认证,而各业务系统的安全策略不同,对于登录的安全需求不同,因此,现有单点登录系统无法适应各业务系统不同的登录安全需求。
发明内容
本发明实施例提供一种单点登录方法、装置及系统,用以解决或者至少部分地解决现有技术存在的无法适应各业务系统不同的登录安全需求的缺陷。
第一方面,本发明实施例提供一种单点登录方法,包括:
接收业务系统发送的重定向请求,根据所述重定向请求,将第一http请求重定向至所述业务系统的登录页面,以使得所述业务系统接收基于所述登录页面输入的用户信息;
接收所述业务系统发送的所述用户信息,根据预先配置的认证方式,对所述用户信息进行身份认证;
若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至所述业务系统;
接收所述业务系统发送的票据核实请求,对所述第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回所述业务系统,允许所述浏览器端登录所述业务系统;
其中,所述重定向请求,用于当所述浏览器端发送所述第一http请求不包含服务票据时,指示所述业务系统将所述http请求进行重定向;所述第一http请求,为请求登录所述业务系统的请求;所述第二http请求,是将所述第一http请求携带所述业务票据后生成的。
优选地,所述根据预先配置的认证方式,对所述用户信息进行身份认证的具体步骤包括:
基于表述性状态传递接口调用所述业务系统,对所述用户信息进行身份认证。
优选地,所述根据预先配置的认证方式,对所述用户信息进行身份认证的具体步骤包括:
将所述用户信息发送至第三方认证中心进行身份认证。
优选地,所述基于表述性状态传递接口调用所述业务系统,对所述用户信息进行身份认证的具体步骤包括:
基于表述性状态传递接口调用所述业务系统,根据业务系统配置的安全策略和认证方式,对所述用户信息进行身份认证。
优选地,所述若认证通过,则生成业务票据之后,还包括:
将所述业务票据存储于Redis中。
优选地,所述若核实通过,则将核实结果返回所述业务系统,允许所述浏览器端登录所述业务系统的具体步骤包括:
若核实通过,则将所述http请求对应的用户信息发送至所述业务系统,允许所述浏览器端登录所述业务系统。
第二方面,本发明实施例提供一种单点登录装置,包括:
重定向模块,用于接收业务系统发送的重定向请求,根据所述重定向请求,将第一http请求重定向至所述业务系统的登录页面,以使得所述业务系统接收基于所述登录页面输入的用户信息;
身份认证模块,用于接收所述业务系统发送的所述用户信息,根据预先配置的认证方式,对所述用户信息进行身份认证;
票据生成模块,用于若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至所述业务系统;
票据核实模块,用于接收所述业务系统发送的票据核实请求,对所述第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回所述业务系统,允许所述浏览器端登录所述业务系统;
其中,所述重定向请求,用于当所述浏览器端发送所述第一http请求不包含服务票据时,指示所述业务系统将所述http请求进行重定向;所述第一http请求,为请求登录所述业务系统的请求;所述第二http请求,是将所述第一http请求携带所述业务票据后生成的。
第三方面,本发明实施例提供一种单点登录系统,包括:第二方面的各种可能的实现方式中任一种可能的实现方式所提供的单点登录装置。
第四方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,执行所述程序时实现如第一方面的各种可能的实现方式中任一种可能的实现方式所提供的单点登录方法的步骤。
第五方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面的各种可能的实现方式中任一种可能的实现方式所提供的单点登录方法的步骤。
本发明实施例提供的单点登录方法、装置及系统,通过将http请求重定向至业务系统的登录页面,根据预先配置的认证方式,对用户信息进行身份认证,能适应各业务系统不同的登录安全需求,支持多种登录方式以及多重身份认证手段,具有更好的便捷性、安全性和易用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例提供的单点登录方法的流程示意图;
图2为根据本发明实施例提供的单点登录装置的结构示意图;
图3为根据本发明实施例提供的单点登录系统的结构示意图;
图4为根据本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了克服现有技术的上述问题,本发明实施例提供一种单点登录方法、装置及系统,其发明构思是,改变了后端(CAS服务端)的流程,CAS服务端重定向到CAS客户端的登录页面,而不是统一的单点登录认证中心的登录页面,保证了各个业务系统的登录页面的风格多样性,从而能使用各业务系统的安全策略和认证方式,适应各业务系统不同的登录安全需求。
图1为根据本发明实施例提供的单点登录方法的流程示意图。如图1所示,该方法包括:步骤S101、接收业务系统发送的重定向请求,根据重定向请求,将第一http请求重定向至业务系统的登录页面,以使得业务系统接收基于登录页面输入的用户信息。
其中,重定向请求,用于当浏览器端发送第一http请求不包含服务票据时,指示业务系统将http请求进行重定向;第一http请求,为请求登录业务系统的请求。
具体地,本发明实施例提供的单点登录方法的执行主体为CAS服务端(CASServer)。
业务系统,可以是CAS客户端(CAS Client),该CAS客户端(CAS Client)可部署有承载业务的软件系统、应用程序或APP。业务系统,可以是采用不同的技术来实现,可以是基于Java,.Net,PHP等语言的实现。
CAS Server和CAS Client进行信息交互的协议主要包括:CAS protocol、SAMLprotocol、OpenID、Oauth。目前CAS Server主要以CAS protocol来和CAS Client进行信息交互。
浏览器端请求登录业务系统时,向该业务系统发送第一http请求,请求登录该业务系统。
业务系统以过滤器的方式保护业务应用的受保护资源,过滤从浏览器端过来的每一个http请求。
业务系统接收第一http请求之后,判断该第一http请求中是否包含业务票据(Service Ticket,ST)。
如果第一http请求中包含业务票据,说明该用户是经过认证的,则业务系统与CAS服务端进行交互,对第一http请求携带的业务票据进行核实,若核实通过,则CAS服务端将核实结果返回业务系统,允许浏览器端登录业务系统;若核实通过,则CAS服务端也将核实结果返回业务系统,不允许浏览器端登录业务系统。
如果第一http请求中不包含业务票据,说明该用户是没有经过认证的,则业务系统通过向CAS服务端发送重定向请求,将第一http请求重定向至CAS服务端。
CAS服务端接收重定向请求之后,与通常的单点登录方法重定向至统一的单点登录认证中心的登录页面不同,CAS服务端将第一http请求重定向至该业务系统的登录页面。
该业务系统的登录页面,可以是自定义的用于登录该业务系统的页面,丰富各个业务系统的页面展示和功能。
用户可以通过浏览器端访问该业务系统的登录页面,并在该页面中输入用户名、密码、短信验证码、生物识别信息或基于数字证书的数据签名等用户信息。
需要说明的是,本发明实施例支持不同业务系统的集成,不同业务系统间免去重复输入密码的操作,提升了业务系统的操作便捷性,提高了用户体验;各业务系统的登录页面风格可进行统一,方便了不同业务系统之间的结合,使得用户在操作上更加简化,效率更高。
步骤S102、接收业务系统发送的用户信息,根据预先配置的认证方式,对用户信息进行身份认证。
具体地,业务系统基于该登录页面接收用户输入的用户信息之后,将用户信息发送至CAS服务端进行认证。
CAS服务端根据预先配置的认证方式,对用户信息进行身份认证。
预先配置的认证方式,可以为基于数据库认证、基于REST(表述性状态传递,Representational State Transfer)认证、级联至第三方认证中心认证、基于SPNEGO认证或接入Windows的AD域认证等。
预先配置的认证方式,是根据不同业务系统的安全策略和认证方式配置的。
例如,基于数据库认证,即使用一个固定数据库表中的用户名和密码进行认证,通过查询具体的数据源,然后对比用户信息即可。可以在CAS服务端配置数据库地址和认证信息的查询语句。针对各自数据库不同的密码加密方式,可以在配置文件中配置不同的密码校验方式。
步骤S103、若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至业务系统。
其中,第二http请求,是将第一http请求携带业务票据后生成的。
具体地,认证通过之后,CAS服务端会产生一个随机的Service Ticket,该ServiceTicket具有相当长度、唯一、不可伪造。
生成Service Ticket之后,CAS服务端将第一http请求携带业务票据后作为第二http请求,将第二http请求重定向至该业务系统。
生成Service Ticket之后,CAS服务端还向浏览器端发送Ticket grantingcookie(TGC,票据授权cookie)。
步骤S104、接收业务系统发送的票据核实请求,对第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统。
具体地,该业务系统接收第二http请求之后,判断该第二http请求中是否包含业务票据,判断结果为包含,向CAS服务端发送票据核实请求,请求CAS服务端对该第二http请求携带的业务票据进行核实。
CAS服务端根据该票据核实请求,对该第二http请求携带的业务票据进行核实。
若核实通过,则CAS服务端将核实结果返回业务系统,允许浏览器端登录业务系统;若核实通过,则CAS服务端也将核实结果返回业务系统,不允许浏览器端登录业务系统。
可以理解的是,由于CAS服务端将TGC发送至浏览器端,用户通过浏览器端请求登录另一业务系统时,该另一业务系统首先仍然会重定向到CAS服务端,此时CAS服务端不再要求进行用户信息的认证,而是首先自动寻找TGC,根据TGC中保存的信息,登录另一业务系统。
本发明实施例通过将http请求重定向至业务系统的登录页面,根据预先配置的认证方式,对用户信息进行身份认证,能适应各业务系统不同的登录安全需求,支持多种登录方式以及多重身份认证手段,具有更好的便捷性、安全性和易用性。
基于上述各实施例的内容,根据预先配置的认证方式,对用户信息进行身份认证的具体步骤包括:基于表述性状态传递接口调用业务系统,对用户信息进行身份认证。
具体地,CAS服务端可以基于各业务系统提供的REST接口进行身份认证。
REST接口地址支持相对路径和绝对路径。
REST接口,包括资源(数据)的表示(json、xml)+状态转化(http verb动作)。REST接口使用URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作。
REST接口,用于规范客户端如何在HTTP层与API提供方进行数据交互。
REST接口可以支持不同的安全策略和不同的认证方式,从而可以适应各业务系统不同的登录安全需求。
本发明实施例基于表述性状态传递接口进行用户信息身份认证,能适应各业务系统不同的登录安全需求,支持多种登录方式以及多重身份认证手段,具有更好的便捷性、安全性和易用性。
基于上述各实施例的内容,基于表述性状态传递接口调用业务系统,对用户信息进行身份认证的具体步骤包括:基于表述性状态传递接口调用业务系统,根据业务系统配置的安全策略和认证方式,对用户信息进行身份认证。
具体的,基于表述性状态传递接口进行用户信息身份认证的方式,可以在各业务系统中使用对应的安全策略,如:密码复杂性校验,登录时间和IP校验等,保证用户账号访问时的准确性和安全性。
基于表述性状态传递接口进行用户信息身份认证的方式,支持不同的REST接口用于提供不同的认证方式,如:指纹认证和人脸识别认证等生物识别方式及数字证书登录方式,基于外部指纹系统、人脸识别系统等所提供的能力,可以增强单点登录系统中对于多因子认证的功能和能力。
本发明实施例基于表述性状态传递接口进行用户信息身份认证,能适应各业务系统不同的登录安全需求,支持多种登录方式以及多重身份认证手段,具有更好的便捷性、安全性和易用性。
基于上述各实施例的内容,根据预先配置的认证方式,对用户信息进行身份认证的具体步骤包括:将用户信息发送至第三方认证中心进行身份认证。
具体地,CAS服务端还可以基于pac4j等接口,级联第三方认证中心,利用外部的第三方认证中心的数据进行身份认证。
第三方认证中心,可以是另一个CAS单点登录装置(即CAS服务端),例如国网统一权限系统(ISC),可以基于CAS级联的模式进行集成认证,CAS服务端就可以连通外部的认证中心并能取到对方的用户信息。
基于pac4j等接口,CAS服务端还可以与互联网进行对接,基于CAS服务端所提供的绑定功能,能把单点登录系统内部的用户与互联网上的用户进行信息绑定,实现通过互联网账号(例如微信、QQ、微博、钉钉等)进行访问具体的业务系统。
本发明实施例通过第三方认证中心进行身份认证,能适应各业务系统不同的登录安全需求,具有更好的便捷性、安全性和易用性。
基于上述各实施例的内容,若认证通过,则生成业务票据之后,还包括:将业务票据存储于Redis中。
具体地,通常的单点登录系统,由各业务系统分别保存自身受到的业务票据,本发明实施例中,业务票据和会话信息(Session)都统一存储于与CAS服务端通信连接的Redis中。
本发明实施例通过CAS服务端将业务票据存储于Redis中,进行统一管理,能提高数据的安全性。
基于上述各实施例的内容,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统的具体步骤包括:若核实通过,则将http请求对应的用户信息发送至业务系统,允许浏览器端登录业务系统。
具体地,业务票据核实通过,CAS服务端根据业务票据可以获取到用户信息,可以将上述用户信息用Json格式返回给业务系统,认证通过,允许浏览器端登录该业务系统。
本发明实施例在核实通过时,将http请求对应的用户信息发送至业务系统,允许浏览器端登录业务系统,免去重复输入密码的操作,能提升业务系统的操作便捷性,能提升用户体验。
图2为根据本发明实施例提供的单点登录装置的结构示意图。基于上述各实施例的内容,如图2所示,该装置包括重定向模块201、身份认证模块202、票据生成模块203和票据核实模块204,其中:
重定向模块201,用于接收业务系统发送的重定向请求,根据重定向请求,将第一http请求重定向至业务系统的登录页面,以使得业务系统接收基于登录页面输入的用户信息;
身份认证模块202,用于接收业务系统发送的用户信息,根据预先配置的认证方式,对用户信息进行身份认证;
票据生成模块203,用于若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至业务系统;
票据核实模块204,用于接收业务系统发送的票据核实请求,对第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统;
其中,重定向请求,用于当浏览器端发送第一http请求不包含服务票据时,指示业务系统将http请求进行重定向;第一http请求,为请求登录业务系统的请求;第二http请求,是将第一http请求携带业务票据后生成的。
需要说明的是,本发明实施例提供的单点登录装置为CAS服务端。
具体地,重定向模块201、身份认证模块202、票据生成模块203和票据核实模块204依次电连接。
如果第一http请求中不包含业务票据,说明该用户是没有经过认证的,则业务系统通过向CAS服务端发送重定向请求,将第一http请求重定向至CAS服务端。
重定向模块201将第一http请求重定向至业务系统的登录页面。
用户可以通过浏览器端访问该业务系统的登录页面,并在该页面中输入用户名、密码、短信验证码、生物识别信息或基于数字证书的数据签名等用户信息。
业务系统基于该登录页面接收用户输入的用户信息之后,将用户信息发送至CAS服务端进行认证。
身份认证模块202根据预先配置的认证方式,对用户信息进行身份认证。
预先配置的认证方式,可以为基于数据库认证、基于REST(表述性状态传递,Representational State Transfer)认证、级联至第三方认证中心认证或接入Windows的AD域认证等。
认证通过之后,票据生成模块203会产生一个随机的Service Ticket,将第一http请求携带业务票据后作为第二http请求,将第二http请求重定向至该业务系统,还向浏览器端发送TGC。
该业务系统接收第二http请求之后,判断该第二http请求中是否包含业务票据,判断结果为包含,向CAS服务端发送票据核实请求,请求CAS服务端对该第二http请求携带的业务票据进行核实。
票据核实模块204根据该票据核实请求,对该第二http请求携带的业务票据进行核实,若核实通过,将核实结果返回业务系统,允许浏览器端登录业务系统。
本发明实施例提供的单点登录装置,用于执行本发明上述各实施例提供的单点登录方法,该单点登录装置包括的各模块实现相应功能的具体方法和流程详见上述单点登录方法的实施例,此处不再赘述。
该单点登录装置用于前述各实施例的单点登录方法。因此,在前述各实施例中的单点登录方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。
本发明实施例通过将http请求重定向至业务系统的登录页面,根据预先配置的认证方式,对用户信息进行身份认证,能适应各业务系统不同的登录安全需求,支持多种登录方式以及多重身份认证手段,具有更好的便捷性、安全性和易用性。
图3为根据本发明实施例提供的单点登录系统的结构示意图。基于上述各实施例的内容,如图3所示,一种单点登录系统包括上述任一单点登录装置实施例提供的单点登录装置,即图3中的CAS Server。
可以理解的是,该单点登录系统还包括多个业务系统,多个业务系统即图3中的CAS Clients。
可以将多个业务系统集成于单点登录系统中,业务系统(又称“平台”)之间无缝集成,只需在一个平台登录,即可访问其他平台的功能。在一个平台中可创建其他平台功能的菜单,解决了不同平台跨域访问的问题。
单点登录系统完全兼容原生CAS开源产品的客户端集成包,提供了Java,.Net,PHP,Perl等多语言的集成文档和SDK。
对于第三方异构平台,如果是基于Spring-security框架来架构平台的就可以通过spring-security-cas来接入单点登录系统,只需要修改相关地址信息即可。如果异构平台是非Spring-security框架应用,可以直接使用基于开源cas-client提供的集成包(cas-client包目前以3.3.3版本为准),然后在web.xml中配置相应过滤器即可,具体接入方式与开源CAS产品基本相同。
单点登录系统,可以在代理模式下将业务票据通过跨浏览器传递,通过菜单或者按钮的点击,实现系统用户无需二次登录系统即可实现跨浏览器下访问系统具体功能。
由于采用的是业务票据的传输,不会泄露登录用户的具体信息,安全性得到进一步的保证。
单点登录系统,可以采用非对称公私钥算法替代传统账户密码传输方式,有效防止重放和中间人攻击,信息数据更安全。
本发明实施例基于表述性状态传递接口进行用户信息身份认证,能适应各业务系统不同的登录安全需求,支持多种登录方式以及多重身份认证手段,具有更好的便捷性、安全性和易用性。
图4为根据本发明实施例提供的电子设备的实体结构示意图。基于上述实施例的内容,如图4所示,该电子设备可以包括:处理器(processor)401、存储器(memory)402和总线403;其中,处理器401和存储器402通过总线403完成相互间的通信;处理器401用于调用存储在存储器402中并可在处理器401上运行的计算机程序指令,以执行上述各方法实施例所提供的单点登录方法,例如包括:接收业务系统发送的重定向请求,根据重定向请求,将第一http请求重定向至业务系统的登录页面,以使得业务系统接收基于登录页面输入的用户信息;接收业务系统发送的用户信息,根据预先配置的认证方式,对用户信息进行身份认证;若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至业务系统;接收业务系统发送的票据核实请求,对第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统;其中,重定向请求,用于当浏览器端发送第一http请求不包含服务票据时,指示业务系统将http请求进行重定向;第一http请求,为请求登录业务系统的请求;第二http请求,是将第一http请求携带业务票据后生成的。
本发明另一实施例公开一种计算机程序产品,计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的单点登录方法,例如包括:接收业务系统发送的重定向请求,根据重定向请求,将第一http请求重定向至业务系统的登录页面,以使得业务系统接收基于登录页面输入的用户信息;接收业务系统发送的用户信息,根据预先配置的认证方式,对用户信息进行身份认证;若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至业务系统;接收业务系统发送的票据核实请求,对第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统;其中,重定向请求,用于当浏览器端发送第一http请求不包含服务票据时,指示业务系统将http请求进行重定向;第一http请求,为请求登录业务系统的请求;第二http请求,是将第一http请求携带业务票据后生成的。
此外,上述的存储器402中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明另一实施例提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的单点登录方法,例如包括:接收业务系统发送的重定向请求,根据重定向请求,将第一http请求重定向至业务系统的登录页面,以使得业务系统接收基于登录页面输入的用户信息;接收业务系统发送的用户信息,根据预先配置的认证方式,对用户信息进行身份认证;若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至业务系统;接收业务系统发送的票据核实请求,对第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回业务系统,允许浏览器端登录业务系统;其中,重定向请求,用于当浏览器端发送第一http请求不包含服务票据时,指示业务系统将http请求进行重定向;第一http请求,为请求登录业务系统的请求;第二http请求,是将第一http请求携带业务票据后生成的。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行上述各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种单点登录方法,其特征在于,包括:
接收业务系统发送的重定向请求,根据所述重定向请求,将第一http请求重定向至所述业务系统的登录页面,以使得所述业务系统接收基于所述登录页面输入的用户信息;
接收所述业务系统发送的所述用户信息,根据预先配置的认证方式,对所述用户信息进行身份认证;
若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至所述业务系统;
接收所述业务系统发送的票据核实请求,对所述第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回所述业务系统,允许所述浏览器端登录所述业务系统;
其中,所述重定向请求,用于当所述浏览器端发送所述第一http请求不包含服务票据时,指示所述业务系统将所述http请求进行重定向;所述第一http请求,为请求登录所述业务系统的请求;所述第二http请求,是将所述第一http请求携带所述业务票据后生成的。
2.根据权利要求1所述的单点登录方法,其特征在于,所述根据预先配置的认证方式,对所述用户信息进行身份认证的具体步骤包括:
基于表述性状态传递接口调用所述业务系统,对所述用户信息进行身份认证。
3.根据权利要求1所述的单点登录方法,其特征在于,所述根据预先配置的认证方式,对所述用户信息进行身份认证的具体步骤包括:
将所述用户信息发送至第三方认证中心进行身份认证。
4.根据权利要求2所述的单点登录方法,其特征在于,所述基于表述性状态传递接口调用所述业务系统,对所述用户信息进行身份认证的具体步骤包括:
基于表述性状态传递接口调用所述业务系统,根据业务系统配置的安全策略和认证方式,对所述用户信息进行身份认证。
5.根据权利要求1所述的单点登录方法,其特征在于,所述若认证通过,则生成业务票据之后,还包括:
将所述业务票据存储于Redis中。
6.根据权利要求1至5任一所述的单点登录方法,其特征在于,所述若核实通过,则将核实结果返回所述业务系统,允许所述浏览器端登录所述业务系统的具体步骤包括:
若核实通过,则将所述http请求对应的用户信息发送至所述业务系统,允许所述浏览器端登录所述业务系统。
7.一种单点登录装置,其特征在于,包括:
重定向模块,用于接收业务系统发送的重定向请求,根据所述重定向请求,将第一http请求重定向至所述业务系统的登录页面,以使得所述业务系统接收基于所述登录页面输入的用户信息;
身份认证模块,用于接收所述业务系统发送的所述用户信息,根据预先配置的认证方式,对所述用户信息进行身份认证;
票据生成模块,用于若认证通过,则生成业务票据,将票据授权cookie发送至浏览器端,并将第二http请求重定向至所述业务系统;
票据核实模块,用于接收所述业务系统发送的票据核实请求,对所述第二http请求携带的业务票据进行核实,若核实通过,则将核实结果返回所述业务系统,允许所述浏览器端登录所述业务系统;
其中,所述重定向请求,用于当所述浏览器端发送所述第一http请求不包含服务票据时,指示所述业务系统将所述http请求进行重定向;所述第一http请求,为请求登录所述业务系统的请求;所述第二http请求,是将所述第一http请求携带所述业务票据后生成的。
8.一种单点登录系统,其特征在于,包括:如权利要求7所述的单点登录装置。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一所述的单点登录方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求至1至6任一所述的单点登录方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010555814.7A CN111786969B (zh) | 2020-06-17 | 2020-06-17 | 单点登录方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010555814.7A CN111786969B (zh) | 2020-06-17 | 2020-06-17 | 单点登录方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111786969A true CN111786969A (zh) | 2020-10-16 |
CN111786969B CN111786969B (zh) | 2024-04-23 |
Family
ID=72756799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010555814.7A Active CN111786969B (zh) | 2020-06-17 | 2020-06-17 | 单点登录方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111786969B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328991A (zh) * | 2020-11-06 | 2021-02-05 | 广州朗国电子科技有限公司 | 基于人脸识别的跨系统单点登录方法及存储介质 |
CN112632491A (zh) * | 2020-12-15 | 2021-04-09 | 读书郎教育科技有限公司 | 一种实现多信息系统共用账号体系的方法 |
CN112765583A (zh) * | 2021-01-27 | 2021-05-07 | 海尔数字科技(青岛)有限公司 | 一种单点登录方法、装置、设备及介质 |
CN112804224A (zh) * | 2021-01-07 | 2021-05-14 | 沈阳麟龙科技股份有限公司 | 一种基于微服务的认证鉴权方法、装置、介质及电子设备 |
CN113411324A (zh) * | 2021-06-17 | 2021-09-17 | 南京网觉软件有限公司 | 基于cas与第三方服务器实现登录认证的方法和系统 |
CN113568726A (zh) * | 2021-07-23 | 2021-10-29 | 中信银行股份有限公司 | 多业务系统处理方法、作业平台、电子设备及存储介质 |
CN116049802A (zh) * | 2023-03-31 | 2023-05-02 | 深圳竹云科技股份有限公司 | 应用单点登陆方法、系统、计算机设备和存储介质 |
CN117319087A (zh) * | 2023-11-28 | 2023-12-29 | 北京车与车科技有限公司 | 基于集中式认证服务的单点登录方法、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060185021A1 (en) * | 2002-03-15 | 2006-08-17 | Microsoft Corporation | Method and system of integrating third party authentication into internet browser code |
CN102377788A (zh) * | 2011-12-13 | 2012-03-14 | 方正国际软件有限公司 | 单点登录系统及其单点登录方法 |
CN102571822A (zh) * | 2012-02-27 | 2012-07-11 | 杭州闪亮科技有限公司 | 单点登录系统及其实现方法 |
CN103414684A (zh) * | 2013-06-05 | 2013-11-27 | 华南理工大学 | 一种单点登录方法及系统 |
CN105141580A (zh) * | 2015-07-27 | 2015-12-09 | 天津灵创智恒软件技术有限公司 | 一种基于ad域的资源访问控制方法 |
CN107786552A (zh) * | 2017-10-19 | 2018-03-09 | 用友网络科技股份有限公司 | 单点登录方法、系统和计算机设备 |
CN110582769A (zh) * | 2019-07-11 | 2019-12-17 | 深圳市鹰硕技术有限公司 | 一种单账号多身份登录方法、装置、服务器及存储介质 |
-
2020
- 2020-06-17 CN CN202010555814.7A patent/CN111786969B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060185021A1 (en) * | 2002-03-15 | 2006-08-17 | Microsoft Corporation | Method and system of integrating third party authentication into internet browser code |
CN102377788A (zh) * | 2011-12-13 | 2012-03-14 | 方正国际软件有限公司 | 单点登录系统及其单点登录方法 |
CN102571822A (zh) * | 2012-02-27 | 2012-07-11 | 杭州闪亮科技有限公司 | 单点登录系统及其实现方法 |
CN103414684A (zh) * | 2013-06-05 | 2013-11-27 | 华南理工大学 | 一种单点登录方法及系统 |
CN105141580A (zh) * | 2015-07-27 | 2015-12-09 | 天津灵创智恒软件技术有限公司 | 一种基于ad域的资源访问控制方法 |
CN107786552A (zh) * | 2017-10-19 | 2018-03-09 | 用友网络科技股份有限公司 | 单点登录方法、系统和计算机设备 |
CN110582769A (zh) * | 2019-07-11 | 2019-12-17 | 深圳市鹰硕技术有限公司 | 一种单账号多身份登录方法、装置、服务器及存储介质 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328991A (zh) * | 2020-11-06 | 2021-02-05 | 广州朗国电子科技有限公司 | 基于人脸识别的跨系统单点登录方法及存储介质 |
CN112632491A (zh) * | 2020-12-15 | 2021-04-09 | 读书郎教育科技有限公司 | 一种实现多信息系统共用账号体系的方法 |
CN112804224A (zh) * | 2021-01-07 | 2021-05-14 | 沈阳麟龙科技股份有限公司 | 一种基于微服务的认证鉴权方法、装置、介质及电子设备 |
CN112765583A (zh) * | 2021-01-27 | 2021-05-07 | 海尔数字科技(青岛)有限公司 | 一种单点登录方法、装置、设备及介质 |
CN113411324A (zh) * | 2021-06-17 | 2021-09-17 | 南京网觉软件有限公司 | 基于cas与第三方服务器实现登录认证的方法和系统 |
CN113568726A (zh) * | 2021-07-23 | 2021-10-29 | 中信银行股份有限公司 | 多业务系统处理方法、作业平台、电子设备及存储介质 |
CN113568726B (zh) * | 2021-07-23 | 2024-03-26 | 中信银行股份有限公司 | 多业务系统处理方法、作业平台、电子设备及存储介质 |
CN116049802A (zh) * | 2023-03-31 | 2023-05-02 | 深圳竹云科技股份有限公司 | 应用单点登陆方法、系统、计算机设备和存储介质 |
CN116049802B (zh) * | 2023-03-31 | 2023-07-18 | 深圳竹云科技股份有限公司 | 应用单点登陆方法、系统、计算机设备和存储介质 |
CN117319087A (zh) * | 2023-11-28 | 2023-12-29 | 北京车与车科技有限公司 | 基于集中式认证服务的单点登录方法、装置及存储介质 |
CN117319087B (zh) * | 2023-11-28 | 2024-02-27 | 北京车与车科技有限公司 | 基于集中式认证服务的单点登录方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111786969B (zh) | 2024-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111786969B (zh) | 单点登录方法、装置及系统 | |
US11838324B2 (en) | Secure web container for a secure online user environment | |
CN108901022B (zh) | 一种微服务统一鉴权方法及网关 | |
US20240106865A1 (en) | Secure Web Container for a Secure Online User Environment | |
US10333927B2 (en) | Simulated SSO functionality by means of multiple authentication procedures and out-of-band communications | |
US10305882B2 (en) | Using a service-provider password to simulate F-SSO functionality | |
US8418238B2 (en) | System, method, and apparatus for managing access to resources across a network | |
US9794227B2 (en) | Automatic detection of authentication methods by a gateway | |
US9258292B2 (en) | Adapting federated web identity protocols | |
CA2689847C (en) | Network transaction verification and authentication | |
KR20220133206A (ko) | 신분 인증 방법 및 장치, 그리고 관련 디바이스 | |
CN111698250B (zh) | 访问请求处理方法、装置、电子设备及计算机存储介质 | |
CN113630377B (zh) | 托管移动设备的单点登录 | |
JP2020502616A (ja) | フェデレーテッド・シングル・サインオン(sso)のための非侵入型セキュリティの実施 | |
CN115021991A (zh) | 未经管理的移动设备的单点登录 | |
US11012495B1 (en) | Remote service credentials for establishing remote sessions with managed devices | |
Sharma et al. | Identity and access management-a comprehensive study | |
CN113922982A (zh) | 登录方法、电子设备及计算机可读存储介质 | |
JP2017523508A (ja) | セキュアな統合型クラウドストレージ | |
WO2023287884A1 (en) | Remapping of uniform resource locators for accessing network applications | |
CN115834252B (zh) | 一种服务访问方法及系统 |
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 |