CN104618449A - 一种实现web单点登录的方法及装置 - Google Patents

一种实现web单点登录的方法及装置 Download PDF

Info

Publication number
CN104618449A
CN104618449A CN201410855128.6A CN201410855128A CN104618449A CN 104618449 A CN104618449 A CN 104618449A CN 201410855128 A CN201410855128 A CN 201410855128A CN 104618449 A CN104618449 A CN 104618449A
Authority
CN
China
Prior art keywords
web server
object web
client
fort machine
cookie information
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
CN201410855128.6A
Other languages
English (en)
Other versions
CN104618449B (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.)
Nsfocus Technologies Inc
Nsfocus Technologies Group Co Ltd
Original Assignee
NSFOCUS Information Technology Co Ltd
Beijing NSFocus Information Security Technology 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 NSFOCUS Information Technology Co Ltd, Beijing NSFocus Information Security Technology Co Ltd filed Critical NSFOCUS Information Technology Co Ltd
Priority to CN201410855128.6A priority Critical patent/CN104618449B/zh
Publication of CN104618449A publication Critical patent/CN104618449A/zh
Application granted granted Critical
Publication of CN104618449B publication Critical patent/CN104618449B/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/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • 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
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services

Landscapes

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

Abstract

本发明公开了一种实现web单点登录方法及装置,方法为,将客户端的代理服务器预设为堡垒机,通过该堡垒机为该客户端设置跨域访问cookie信息,当客户端需要进行单点登录时,直接向堡垒机发送该跨域访问cookie信息,客户端仅根据堡垒机发送的包含用户信息的响应数据包即可实现单点登录,无须在客户端中安装专用登录***,有效降低了实现单点登录过程的复杂度;并且,客户端仅通过跨域访问cookie信息以及响应数据包实现单点登录,对客户端浏览器没有任何限制,能够适用于各种能够解析上述跨域访问cookie信息以及响应数据包的浏览器,适用性强。

Description

一种实现web单点登录的方法及装置
技术领域
本发明涉及网络安全领域,尤其涉及一种实现web单点登录的方法及装置。
背景技术
堡垒机是一种运维安全审计***,其主要的功能是单点登录、帐号管理、资源授权和操作审计。堡垒机通过对常用的运维协议(如RDP、VNC、HTTP等)采用协议代理的方式,切断了运维人员对服务器的直接访问;具体的,运维人员对服务器进行的所有运维操作都需要经过堡垒机进行。堡垒机将运维人员的操作记录至日志文件中,供审计人员进行安全审计和追责。
由此可见,通过堡垒机能够实现单点登录功能,其中,单点登录是指在应用***中,用户只需要登录一次即可访问所有相互信任的应用***。采用单点登录方式,能够简化账号登录过程,保护账号和密码的安全,以及便于对账号的统一管理。
目前,堡垒机实现单点登录的过程为:在客户端安装专用登录***(软件),在该专用登录***中配置目的web服务器的登录信息,如用户名、密码、登录按钮等;当专用登录***检测到用户需要访问的目标web服务器时,专用登录***即启动IE(Internet Explorer;网络探路者)浏览器,在IE浏览器中访问目的web服务器;并由专用登录***进行用户名密码代填,实现单点登录过程。专用登录***与IE浏览器之间的信息交互通过浏览器的OLE(Object Linkingand Embedding;对象连接与嵌入)自动化接口实现。OLE技术仅支持IE内核的浏览器,不能支持其他浏览器;并且,采用上述单点登录方式,需要在客户端安装软件,实现过程较为复杂。
综上所述,现有技术中,采用堡垒机实现单点登录方式存在实现复杂度高以及适用范围小的问题。
发明内容
本发明实施例提供一种实现web单点登录的方法及装置,用以解决现有技术中的单点登录方式存在实现复杂度高以及适用范围小的问题。
本发明实施例提供的具体技术方案如下:
一种实现web单点登录的方法,应用于基于堡垒机的***架构,所述基于堡垒机的***包括客户端、目的web服务器、以及具备代理服务功能的堡垒机,所述方法包括:
所述堡垒机接收客户端发送的目的web服务器访问请求;其中,所述目的web服务器访问请求中携带跨域访问cookie信息,且所述跨域访问cookie信息由所述堡垒机根据在本地的目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息生成;所述客户端为将所述堡垒机作为代理服务器的客户端;
所述堡垒机根据所述跨域访问cookie信息,向目的web服务器转发所述目的web服务器访问请求,通知所述目的web服务器根据所述目的web服务器访问请求生成响应数据包;
当所述堡垒机确定所述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在所述响应数据包中添加所述客户端登录所述目的web服务器的用户信息;
所述堡垒机将添加用户信息的响应数据包发送至所述客户端,指示所述客户端根据所述添加用户信息的响应数据包单点登录至所述目的web服务器。
一种实现web单点登录的装置,应用于基于堡垒机的***架构,所述基于堡垒机的***包括客户端、目的web服务器,所述方法包括:
接收单元,用于接收客户端发送的目的web服务器访问请求;其中,所述目的web服务器访问请求中携带跨域访问cookie信息和目的web服务器标识,且所述跨域访问cookie信息为根据在目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息生成;所述客户端为将本地作为代理服务器的客户端;
发送单元,用于根据所述跨域访问cookie信息,向目的web服务器转发所述目的web服务器访问请求,通知所述目的web服务器根据所述目的web服务器访问请求生成响应数据包;
添加单元,用于当确定所述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在所述响应数据包中添加所述客户端登录所述目的web服务器的用户信息;
发送单元,还用于将添加用户信息的响应数据包发送至所述客户端,指示所述客户端根据所述添加用户信息的响应数据包单点登录至所述目的web服务器。
本发明实施例中,在目的web服务器和客户端之间设置具备代理服务功能的堡垒机,当堡垒机接收到客户端发送的目的web服务器访问请求时,即根据跨域访问cookie信息,直接将客户端发送的目的web服务器访问请求转发至目的web服务器;并将目的web服务器生成的响应数据包添加登录该目的web服务器的用户信息后发送至客户端;客户端加载上述添加用户信息的响应数据包,单点登录至目的web服务器。采用本发明是技术方案,将客户端的代理服务器预设为堡垒机,通过该堡垒机为该客户端设置跨域访问cookie信息,当客户端需要进行单点登录时,直接向堡垒机发送该跨域访问cookie信息,客户端仅根据堡垒机发送的包含用户信息的响应数据包即可实现单点登录,无须在客户端中安装专用登录***,有效降低了实现单点登录过程的复杂度;并且,客户端仅通过跨域访问cookie信息以及响应数据包实现单点登录,对客户端浏览器没有任何限制,能够适用于各种能够解析上述跨域访问cookie信息以及响应数据包的浏览器,适用性强。
附图说明
图1为本发明实施例中基于堡垒机的***架构示意图;
图2为本发明实施例中实现web单点登录的流程图;
图3为本发明实施例中web单点登录过程信令交互示意图;
图4为本发明实施例中具体应用场景下单点登录流程图;
图5为本发明实施例中实现web单点登录装置结构示意图。
具体实施方式
为了解决现有技术中的单点登录方式存在实现复杂度高以及适用范围小的问题。本发明实施例中,当堡垒机接收到客户端发送的目的web服务器访问请求时,即根据跨域访问cookie信息,直接将客户端发送的目的web服务器访问请求转发至目的web服务器;并将目的web服务器生成的响应数据包添加登录该目的web服务器的用户信息后发送至客户端;客户端加载上述添加用户信息的响应数据包,单点登录至目的web服务器。采用本发明是技术方案,将客户端的代理服务器预设为堡垒机,通过该堡垒机为该客户端设置跨域访问cookie信息,当客户端需要进行单点登录时,直接向堡垒机发送该跨域访问cookie信息,客户端仅根据堡垒机发送的包含用户信息的响应数据包即可实现单点登录,无须在客户端中安装专用登录***,有效降低了实现单点登录过程的复杂度;并且,客户端仅通过跨域访问cookie信息以及响应数据包实现单点登录,对客户端浏览器没有任何限制,能够适用于各种能够解析上述跨域访问cookie信息以及响应数据包的浏览器,适用性强。
参阅图1所示,为本发明实施例中基于堡垒机的***架构示意图,该基于堡垒机的***包括客户端、堡垒机、目的web服务器。其中,客户端,用于向用户呈现操作界面,并向堡垒机发送目的web服务器登录请求等;堡垒机用于转发客户端至目的web服务器的数据包,以及转发目的web服务器至客户端的数据包,且该堡垒机中包含目的web服务器的管理界面,通过该目的web服务器的管理界面,能够在堡垒机中设置各个目的web服务器的服务器信息,以对各个目的web服务器进行管理,该服务器信息包括服务器标识和可访问域名的对应关系,以及每一个目的web服务器对应的登录界面,该登录界面即为该目的web服务器对应的主页面;目的web服务器,用于响应客户端发送的请求,一个目的web服务器对应于一个或者多个可访问域名,如百度服务器对应的可访问域名包括www.***.com和s1.bdstatic.com等可访问域名。
下面结合说明书附图,对本发明实施例作进一步详细描述。
参阅图2所示,本发明实施例中,实现单点登录的过程包括:
步骤200:堡垒机接收客户端发送的目的web服务器访问请求。
本发明实施例中,在客户端的浏览器中将代理服务器设置为该堡垒机,即在浏览器的代理服务器选项中,将代理服务器地址设置为堡垒机的IP地址,以及将代理服务器端口设置为堡垒机中web代理监听的端口,使当客户端运行浏览器应用程序时,即可通过该IP地址和堡垒机中web代理监听的端口连接至堡垒机,与堡垒机进行信息交互。
登录目的web服务器的管理界面,在该目的web服务器的管理界面中预先配置堡垒机管辖下的各个目的web服务器标识及其对应的可访问域名。可选的,将上述设置完毕的各个目的web服务器标识及其对应的可访问域名保存在堡垒机的数据库,并且,在该堡垒机的数据库中可以保存可访问域名映射表,该可访问域名映射表中包含堡垒机管辖的所有目的web服务器标识,以及每一个目的web服务器标识对应的至少一个可访问域名。在该数据库中可以保存任意一目的web服务器对应的全部可访问域名,也可以保存该任意一目的web服务器对应的部分可访问域名。此外,还需要在堡垒机的目的web服务器的管理界面中预先配置堡垒机管辖的每一个目的web服务器对应的登录界面,针对每一个目的web服务器,配置该目的web服务器对应的登录界面,即为配置该登录界面中的用户名标签、密码标签、以及主账户信息和从账户信息、登录界面的路径信息等信息,其中,该从账户信息为客户端登录上述目的web服务器的用户名和密码信息。
进一步的,对上述目的web服务器的管理界面中的信息配置完毕之后,堡垒机进行跨域访问设置,具体包括:客户端生成可访问域请求发送至堡垒机,以向堡垒机请求有哪些可访问域名;堡垒机接收到客户端发送的可访问域请求时,根据可访问域请求中携带的URL(Uniform Resource Locator,统一资源定位符),并由该URL获取cookie信息字符串;堡垒机从堡垒机的数据库中获取目的web服务器对应的至少一个可访问域名;堡垒机根据上述cookie信息字符串,分别生成各个可访问域名对应的指定标签;并根据各个可访问域名对应的指定标签,生成包含所有指定标签的响应消息发送至客户端,指示客户端根据上述响应消息中包含的指定标签,生成相应可访问域名对应的跨域访问设置请求;当堡垒机根据客户端发送的跨域访问设置请求时,进行跨域访问设置,并生成跨域访问cookie信息;堡垒机将上述跨域访问cookie信息发送至客户端,指示客户端根据上述跨域访问cookie信息生成目的web服务器访问请求。
具体的,堡垒机根据cookie信息字符串,获取相应的cookie信息;并将该cookie信息作为跨域访问cookie信息;其中,该cookie信息包含目的web服务器标识,用户信息,用户信息包括主账户信息和从账户信息,该主账户信息为登录堡垒机的用户名和密码信息。
在实际应用场景中,上述指定标签即为iframe标签,该iframe标签能够触发客户端反馈设置需要访问的可访问域名信息。其中,cookie信息可以通过以下形式发送至堡垒机:
http://SASH_IP:proxy_port/?NSSF_PASS&cookie
其中,SAHF_IP表示堡垒机的IP地址;proxy_port表示堡垒机的端口标识;NSSF_PASS为跨域配置请求标志;cookie表示需要设置的cookie信息,该cookie信息包括目的web服务器标识,主账户信息,从账户信息。例如,上述目的web服务器访问请求可以表示为:
http://10.245.34.132:50010/?NSSF_PASS&8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF
堡垒机生成的包含指定标签的响应消息可以通过如下代码实现:
<iframe src="http://XXX/?cookie&NSSF_BBPAAM&可访问域名">
其中,上述指定标签为iframe标签,该实施例仅给出了iframe标签中的特定字段对应的代码,该特定字段可以为src字段;http://XXX/表示需要设置跨域cookie请求的主机(与可访问域名相关);cookie表示需要设置的cookie信息,该cookie信息包括目的web服务器标识,主账户信息,从账户信息;可访问域名表示目的web服务器对应的至少一个可访问域名;NSSF_BBPAAM为设置跨域cookie的iframe标签请求的标志。例如,上述包含指定标签的响应消息可以为如下形式:
<iframe
src="http://www.***.com/?8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF&NSSF_BBPAAM&www.***.com">
又如,上述包含指定标签的响应消息可以为如下形式:
<iframe
src="http://s1.bdstatic.com/?8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF&NSSF_BBPAAM&s1.bdstatic.com">
可选的,当目的web服务器对应多个可访问域名时,堡垒机向客户端发送一条响应消息,该响应消息中包含多个Iframe标签,每一个Iframe标签包含一个可访问域名。
客户端根据堡垒机发送的响应消息,生成的跨域访问设置请求可以采用如下格式:
http://XXX/?cookie&NSSF_BBPAAM&可访问域名
其中,http://XXX/表示需要设置跨域访问的主机;cookie表示需要设置的cookie信息,该cookie信息包括目的web服务器标识,主账户信息,从账户信息;可访问域名表示目的web服务器对应的一个可访问域名;NSSF_BBPAAM为设置跨域cookie的iframe标签请求的标志。例如,上述跨域访问设置请求可以为如下形式:
http://www.***.com/?8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF&NSSF_BBPAAM&www.***.com
又如,上述跨域访问设置请求可以为如下形式:
http://www.bdstatic.com/?8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF&NSSF_BBPAAM&s1.bdstatic.com
本发明实施例中,当堡垒机发送的响应消息中包含的可访问域名数目为一个时,客户端根据该可访问域名向堡垒机发送一条跨域访问设置请求;当堡垒机发送的响应消息中包含的可访问域名数目为多个时,客户端根据可访问域名和可访问域名的数目生成相应数目个跨域访问设置请求发送至堡垒机。
基于上述跨域访问设置请求,堡垒机在本地进行跨域访问设置,并生成跨域访问cookie信息;其中,堡垒机可以通过如下代码在本地进行跨域访问设置:
HTTP/1.1200 Ok\r\n
…\r\n
set-cookie:NSSF_BBPA_目的主机标识=cookie信息;path=/;domain=可访问域名\r\n
…\r\n
通过set-cookie字段,进行可访问域名的跨域cookie信息设置,例如,针对***对应的两个可访问域,其跨域访问设置可以通过如下形式表示:
针对第一个可访问域名:
HTTP/1.1200 Ok\r\n
…\r\n
set-cookie:
NSSF_BBPA_***=8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF;
path=/;domain=www.***.com\r\n
…\r\n
针对第二个可访问域名:
HTTP/1.1200 Ok\r\n
…\r\n
set-cookie:
NSSF_BBPA_***=8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF;
path=/;domain=s1.bdstatic.com\r\n
…\r\n
堡垒机向客户端发送的跨域访问cookie信息,可以通过如下形式表示:
GET/HTTP/1.1\r\n
Host:www.***.com\r\n
Cookie:
NSSF_BBPA_***=8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF\r\n
或者,
GET/HTTP/1.1\r\n
Host:s1.bdstatic.com\r\n
Cookie:
NSSF_BBPA_***=8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF\r\n
其中,“Cookie:
NSSF_BBPA_***=8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF\r\n”和“Cookie:
NSSF_BBPA_***=8348ED79FE93B25120AF1BE73146B28B117E078E1A4CADCF\r\n”即为跨域访问cookie信息。
进一步的,客户端在客户端中保存上述跨域访问cookie信息和可访问域名之间的对应关系,当接收到用户指示需要访问上述目的web服务器时,即将客户端中保存的cookie信息添加至目的web服务器访问请求,发送至堡垒机。
步骤210:堡垒机根据上述跨域访问cookie信息,向目的web服务器转发目的web服务器访问请求,通知目的web服务器根据该目的web服务器访问请求生成响应数据包。
本发明实施例中,基于上述跨域访问cookie信息设置过程,客户端向堡垒机发送包含跨域访问cookie信息的目的web服务器访问请求,堡垒机根据该跨域访问cookie信息中包含的主账户信息,对该客户端的身份进行验证;当客户端身份验证通过时,堡垒机根据目的web服务器访问请求中携带的目的web服务器的登录界面路径信息和目的web服务器标识,在数据库中查询上述目的web服务器的登录界面的路径信息;当该目的web服务器访问请求中携带的目的web服务器的登录界面路径信息和查询得到的目的web服务器的登录界面的路径信息相同时,堡垒机确定上述目的web服务器访问请求中携带的目的web服务器的登录界面路径信息正确,此时,可以通过判断字段对该判定结果进行标识,如当目的web服务器的登录界面路径信息正确时,设置判断字段为single_login=1,目的web服务器的登录界面路径信息不同时,设置判断字段为single_login=0,并将上述判断字段和登录请求的对应关系缓存至堡垒机中。无论目的web服务器访问请求中携带的目的web服务器的登录界面路径信息是否正确,堡垒机均将上述目的web服务器访问请求发送至目的web服务器。
进一步的,目的web服务器生成的响应数据包即为HTML(HyperTextMark-up Language;超文本标记语言)格式的代码。
步骤220:当堡垒机确定上述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在该响应数据包中添加客户端对应的登录上述目的web服务器的用户信息。
本发明实施例中,堡垒机根据本地缓存的判断字段来判断目的web服务器的登录界面路径信息是否正确;且当堡垒机确定上述目的web服务器的登录界面路径信息正确时,根据响应数据包中包含的登录界面信息,在该登录界面信息中添加客户端对应的登录上述目的web服务器的用户信息。
可选的,上述登录界面信息中添加客户端对应的用户信息的过程可以通过JS(Javascript)代码实现。
步骤230:堡垒机将添加用户信息的响应数据包发送至客户端,指示客户端根据该添加用户信息的响应数据包单点登录至所述目的web服务器。
本发明实施例中,客户端接收到添加用户信息的响应数据包后,即运行响应数据包中包含的HTML代码和JS代码,JS代码会在生成的目的web服务器的登录界面中的用户名标签对应的输入框中自动添加用户名,以及在密码标签对应的输入框中自动添加密码,并模拟点击登录按钮操作,即用户仅需要在堡垒机中输入主账户信息登录堡垒机,当用户需要访问堡垒机管辖下的目的web服务器时,由JS代码模拟登录到堡垒机管辖下的目的web服务器以及其他web服务器,从而单点登录至web目的服务器。
JS代码由堡垒机根据目的web服务器的管理界面中的服务器信息而自动生成,上述JS代码可以参阅如下形式:
其中,username_tag,password_tag和login_button分别表示用户名,密码,登录按钮标签的属性;username_value和password_value分别表示登录到目标服务器的用户名,密码的值。
进一步的,当目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的目的web服务器登录界面的路径信息不同时,堡垒机将上述响应数据包发送至客户端。
基于上述技术方案,参阅图3所示为本发明实施例中设置跨域访问过程中,客户端与堡垒机之间的信令交互示意图。其中,客户端向堡垒机发送可访问域请求,该可访问域请求中包含cookie信息字符串;堡垒机根据该cookie信息字符串,生成包含指定标签的响应消息发送至客户端;客户端根据该包含指定标签的响应消息,生成跨域访问设置请求发送至堡垒机;堡垒机根据该跨域访问设置请求,生成跨域访问cookie信息发送至客户端;客户端根据该跨域访问cookie信息生成目的web服务器登录请求;堡垒机将目的web服务器发送的响应数据包进行处理后发送至客户端。
采用本发明技术方案,堡垒机根据跨域访问cookie信息在目的web服务器发送的响应数据包中***JS代码,该JS代码在浏览器加载完目的web服务器登录页面之后就会执行,进行用户名和密码代填以及提交表单的操作,客户端能够通过任意一款浏览器即可实现单点登录;无须对***进行改造,由于堡垒机对应的登录***与目的web服务器的具体内容无关,新增以及删除目的web服务器,均无须要在堡垒机管辖下的任意一目的web服务器上修改任何东西,有效降低了***改造难度。
基于上述技术方案,参阅图4所示,以下结合具体应用场景,详细介绍单点登录过程:
步骤400:客户端向堡垒机发送目的web服务器访问请求。
步骤401:堡垒机接收该目的web服务器访问请求,并对该目的web服务器访问请求进行解析,获取目的web服务器访问请求中包含的cookie信息。
步骤402:堡垒机根据cookie信息判断登录路径是否正确,若正确,执行步骤403,否则,执行步骤404;
步骤403:堡垒机设置判断字段single_login=1。
步骤404:堡垒机设置判断字段single_login=0
步骤405:堡垒机将目的web服务器访问请求发送至相应的目的web服务器。
步骤406:目的web服务器根据该目的web服务器访问请求生成响应数据包。
步骤407:堡垒机接收目的web服务器发送的响应数据包。
步骤408:堡垒机判断single_login是否为1,若是,执行步骤409;否则,执行步骤410。
步骤409:堡垒机在上述响应数据包中添加包含用户信息的JS代码,并将该添加JS代码的响应数据包发送至客户端。
步骤410:堡垒机将响应数据包发送至客户端。
步骤411:客户端根据响应数据包生成相应的界面。
基于上述技术方案,参阅图5所示,本发明实施例提供一种实现web单点登录的装置,应用于基于堡垒机的***架构,所述基于堡垒机的***包括客户端、目的web服务器,所述装置包括接收单元50,发送单元51,添加单元52,其中:
接收单元50,用于接收客户端发送的目的web服务器访问请求;其中,所述目的web服务器访问请求中携带跨域访问cookie信息和目的web服务器标识,且所述跨域访问cookie信息为根据在目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息生成;所述客户端为将本地作为代理服务器的客户端;
发送单元51,用于根据所述跨域访问cookie信息,向目的web服务器转发所述目的web服务器访问请求,通知所述目的web服务器根据所述目的web服务器访问请求生成响应数据包;
添加单元52,用于当确定所述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在所述响应数据包中添加所述客户端登录所述目的web服务器的用户信息;
发送单元51,还用于将添加用户信息的响应数据包发送至所述客户端,指示所述客户端根据所述添加用户信息的响应数据包单点登录至所述目的web服务器。
进一步的,上述装置还包括跨域访问cookie信息生成单元53,用于:当接收到客户端发送的可访问域请求时,根据所述可访问域请求中携带的URL请求,获取所述URL中包含的cookie信息字符串;根据所述目的web服务器标识,从数据库中获取所述目的web服务器标识对应的至少一个可访问域名;其中,所述数据库中保存有在所述目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息,所述服务器信息包括服务器标识和可访问域名的对应关系,以及服务器登录界面;基于所述cookie信息字符串,分别生成各个可访问域名对应的指定标签;以及根据所述各个可访问域名对应的指定标签,生成包含所有指定标签的响应消息发送至所述客户端,指示所述客户端根据所述各个指定标签,生成相应的可访问域名对应的跨域访问设置请求;当接收到所述客户端发送的跨域访问设置请求时,根据所述cookie信息字符串,进行跨域访问设置,并生成跨域访问cookie信息。
可选的,所述跨域访问cookie信息生成单元53,具体用于:根据所述cookie信息字符串,获取相应的cookie信息,并将所述cookie信息作为作为跨域访问cookie信息;其中,所述cookie信息中包括目的web服务器的标识,主账户信息以及从账户信息。
进一步的,上述装置还包括确定单元54,用于:获取所述目的web服务器访问请求中携带的目的web服务器的登录界面路径信息和目的web服务器标识;根据所述目的web服务器标识,在数据库中查询所述目的web服务器的登录界面的路径信息;当所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的所述目的web服务器登录界面的路径信息相同时,确定所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息正确。
可选的,所述发送单元51,还用于:当所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的所述目的web服务器登录界面的路径信息不同时,将所述响应数据包发送至所述客户端。
综上所述,堡垒机接收客户端发送的目的web服务器访问请求;堡垒机根据上述跨域访问cookie信息,向目的web服务器转发目的web服务器访问请求,通知目的web服务器根据该目的web服务器访问请求生成响应数据包;当堡垒机确定上述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在该响应数据包中添加客户端对应的登录上述目的web服务器的用户信息;堡垒机将添加用户信息的响应数据包发送至客户端,指示客户端根据该添加用户信息的响应数据包单点登录至所述目的web服务器。采用本发明是技术方案,将客户端的代理服务器预设为堡垒机,通过该堡垒机为该客户端设置跨域访问cookie信息,当客户端需要进行单点登录时,直接向堡垒机发送该跨域访问cookie信息,客户端仅根据堡垒机发送的包含用户信息的响应数据包即可实现单点登录,无须在客户端中安装专用登录***,有效降低了实现单点登录过程的复杂度;并且,客户端仅通过跨域访问cookie信息以及响应数据包实现单点登录,对客户端浏览器没有任何限制,能够适用于各种能够解析上述跨域访问cookie信息以及响应数据包的浏览器,适用性强。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种实现web单点登录的方法,应用于基于堡垒机的***架构,其特征在于,所述基于堡垒机的***包括客户端、目的web服务器、以及具备代理服务功能的堡垒机,所述方法包括:
所述堡垒机接收客户端发送的目的web服务器访问请求;其中,所述目的web服务器访问请求中携带跨域访问cookie信息,且所述跨域访问cookie信息由所述堡垒机根据在本地的目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息生成;所述客户端为将所述堡垒机作为代理服务器的客户端;
所述堡垒机根据所述跨域访问cookie信息,向目的web服务器转发所述目的web服务器访问请求,通知所述目的web服务器根据所述目的web服务器访问请求生成响应数据包;
当所述堡垒机确定所述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在所述响应数据包中添加所述客户端登录所述目的web服务器的用户信息;
所述堡垒机将添加用户信息的响应数据包发送至所述客户端,指示所述客户端根据所述添加用户信息的响应数据包单点登录至所述目的web服务器。
2.如权利要求1所述的方法,其特征在于,所述堡垒机根据在本地的目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息生成跨域访问cookie信息的方法,包括:
所述堡垒机接收客户端发送的可访问域请求,并根据所述可访问域请求中携带的统一资源定位符URL,获取所述URL中包含的cookie信息字符串;
所述堡垒机根据所述目的web服务器标识,从所述堡垒机的数据库中获取所述目的web服务器标识对应的至少一个可访问域名;其中,所述数据库中保存有在所述目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息,所述服务器信息包括服务器标识和可访问域名的对应关系,以及服务器登录界面;
基于所述cookie信息字符串,分别生成各个可访问域名对应的指定标签;以及
根据所述各个可访问域名对应的指定标签,生成包含所有指定标签的响应消息发送至所述客户端,指示所述客户端根据所述各个指定标签,生成相应的可访问域名对应的跨域访问设置请求;
当所述堡垒机接收到所述客户端发送的跨域访问设置请求时,根据所述cookie信息字符串,进行跨域访问设置,并生成跨域访问cookie信息。
3.如权利要求2所述的方法,其特征在于,所述堡垒机根据所述cookie信息字符串,进行跨域访问设置,并生成跨域访问cookie信息,具体包括:
所述堡垒机根据所述cookie信息字符串,获取相应的cookie信息,并将所述cookie信息作为跨域访问cookie信息;其中,所述cookie信息中包括目的web服务器的标识,主账户信息以及从账户信息。
4.如权利要求1-3任一项所述的方法,其特征在于,所述堡垒机确定所述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息是否正确的方法,包括:
所述堡垒机获取所述目的web服务器访问请求中携带的目的web服务器的登录界面路径信息和目的web服务器标识;
所述堡垒机根据所述目的web服务器标识,在数据库中查询所述目的web服务器的登录界面的路径信息;
当所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的所述目的web服务器登录界面的路径信息相同时,所述堡垒机确定所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息正确。
5.如权利要求4所述的方法,其特征在于,当所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的所述目的web服务器登录界面的路径信息不同时,进一步包括:
所述堡垒机将所述响应数据包发送至所述客户端。
6.一种实现web单点登录的装置,应用于基于堡垒机的***架构,其特征在于,所述基于堡垒机的***包括客户端、目的web服务器,所述装置包括:
接收单元,用于接收客户端发送的目的web服务器访问请求;其中,所述目的web服务器访问请求中携带跨域访问cookie信息和目的web服务器标识,且所述跨域访问cookie信息为根据在目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息生成;所述客户端为将本地作为代理服务器的客户端;
发送单元,用于根据所述跨域访问cookie信息,向目的web服务器转发所述目的web服务器访问请求,通知所述目的web服务器根据所述目的web服务器访问请求生成响应数据包;
添加单元,用于当确定所述目的web服务器访问请求中携带的目的web服务器的登录界面的路径信息正确时,在所述响应数据包中添加所述客户端登录所述目的web服务器的用户信息;
发送单元,还用于将添加用户信息的响应数据包发送至所述客户端,指示所述客户端根据所述添加用户信息的响应数据包单点登录至所述目的web服务器。
7.如权利要求6所述的装置,其特征在于,还包括跨域访问cookie信息生成单元,用于:
接收客户端发送的可访问域请求,并根据所述可访问域请求中携带的统一资源定位符URL,获取所述URL中包含的cookie信息字符串;根据所述目的web服务器标识,从数据库中获取所述目的web服务器标识对应的至少一个可访问域名;其中,所述数据库中保存有在所述目的web服务器的管理界面中预先设置的所述目的web服务器的服务器信息,所述服务器信息包括服务器标识和可访问域名的对应关系,以及服务器登录界面;基于所述cookie信息字符串,分别生成各个可访问域名对应的指定标签;以及根据所述各个可访问域名对应的指定标签,生成包含所有指定标签的响应消息发送至所述客户端,指示所述客户端根据所述各个指定标签,生成相应的可访问域名对应的跨域访问设置请求;当接收到所述客户端发送的跨域访问设置请求时,根据所述cookie信息字符串,进行跨域访问设置,并生成跨域访问cookie信息。
8.如权利要求7所述的装置,其特征在于,所述跨域访问cookie信息生成单元,具体用于:
根据所述cookie信息字符串,获取相应的cookie信息,并将所述cookie信息作为作为跨域访问cookie信息;其中,所述cookie信息中包括目的web服务器的标识,主账户信息以及从账户信息。
9.如权利要求6-8任一项所述的装置,其特征在于,还包括确定单元,用于:
获取所述目的web服务器访问请求中携带的目的web服务器的登录界面路径信息和目的web服务器标识;根据所述目的web服务器标识,在数据库中查询所述目的web服务器的登录界面的路径信息;当所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的所述目的web服务器登录界面的路径信息相同时,确定所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息正确。
10.如权利要求9所述的装置,其特征在于,所述发送单元,还用于:
当所述目的web服务器访问请求中携带的目的web服务器登录界面路径信息和查询得到的所述目的web服务器登录界面的路径信息不同时,将所述响应数据包发送至所述客户端。
CN201410855128.6A 2014-12-31 2014-12-31 一种实现web单点登录的方法及装置 Active CN104618449B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410855128.6A CN104618449B (zh) 2014-12-31 2014-12-31 一种实现web单点登录的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410855128.6A CN104618449B (zh) 2014-12-31 2014-12-31 一种实现web单点登录的方法及装置

Publications (2)

Publication Number Publication Date
CN104618449A true CN104618449A (zh) 2015-05-13
CN104618449B CN104618449B (zh) 2018-02-16

Family

ID=53152724

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410855128.6A Active CN104618449B (zh) 2014-12-31 2014-12-31 一种实现web单点登录的方法及装置

Country Status (1)

Country Link
CN (1) CN104618449B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108667863A (zh) * 2017-03-29 2018-10-16 中国科学院声学研究所 一种基于本地代理的web业务适配***及方法
CN108737540A (zh) * 2018-05-18 2018-11-02 北京车和家信息技术有限公司 服务器的统一登录方法及装置
CN109600416A (zh) * 2018-10-29 2019-04-09 珠海市君天电子科技有限公司 业务服务器远程登录方法、装置、电子设备及存储介质
CN110337829A (zh) * 2017-05-08 2019-10-15 株式会社Ntt都科摩 通信控制方法及通信***
CN110830436A (zh) * 2019-09-17 2020-02-21 网宿科技股份有限公司 用户登录方法与跳板机
CN111125039A (zh) * 2018-10-30 2020-05-08 华为技术有限公司 一种生成操作日志的方法及装置
CN113079164A (zh) * 2021-04-02 2021-07-06 江苏保旺达软件技术有限公司 堡垒机资源的远程控制方法、装置、存储介质及终端设备
CN114095483A (zh) * 2021-10-26 2022-02-25 深信服科技股份有限公司 密码代填方法、装置、电子设备和存储介质
CN114756530A (zh) * 2022-06-15 2022-07-15 北京安华金和科技有限公司 一种基于堡垒机的客户端信息处理方法
CN117118799A (zh) * 2023-10-20 2023-11-24 杭州优云科技有限公司 一种服务器集群的带外管理方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102325183A (zh) * 2011-09-09 2012-01-18 深圳市络道科技有限公司 基于单点登录方式实现的web端登录方法及***
CN102571762A (zh) * 2011-12-21 2012-07-11 深信服网络科技(深圳)有限公司 单点登录的方法和设备
CN102739603A (zh) * 2011-03-31 2012-10-17 国际商业机器公司 单点登录的方法和设备
CN104219330A (zh) * 2014-09-29 2014-12-17 北京神州绿盟信息安全科技股份有限公司 一种基于web代理进行录屏审计的方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739603A (zh) * 2011-03-31 2012-10-17 国际商业机器公司 单点登录的方法和设备
CN102325183A (zh) * 2011-09-09 2012-01-18 深圳市络道科技有限公司 基于单点登录方式实现的web端登录方法及***
CN102571762A (zh) * 2011-12-21 2012-07-11 深信服网络科技(深圳)有限公司 单点登录的方法和设备
CN104219330A (zh) * 2014-09-29 2014-12-17 北京神州绿盟信息安全科技股份有限公司 一种基于web代理进行录屏审计的方法及***

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108667863A (zh) * 2017-03-29 2018-10-16 中国科学院声学研究所 一种基于本地代理的web业务适配***及方法
CN108667863B (zh) * 2017-03-29 2020-04-14 中国科学院声学研究所 一种基于本地代理的web业务适配***及方法
CN110337829A (zh) * 2017-05-08 2019-10-15 株式会社Ntt都科摩 通信控制方法及通信***
CN110337829B (zh) * 2017-05-08 2022-06-03 株式会社Ntt都科摩 通信控制方法及通信***
CN108737540A (zh) * 2018-05-18 2018-11-02 北京车和家信息技术有限公司 服务器的统一登录方法及装置
CN109600416B (zh) * 2018-10-29 2022-03-11 珠海豹趣科技有限公司 业务服务器远程登录方法、装置、电子设备及存储介质
CN109600416A (zh) * 2018-10-29 2019-04-09 珠海市君天电子科技有限公司 业务服务器远程登录方法、装置、电子设备及存储介质
CN111125039A (zh) * 2018-10-30 2020-05-08 华为技术有限公司 一种生成操作日志的方法及装置
CN111125039B (zh) * 2018-10-30 2022-06-10 华为技术有限公司 一种生成操作日志的方法及装置
CN110830436A (zh) * 2019-09-17 2020-02-21 网宿科技股份有限公司 用户登录方法与跳板机
CN110830436B (zh) * 2019-09-17 2021-11-19 网宿科技股份有限公司 用户登录方法与跳板机
CN113079164A (zh) * 2021-04-02 2021-07-06 江苏保旺达软件技术有限公司 堡垒机资源的远程控制方法、装置、存储介质及终端设备
CN113079164B (zh) * 2021-04-02 2023-03-24 江苏保旺达软件技术有限公司 堡垒机资源的远程控制方法、装置、存储介质及终端设备
CN114095483A (zh) * 2021-10-26 2022-02-25 深信服科技股份有限公司 密码代填方法、装置、电子设备和存储介质
CN114756530A (zh) * 2022-06-15 2022-07-15 北京安华金和科技有限公司 一种基于堡垒机的客户端信息处理方法
CN114756530B (zh) * 2022-06-15 2022-08-19 北京安华金和科技有限公司 一种基于堡垒机的客户端信息处理方法
CN117118799A (zh) * 2023-10-20 2023-11-24 杭州优云科技有限公司 一种服务器集群的带外管理方法、装置及电子设备
CN117118799B (zh) * 2023-10-20 2024-02-27 杭州优云科技有限公司 一种服务器集群的带外管理方法、装置及电子设备

Also Published As

Publication number Publication date
CN104618449B (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
CN104618449A (zh) 一种实现web单点登录的方法及装置
CN109218368B (zh) 实现Http反向代理的方法、装置、电子设备和可读介质
US10015157B2 (en) Multi-domain applications with authorization and authentication in cloud environment
CA2775206C (en) System and method of handling requests in a multi-homed reverse proxy
EP3537689B1 (en) Using credentials stored in different directories to access a common endpoint
CN106209726B (zh) 一种移动应用单点登录方法及装置
EP3503505B1 (en) Sandbox environment for testing integration between a content provider origin and a content delivery network
CN107463453B (zh) 同一终端不同应用间通信的方法、装置、设备和存储介质
CN110958237A (zh) 一种权限校验的方法和装置
US11418498B2 (en) Single sign on proxy for regulating access to a cloud service
CN103634399B (zh) 一种实现跨域数据传输的方法和装置
US9699177B2 (en) Secure transfer of web application client persistent state information into a new domain
CN108574604A (zh) 测试方法和装置
CN104038503A (zh) 跨网站登录的方法,装置和***
CN105072108A (zh) 用户信息的传输方法、装置及***
US11240202B2 (en) Message processing method, electronic device, and readable storage medium
CN112910903B (zh) Ssl证书免部署的方法、装置和***
KR101349201B1 (ko) 모바일 단말에서 웹브라우저와 로컬 리소스의 연동 장치 및 그 방법
US9866614B2 (en) Methods for website version control using bucket cookies
US9571447B2 (en) System and method for accessing information
CN103002063B (zh) 一种利用dns实现url转发的方法和***
Mohaisen et al. HTTP-based Smart Transportation of DNS Queries and Applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Patentee after: NSFOCUS Technologies Group Co.,Ltd.

Patentee after: NSFOCUS TECHNOLOGIES Inc.

Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Patentee before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd.

Patentee before: NSFOCUS TECHNOLOGIES Inc.