CN103401883A - 单点登录方法及系统 - Google Patents
单点登录方法及系统 Download PDFInfo
- Publication number
- CN103401883A CN103401883A CN2013103595476A CN201310359547A CN103401883A CN 103401883 A CN103401883 A CN 103401883A CN 2013103595476 A CN2013103595476 A CN 2013103595476A CN 201310359547 A CN201310359547 A CN 201310359547A CN 103401883 A CN103401883 A CN 103401883A
- Authority
- CN
- China
- Prior art keywords
- application
- logging
- sign
- server
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种单点登录方法,包括:客户端对应用添加hook,通过所述hook检测所述应用弹出的密码输入窗口,并向单点登录服务器发起申请登录请求;所述单点登录服务器根据所述申请登录请求返回相应的单点登录信息;所述客户端判断是否获取到返回的单点登录信息,若是,则根据所述单点登录信息向认证服务器发起登录请求;否则,获取所述密码输入窗口的输入数据,根据所述输入数据向认证服务器发起登录请求,并将所述输入数据上传所述单点登录服务器。此外,还包括一种单点登录系统。上述单点登录方法及系统实现了C/S应用的单点登录功能,提高了C/S应用系统操作的便利性。
Description
技术领域
本发明涉及通讯领域,特别是涉及一种单点登录方法及系统。
背景技术
单点登录(Single Sign On,SSO)是目前比较流行的包括企业在内的各类组织业务整合的解决方案之一,使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的其它应用系统。
单点登录因其在工作上带来的方便作用而运用得越来越广泛,但由于每个系统互相独立,用户每使用一个系统都要登录相应的平台才能进行操作,这给用户使用带来很多额外而且重复的操作。为了解决这个问题,单点登录技术对系统的登录流程进行了简化。
然而,发明人发现现有技术中至少存在以下技术问题:
现在单点登录技术的均为基于web实现,通过共享web应用的会话对象存储多个web系统的单点登录信息,而对于C/S类型的应用系统由于不存在共享的会话对象使得无法实现C/S应用的单点登录,造成对于C/S类应用只能通过用户手动输入账号密码来实现,使得操作的便利性不足。
发明内容
基于此,有必要提供一种在C/S应用中实现单点登录从而提高其操作的便利性的单点登录方法。
一种单点登录方法,所述方法包括:
客户端对应用添加hook,通过所述hook检测所述应用弹出的密码输入窗口,并向单点登录服务器发起申请登录请求;
所述单点登录服务器根据所述申请登录请求返回相应的单点登录信息;
所述客户端判断是否获取到返回的单点登录信息,若是,则根据所述单点登录信息向认证服务器发起登录请求;否则,获取所述密码输入窗口的输入数据,根据所述输入数据向认证服务器发起登录请求,并将所述输入数据上传所述单点登录服务器。
在其中一个实施例中,所述申请登录请求中包括所述应用的应用标识;
所述单点登录服务器根据所述申请登录请求返回相应的单点登录信息的步骤还包括:
所述单点登录服务器判断所述申请登录请求中的应用标识是否属于预设的支持单点登录的应用列表,若是则返回相应的单点登录信息。
在其中一个实施例中,所述客户端根据所述单点登录信息向认证服务器发起登录请求的步骤之后还包括:
若所述客户端根据所述单点登录信息登录失败,则执行所述获取所述密码输入窗口的输入数据的步骤。
在其中一个实施例中,所述客户端通过所述hook检测所述应用弹出的密码输入窗口的步骤包括:
所述客户端通过所述hook检测所述应用弹出的可编辑且具有ES_PASSWORD属性的窗口控件。
此外,还有必要提供一种在C/S应用中实现单点登录从而提高其操作的便利性的单点登录系统。
一种单点登录系统,包括客户端、单点登录服务器以及认证服务器,其中:
所述客户端用于对应用添加hook,通过所述hook检测所述应用弹出的密码输入窗口,并向单点登录服务器发起申请登录请求;
所述单点登录服务器用于根据所述申请登录请求返回相应的单点登录信息;
所述客户端还用于判断是否获取到返回的单点登录信息,若是,则根据所述单点登录信息向认证服务器发起登录请求;否则,获取所述密码输入窗口的输入数据,根据所述输入数据向认证服务器发起登录请求,并将所述输入数据上传所述单点登录服务器。
在其中一个实施例中,所述单点登录服务器还用于判断所述申请登录请求中的应用标识是否属于预设的支持单点登录的应用列表,若是则返回相应的单点登录信息。
在其中一个实施例中,所述客户端还用于在根据所述单点登录信息登录失败时,获取所述密码输入窗口的输入数据。
在其中一个实施例中,所述客户端还用于通过所述hook检测所述应用弹出的可编辑且具有ES_PASSWORD属性的窗口控件。
上述单点登录方法及系统,对应用添加了hook程序,若为用户首次登录(服务器上不存在与该用户对应的单点登录信息或hook程序由服务器获取不到该用户的单点登录信息),通过该hook程序获取用户在登录窗口输入的账号和密码,并上传到服务器保存,从而实现了C/S应用系统的单点登录功能,避免了传统技术中C/S应用需要手动输入账号密码登录的方式,从而提高了其操作的便利性。
附图说明
图1为一个实施例中单点登录方法的流程示意图;
图2为一个实施例中单点登录系统的结构示意图。
具体实施方式
如图1所示,在一个实施例中,一种单点登录方法。该方法完全依赖计算机程序,可运行于基于冯诺依曼体系的计算机系统上,该方法包括如下步骤:
步骤S102,客户端对应用添加hook,通过hook检测应用弹出的密码输入窗口,并向单点登录服务器发起申请登录请求。
在本实施例中,对应用添加hook即对应用进行挂钩。钩子程序实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
具体的,可通过hook获取可编辑且具有ES_PASSWORD属性的窗口控件,获取窗口控件的输入数据。可编辑且具有ES_PASSWORD属性的窗口控件即为用户在客户端通过该应用登录远程服务器时输入账号密码的登录窗口。可通过hook对该登录窗口的用户输入进行检测和记录,获取输入数据。在本实施例中,可通过钩子程序检测用户在应用的密码输入窗口的输入数据,包括检测用户的按键输入、鼠标点击输入、鼠标划动输入以及指纹输入等输入信息。在本实施例中,还可通过检测窗口关闭事件结束监听。
步骤S104,单点登录服务器根据申请登录请求返回相应的单点登录信息。
在本实施例中,申请登录请求中可包括应用的应用标识。单点登录服务器从客户端发送的登录请求中提取应用的应用标识,判断应用的应用标识是否属于单点登录服务器中预设的支持单点登录的应用列表,若是,则返回相应的单点登录信息。
例如,客户端上有多个应用,有的应用支持单点登录有的不支持单点登录。当客户端启动应用之后,向单点登录服务器发起申请登录请求,该申请登录请求中包含该应用的应用标识。单点登录服务器能在其预设的支持单点登录的应用列表中查找该应用标识,若查找到,则表示该应用支持单点登录功能,从而向客户端返回相应的单点登录信息;若未查找到,则表示该应用不支持单点登录功能,可向客户端返回提示信息。
进一步的,申请登录请求中还可包括用户标识,如客户端的网络地址、设备生成码或者用户的账号等。单点登录服务器根据客户端对应的标识返回与客户端相应的单点登录信息,该单点登录信息可包含用户的账号和密码。
例如,用户双击应用对应的图标或者在命令行输入指令启动应用时,客户端对该应用进行挂钩并显示登录界面,通过钩子程序检测应用弹出的密码输入窗口,接着客户端向单点登录服务器发送申请登录请求,该申请登录请求中可包含客户端的网络地址、设备生成码或者用户的账号(用户的账号可自动记录在客户端的配置文件中,可由配置文件读取该账号)。单点登录服务器接收客户端发送的申请登录请求之后,从申请登录请求中提取出该客户端的网络地址、设备生成码或者用户的账号等用户标识,并查找到相应的单点登录信息,将该单点登录信息返回至该客户端。
步骤S106,客户端判断是否获取到返回的单点登录信息,若是,则根据单点登录信息向认证服务器发起登录请求;否则,获取密码输入窗口的输入数据,根据输入数据向认证服务器发起登录请求,并将输入数据上传单点登录服务器。
在本实施例中,客户端可由单点登录服务器返回的单点登录信息提取出账号和密码,然后根据该账号和密码生成登录请求发送给认证服务器。认证服务器对该登录请求中的账号密码进行校验,若校验成功则用户完成登录;若校验失败,则返回提示信息。客户端可根据提示信息重新展示登录窗口,提示用户密码错误需要重新登录。
进一步的,在本实施例中,若根据单点登录信息登录失败,则执行获取密码输入窗口的输入数据的步骤,获取用户重新输入的账号和密码,并将其上传至单点登录服务器,从而更新单点登录服务器中存储的相应的单点登录信息。在一个实施例中,若客户端未获取到返回的单点登录信息(单点登录服务器未查找到单点登录信息或单点登录服务器向客户端返回单点登录信息时出现网络错误造成客户端未接收到单点登录信息,且单点登录服务器未查找到单点登录信息即为用户首次登录),则执行获取密码输入窗口的输入数据的步骤,根据输入数据向认证服务器发起登录请求,并将输入数据上传单点登录服务器。
需要说明的是,认证服务器和单点登录服务器既可以是能够实现多个功能的同一服务器,也可以是功能不同的多个服务器。
如图2所示,在一个实施例中,一种单点登录系统,包括客户端10、单点登录服务器20以及认证服务器30,其中:
客户端10用于对应用添加hook,通过hook检测应用弹出的密码输入窗口,并向单点登录服务器20发起申请登录请求。
单点登录服务器20用于根据申请登录请求返回相应的单点登录信息。
客户端10还用于判断是否获取到返回的单点登录信息,若是,则根据单点登录信息向认证服务器30发起登录请求;否则,获取密码输入窗口的输入数据,根据输入数据向认证服务器30发起登录请求,并将输入数据上传单点登录服务器20。
在一个实施例中,单点登录服务器20还用于判断申请登录请求中的应用标识是否属于预设的支持单点登录的应用列表,若是则返回相应的单点登录信息。
在一个实施例中,若客户端10根据单点登录信息登录失败,客户端10还用于客执行获取密码输入窗口的输入数据的步骤。
在一个实施例中,客户端10还用于通过hook检测应用弹出的可编辑且具有ES_PASSWORD属性的窗口控件。
上述单点登录方法及系统,对应用添加了hook程序,若为用户首次登录(服务器上不存在与该用户对应的单点登录信息或hook程序由服务器获取不到该用户的单点登录信息),通过该hook程序获取用户在登录窗口输入的账号和密码,并上传到服务器保存,从而实现了C/S应用系统的单点登录功能,避免了传统技术中C/S应用需要手动输入账号密码登录的方式,从而提高了其操作的便利性。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种单点登录方法,包括:
客户端对应用添加hook,通过所述hook检测所述应用弹出的密码输入窗口,并向单点登录服务器发起申请登录请求;
所述单点登录服务器根据所述申请登录请求返回相应的单点登录信息;
所述客户端判断是否获取到返回的单点登录信息,若是,则根据所述单点登录信息向认证服务器发起登录请求;否则,获取所述密码输入窗口的输入数据,根据所述输入数据向认证服务器发起登录请求,并将所述输入数据上传所述单点登录服务器。
2.根据权利要求1所述的单点登录方法,其特征在于,所述申请登录请求中包括所述应用的应用标识;
所述单点登录服务器根据所述申请登录请求返回相应的单点登录信息的步骤还包括:
所述单点登录服务器判断所述申请登录请求中的应用标识是否属于预设的支持单点登录的应用列表,若是则返回相应的单点登录信息。
3.根据权利要求1所述的单点登录方法,其特征在于,所述客户端根据所述单点登录信息向认证服务器发起登录请求的步骤之后还包括:
若所述客户端根据所述单点登录信息登录失败,则执行所述获取所述密码输入窗口的输入数据的步骤。
4.根据权利要求1至3任一项所述的单点登录方法,其特征在于,所述客户端通过所述hook检测所述应用弹出的密码输入窗口的步骤包括:
所述客户端通过所述hook检测所述应用弹出的可编辑且具有ES_PASSWORD属性的窗口控件。
5.一种单点登录系统,包括客户端、单点登录服务器以及认证服务器,其特征在于:
所述客户端用于对应用添加hook,通过所述hook检测所述应用弹出的密码输入窗口,并向单点登录服务器发起申请登录请求;
所述单点登录服务器用于根据所述申请登录请求返回相应的单点登录信息;
所述客户端还用于判断是否获取到返回的单点登录信息,若是,则根据所述单点登录信息向认证服务器发起登录请求;否则,获取所述密码输入窗口的输入数据,根据所述输入数据向认证服务器发起登录请求,并将所述输入数据上传所述单点登录服务器。
6.根据权利要求5所述的单点登录系统,其特征在于,所述单点登录服务器还用于判断所述申请登录请求中的应用标识是否属于预设的支持单点登录的应用列表,若是则返回相应的单点登录信息。
7.根据权利要求5所述的单点登录系统,其特征在于,所述客户端还用于在根据所述单点登录信息登录失败时,获取所述密码输入窗口的输入数据。
8.根据权利要求5所述的单点登录系统,其特征在于,所述客户端还用于通过所述hook检测所述应用弹出的可编辑且具有ES_PASSWORD属性的窗口控件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103595476A CN103401883A (zh) | 2013-08-16 | 2013-08-16 | 单点登录方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103595476A CN103401883A (zh) | 2013-08-16 | 2013-08-16 | 单点登录方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103401883A true CN103401883A (zh) | 2013-11-20 |
Family
ID=49565408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103595476A Pending CN103401883A (zh) | 2013-08-16 | 2013-08-16 | 单点登录方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103401883A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980430A (zh) * | 2015-05-06 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 终端鉴权方法、装置及系统 |
CN105188060A (zh) * | 2015-10-12 | 2015-12-23 | 深圳竹云科技有限公司 | 一种面向移动终端的单点登录认证方法及系统 |
CN105227314A (zh) * | 2015-08-28 | 2016-01-06 | 飞天诚信科技股份有限公司 | 一种登录进入系统桌面的方法及装置 |
CN103716333B (zh) * | 2014-01-10 | 2017-01-18 | 北京飞流九天科技有限公司 | 用于管理应用账号的方法、终端、服务器和系统 |
CN106446176A (zh) * | 2016-09-27 | 2017-02-22 | 深圳市神盾信息技术有限公司 | 基于脚本注入的系统整合方法及装置 |
CN106921616A (zh) * | 2015-12-24 | 2017-07-04 | 北京国双科技有限公司 | 一种单点登录方法及装置 |
CN108718301A (zh) * | 2018-05-09 | 2018-10-30 | 广州市冰海网络技术有限公司 | 一种远程系统单点登录的方法 |
CN108830115A (zh) * | 2018-05-30 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种信息处理的方法及装置 |
CN109359463A (zh) * | 2018-10-08 | 2019-02-19 | 郑州云海信息技术有限公司 | 基于多设备管理平台的单设备信息查询方法及相关装置 |
CN109376555A (zh) * | 2018-11-30 | 2019-02-22 | 成都知道创宇信息技术有限公司 | 一种针对暴力破解笔记本电脑密码进行监控取证的方法 |
CN109587133A (zh) * | 2018-11-30 | 2019-04-05 | 武汉烽火众智智慧之星科技有限公司 | 一种单点登录系统及方法 |
CN113569222A (zh) * | 2021-07-12 | 2021-10-29 | 成都安恒信息技术有限公司 | 一种用于windows程序的单点登录方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882835A (zh) * | 2011-07-13 | 2013-01-16 | 中国科学院声学研究所 | 一种实现单点登录的方法及系统 |
-
2013
- 2013-08-16 CN CN2013103595476A patent/CN103401883A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882835A (zh) * | 2011-07-13 | 2013-01-16 | 中国科学院声学研究所 | 一种实现单点登录的方法及系统 |
Non-Patent Citations (1)
Title |
---|
郑伟: "多异构应用环境下的单点登录研究与设计", 《万方学位论文》, 31 May 2011 (2011-05-31) * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103716333B (zh) * | 2014-01-10 | 2017-01-18 | 北京飞流九天科技有限公司 | 用于管理应用账号的方法、终端、服务器和系统 |
CN104980430A (zh) * | 2015-05-06 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 终端鉴权方法、装置及系统 |
CN104980430B (zh) * | 2015-05-06 | 2018-07-03 | 腾讯科技(深圳)有限公司 | 终端鉴权方法、装置及系统 |
CN105227314B (zh) * | 2015-08-28 | 2020-02-21 | 飞天诚信科技股份有限公司 | 一种登录进入系统桌面的方法及装置 |
CN105227314A (zh) * | 2015-08-28 | 2016-01-06 | 飞天诚信科技股份有限公司 | 一种登录进入系统桌面的方法及装置 |
CN105188060A (zh) * | 2015-10-12 | 2015-12-23 | 深圳竹云科技有限公司 | 一种面向移动终端的单点登录认证方法及系统 |
CN106921616A (zh) * | 2015-12-24 | 2017-07-04 | 北京国双科技有限公司 | 一种单点登录方法及装置 |
CN106446176A (zh) * | 2016-09-27 | 2017-02-22 | 深圳市神盾信息技术有限公司 | 基于脚本注入的系统整合方法及装置 |
CN108718301A (zh) * | 2018-05-09 | 2018-10-30 | 广州市冰海网络技术有限公司 | 一种远程系统单点登录的方法 |
CN108830115A (zh) * | 2018-05-30 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种信息处理的方法及装置 |
CN109359463A (zh) * | 2018-10-08 | 2019-02-19 | 郑州云海信息技术有限公司 | 基于多设备管理平台的单设备信息查询方法及相关装置 |
CN109376555A (zh) * | 2018-11-30 | 2019-02-22 | 成都知道创宇信息技术有限公司 | 一种针对暴力破解笔记本电脑密码进行监控取证的方法 |
CN109587133A (zh) * | 2018-11-30 | 2019-04-05 | 武汉烽火众智智慧之星科技有限公司 | 一种单点登录系统及方法 |
CN109587133B (zh) * | 2018-11-30 | 2021-07-23 | 武汉烽火众智智慧之星科技有限公司 | 一种单点登录系统及方法 |
CN113569222A (zh) * | 2021-07-12 | 2021-10-29 | 成都安恒信息技术有限公司 | 一种用于windows程序的单点登录方法 |
CN113569222B (zh) * | 2021-07-12 | 2024-04-05 | 成都安恒信息技术有限公司 | 一种用于windows程序的单点登录方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103401883A (zh) | 单点登录方法及系统 | |
US11936719B2 (en) | Using cloud services to provide secure access to a storage system | |
CN110166432B (zh) | 对内网目标服务的访问方法、提供内网目标服务的方法 | |
CN104426885B (zh) | 异常账号提供方法及装置 | |
CN105282126B (zh) | 登录认证方法、终端及服务器 | |
EP3550796B1 (en) | Accessing a cloud-based service via authentication data delivered by another communication device | |
CN103209116B (zh) | 多平台信息发布方法和系统 | |
WO2017024842A1 (zh) | 一种上网认证方法及客户端、计算机存储介质 | |
CN104468550B (zh) | 一种Windows桌面的用户登录方法、设备及系统 | |
CN111049946B (zh) | 一种Portal认证方法、系统及电子设备和存储介质 | |
CN108632354B (zh) | 物理机纳管方法、装置及云桌面管理平台 | |
CN106656985B (zh) | 一种备份账号登录方法、装置及系统 | |
CN106650490A (zh) | 云账号的登录方法及装置 | |
CN103384254A (zh) | 应用账户登陆方法、服务器、客户端及系统 | |
CN103716230A (zh) | 消息发送方法、装置及服务器 | |
CN101764689A (zh) | 一种系统控制用户登录方式的方法 | |
CN108900480B (zh) | 客户端认证管理方法及装置 | |
CN103491141A (zh) | 应用服务器和请求处理方法 | |
CN113051039A (zh) | 一种基于云计算的虚拟云办公系统登录方法及系统 | |
CN102377785A (zh) | 即时通信中向自身发送数据的方法和系统 | |
CN109040331B (zh) | 电子名片的处理方法、装置、计算设备和存储介质 | |
CN101557356A (zh) | 一种在Web页面中使用即时通讯工具的方法 | |
CN103516720A (zh) | 一种用于登录目标应用的方法与设备 | |
CN103761473B (zh) | 一种移动终端上的应用管理系统和方法 | |
CN114020678B (zh) | 服务器串行控制台重定向方法、装置、系统以及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131120 |
|
RJ01 | Rejection of invention patent application after publication |