CN101572608B - 一次登录参数的获取方法及装置 - Google Patents
一次登录参数的获取方法及装置 Download PDFInfo
- Publication number
- CN101572608B CN101572608B CN2009101483747A CN200910148374A CN101572608B CN 101572608 B CN101572608 B CN 101572608B CN 2009101483747 A CN2009101483747 A CN 2009101483747A CN 200910148374 A CN200910148374 A CN 200910148374A CN 101572608 B CN101572608 B CN 101572608B
- Authority
- CN
- China
- Prior art keywords
- test
- login
- information
- value
- user terminal
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种一次登录参数的获取方法及装置,所述方法包括以下步骤:所述网关设备接收所述用户终端发送的包含测试参数信息的设定消息,并存储所述测试参数信息的值;所述网关设备向待测试网站请求所述测试参数信息所对应的登录页面,并将所述待测试网站返回的登录页面发送给所述用户终端;所述网关设备解析所述用户终端根据所述登录页面发送的登录请求,将所述解析结果的值与所述测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息。通过本发明,使用户可以通过简单的参数测试流程获取一次登录的参数信息,方便了管理员对一次登录特性的配置操作,减轻了维护管理工作的工作量。
Description
技术领域
本发明涉及通信技术领域,特别涉及一次登录参数的获取方法及装置。
背景技术
在现有的技术理解中,一次登录(Single Sign On,SSO)功能具有如下功能特性:
在登录门户网站后,用户在访问网站中其它的网络应用时,将不用再次输入用户名和密码进行身份认证。
这样的功能设置将给用户的使用带来很大的便利性。而且,这一特性对SSL(Secure Sockets Layer,安全套接字协议层)VPN(Virtual Private Network,虚拟专用网络)系统尤其有用。
首先,SSL VPN是一种采用SSL协议建立加密连接的VPN技术,为用户提供一种通过Internet远程访问内网资源的服务。SSL VPN可以实现一种被称为“Web接入”的远程访问方式。使用这种接入方式,用户可以只使用Web浏览器就能访问私网内部的Web站点。
Web接入的实现原理如图1所示,远程主机在Internet上,它只能访问到拥有公网地址的VPN网关,图1中所示网关的公网地址为IP0,但是,远程主机在这种场景下不能直接访问到私网中的服务器ServerA,因为ServerA使用的网络地址IP1是私网地址。
为了实现Web接入,VPN网关在网关上为ServerA设立了一个虚拟目录“/ServerA”,该目录与ServerA的网络地址(DNS域名或IP地址)是一一对应的。
如图1所示的Web接入过程可以描述如下:
步骤S101、远程主机向VPN网关发送一个http请求消息,该http请求消息的目的URL地址是:https://IP0/ServerA/dir1/page1。
步骤S102、VPN网关接收到远程主机所发送的http请求后,根据虚拟路径与内网服务器地址之间的映射关系,将该http请求的URL地址改写为:http://IP1/dir1/page1。
然后,VPN网关将改写过的http请求发送给ServerA服务器去处理。
步骤S103、ServerA服务器接收到http请求后,向VPN网关返回相应的Web页面。
步骤S104、VPN网关对接收到的Web页面进行URL改写,将页面中指向内网服务器的地址改写为相应的VPN网关上的虚拟路径。如上图所示,将页面中的URL地址“http://IP1/dir2/page2”改写为“https://IP0/ServerA/dir2/page2”。
经过上述步骤,用户在远程主机的Web浏览器中就获得了一个被改写过的Web页面,其中的页面链接指向的都是VPN网关上的虚拟路径,是在Internet上可以访问到的有效URL地址。
下面再介绍SSL VPN与一次登录的问题。
具体如图2所示,为一般组网环境下,SSL VPN系统的结构示意图。
用户在使用SSL VPN的时候,首先需要登录SSL VPN网关,由网关对用户的身份进行认证,才能授予相应的访问权限。SSL VPN网关可以利用内网已有的认证服务器对远程登录的用户进行身份认证。这个认证服务器同时也可以为内网的其他服务器提供身份认证服务。这样整个内部网络的网关和服务器可以共用同一个认证服务器,管理员只需要给用户配置一套帐号和密码即可。
但是SSL VPN设备与内网的服务器毕竟是彼此独立的系统,所以一个用户登录SSL VPN系统后,在访问内网其它服务器的时候,仍然需要再次进行认征。
在没有提供SSO特性的SSL VPN系统中,用户访问内网服务器的过程一般是这样:
(1)远程用户通过Web浏览器打开SSL VPN的登录页面。
(2)远程用户在SSL VPN的登录页面中提交用户名和密码进行认证。VPN网关通过内网的认证服务器对用户提交的帐户信息进行认证,如果认证成功,就允许用户登录SSL VPN系统。
(3)SSL VPN网关允许用户登录后,将向远程用户返回一个Web页面,在该页面中将列出该用户可以访问的网络资源,列表中将提供访问这些网络资源的页面链接。
(4)用户点击资源访问列表中的链接,将打开访问内部网站的页面。由于用户之前并未登录过内部网站,所以该网站需要对用户的身份进行认证。网站会推出一个该网站的登录界面,要求用户再输入一遍用户名和密码。
虽然网站使用着与网关相同的认证服务器,但是由于内部网站与VPN网关是彼此独立的系统,两者并不共享对同一用户的认证结果,所以导致在用户访问内部网站时仍然需要重新认证的问题。如果用户还要访问内网中的其它站点,则还需要再次输入用户名和密码。这样多次的重复操作给用户带来了很大的不便,于是人们很希望能够实现“一次登录”功能:即用户在登录过SSL VPN网关后,在访问内网其它站点时,将不再需要重新输入用户名和密码,打开网站的页面后,用户已经用刚才登录VPN网关的身份登录网站了。
实现SSO功能的一般作法就是:在用户访问内部站点时,SSL VPN网关代替用户向网站提交用户名和密码,并将认证通过后网站返回的用户已登录页面发送给远程用户。这一过程如图3所示,包括:
步骤S301、用户通过Web页面向SSL VPN网关提交认证信息,即用户名和密码。
步骤S302、VPN网关将认证信息转交给认证服务器进行检查。
步骤S303、认证服务器将认证结果返回给VPN网关。如果认证不通过,VPN网关将拒绝远程用户对内网的访问。如果认证通过,VPN网关将用户名和密码在网关的缓存中保存起来,并继续执行下面的步骤。
步骤S304、VPN网关返回给用户一个资源访问列表页面。
步骤S305、用户点击列表中的Web链接,向VPN网关发出访问内部网站的http请求。
步骤S306、在确定用户需要访问内部网站后,VPN网关将构造一个登录请求报文,并将此报文发送给要登录的网站。在报文中包含了登录此网站所需要的认证信息,主要内容就是该用户的用户名和密码。
步骤S307、内部网站解析http请求,得到网关提交的用户名和密码后,将这些认证信息转交给认证服务器进行检查。
步骤S308、认证服务器将认证结果返回给内部网站。此认证结果应该是认证通过。
步骤S309、内部网站便向VPN网关返回一个用户登录成功的Web页面。
步骤S310、VPN网关将网站返回的页面转发给远程用户,于是用户便得到了已登录的页面。
在上述步骤中,最关键的一步就是步骤S306,即VPN网关构造一个http请求报文,模拟用户登录内部网站的操作。
一般地,登录Web网站的http请求报文的格式如图4所示。
在图4所示的http请求中,与认证相关的信息有以下几个部分:
(1)URL请求行,包括的内容有:
请求方法:POST
请求路径:/index.php?mod=member
协议版本:HTTP/1.1
(2)Host字段:服务器地址,可以是DNS域名或IP地址。上图所示的地址为tech。
(3)查询字符串:包含了http请求的参数。字符串的格式是一组Key-Value对,每个Key-Value对表示一个参数,等号前面的是参数名称,等号后面的是参数值。参数之间用“&”进行分割。
在上图的例子中,查询字符串包含以下参数:
username=tester,参数名为username,参数值为tester。
password=123456,参数名为password,参数值为123456。
表示用户名和密码的参数名称与具体的网站实现有关,例如用户名参数的名称可以是account,user等,密码参数的名称可以是pwd,code等。这些参 数名必须与Web网站服务器所要求的参数名相一致,否则Web服务器程序将不能从http请求中获取相应的参数。
查询字符串中还包含几个附加参数,这些参数与具体的网站实现有关。在上图所示的请求报文中包含以下参数:
rememberpw=1
url=http%3A%2F%2Ftech%2F
action=login
在构造登录网站的http请求报文时,网关需要正确填写URL请求行,Host字段和查询字符串等内容。这些数据网关无法预先得知,只能由管理员手工配置。一般地,URL请求行和Host字段组合在一起,就是http报文所请求页面的URL地址。于是为实现SSO特性,网络管理员需要配置如下的参数:
(1)提交登录请求的URL地址
(2)用户名和密码的参数名称
(3)附加参数
配置了用户名和密码的参数名后,网关就可以结合保存在缓存中的用户名和密码的数值,构造出查询字符串中关于用户名和密码的Key-Value对了;而登录请求中的附加参数一般固定不变,只需要管理员配置一组固定的数值即可。
然而如何获取这些登录参数是一个比较困难的问题,在现有的技术方案中,主要包括两种解决方法:
方法一、直接使用抓包工具,捕获http请求报文,然后对其进行分析,从而获得所需要的登录参数。
方法二、分析登录页面。
在登录网站的Web页面中一般包含一个表单对象(Form)。Form中包含了输入框和按钮等控件,点击其中的提交按钮将触发一个Http请求,该请求将包含登录所需的各种参数。如图5所示,是一个登录网站的Form代码样例。
分析上面这段Html代码,可以得知:
(1)网站的登录请求路径:./index.php?mod=member,已知该网站的地址为tech,则完整的登录请求URL为http://tech/index.php?mod=member
(2)用户名的参数名为username,密码的参数名为password。
(3)附加参数有三个:
a)rememberpw=1
b)url=http://tech/index.php
c)action=login
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
现有技术中的处理方案需要人工分析报文或者要求管理人员熟悉Html语言,操作难度和工作量较大。
发明内容
本发明提供一次登录参数的获取方法及装置,可以在http请求中自动提取登录参数,使得网络管理员只需通过一个简单的测试,就可以轻松获取所需要的登录参数。
为达到上述目的,本发明一方面提供了一种一次登录参数的获取方法,应用于包括用户终端和网关设备的系统中,包括以下步骤:
所述网关设备接收所述用户终端发送的包含测试参数信息的设定消息,并存储所述测试参数信息的值;
所述网关设备向所述待测试网站请求所述测试参数信息所对应的登录页面,并将所述待测试网站返回的登录页面发送给所述用户终端;
所述网关设备解析所述用户终端根据所述登录页面发送的登录请求,将所述解析的结果的值与所述测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息。
优选的,所述测试参数信息,至少包括:
所述待测试网站登录页面的地址;
测试用户名;
测试密码。
优选的,所述网关设备向所述待测试网站请求所述测试参数信息所对应的登录页面,并将所述待测试网站返回的登录页面发送给所述用户终端,具体包括:
所述网关设备向所述用户终端返回测试确认页面,所述测试确认页面包含测试一次登录参数信息的启动链接;
当所述启动链接被启动时,所述网关设备根据所述启动链接的请求页面向所述测试参数信息所对应的待测试网站请求所述待测试网站登录页面的地址所对应的登录页面;
所述网关设备将所述待测试网站返回的所述登录页面发送给所述用户终端。
优选的,所述启动链接所对应的请求页面包括:
所述网关设备的公网地址;
一次登录参数所对应登录地址的内网地址信息。
优选的,所述网关设备向所述用户终端返回的所述登录页面中还包括测试标识,所述测试标识至少包括测试确认标识字段、测试地址范围标识字段和测试时间范围标识字段;
所述网关设备向所述用户终端返回的所述登录页面之后,所述用户终端保存所述登录页面中的测试标识,并在根据所述登录页面发送的登录请求中携带所述测试标识。
优选的,所述网关设备解析所述用户终端根据所述登录页面发送的登录请求,将所述解析的结果的值与所述测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息,具体为:
所述网关设备根据所述登录请求中携带的测试标识,判断所述登录请求是否为测试一次登录参数信息的请求消息;
如果所述登录请求是测试一次登录参数信息的请求消息,所述网关设备解析所述登录请求中登录信息的值,并对照存储的所述测试参数信息的值,如果信息内容一致,则获取所述登录请求所对应的待测试网站的一次登录参数信息。
优选的,所述网关设备解析所述登录请求中登录信息的值,并对照存储的所述测试参数信息的值,如果信息内容一致,则获取所述登录请求所对应的待测试网站的一次登录参数信息,具体为:
所述网关设备获取所述登录请求所包含的路径信息和服务器地址信息,确认所述登录请求所对应的地址信息的值;
所述网关设备将所述登录请求所包含的登录信息的值与存储的所述测试参数信息的值相匹配,将所述登录信息中与所述测试参数信息的值相一致的参数所对应的参数名确认为所述登录请求所对应的待测试网站的一次登录参数信息,并将所述一次登录参数信息进行存储。
另一方面,本发明还提供了一种网关设备,应用于包括用户终端和网关设备的系统中,包括:
通信模块,用于与所述用户终端和所述待测试网站进行通信,向所述待测试网站请求登录页面,并返回给所述用户终端,以及接收所述用户终端根据所述登录页面发送的登录请求;
测试参数设定模块,与所述通信模块电性连接,用于存储所述通信模块所接收的所述用户终端发送的设定消息所包含的测试参数信息的值;
参数获取模块,分别与所述测试参数设定模块和所述通信模块电性连接,解析所述通信模块接收到的所述用户终端根据所述登录页面发送的登录请求,并将所述解析的结果的值与所述测试参数设定模块所存储的测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息。
优选的,所述参数获取模块,具体包括:
地址获取子模块,用于获取所述登录请求所包含的路径信息和服务器地址信息,确认所述登录请求所对应的地址信息的值;
参数获取子模块,用于将所述登录请求所包含的登录信息的值与存储的所述测试参数信息的值相匹配,将所述登录信息中与所述测试参数信息的数值相一致的参数所对应的参数名确认为所述登录请求所对应的待测试网站的一次登录参数信息,并将所述一次登录参数信息进行存储。
优选的,所述通信模块还用于在向所述用户终端返回的所述登录页面中添加测试标识,所述测试标识至少包括测试确认标识字段、测试地址范围标识字段和测试时间范围标识字段。
与现有技术相比,本发明具有以下优点:
通过本发明,使用户可以通过简单的参数测试流程获取一次登录的参数信息,方便了管理员对一次登录特性的配置操作,减轻了维护管理工作的工作量。
附图说明
图1为现有技术中Web接入的流程示意图;
图2为现有技术中SSLVPN系统的结构示意图;
图3为现有技术中一次登录的处理流程示意图;
图4为现有技术中登录Web网站的http请求报文的格式示意图;
图5为现有技术中一种登录网站的Form代码示意图;
图6为本发明提供的一次登录参数的获取方法的流程示意图;
图7为本发明提供的具体场景中的一次登录参数的获取方法的流程示意图;
图8为本发明提供的一种配置ALR测试参数的Web页面示意图;
图9为本发明提供的一种ALR测试页面示意图;
图10为本发明提供的一种http请求示意图;
图11为本发明提供的一种分析获取登录请求参数的流程示意图;
图12为本发明提供的一种网关设备的结构示意图。
具体实施方式
为了解决背景技术中的问题,本发明提供了一种一次登录参数的获取方法,应用于包括用户终端、网关设备的系统中,其流程示意图如图6所示,包括以下步骤:
步骤S601、网关设备接收用户终端发送的包含测试参数信息的设定消息,并存储测试参数信息的值。
在具体的应用场景中,上述的包含测试参数信息的设定消息是用户通过用户终端向网关设备发送的,具体的发送过程根据应用场景的差异也存在多种情况,包括:用户通过用户终端直接向网关设备发送包含测试参数信息的消息,或用户通过用户终端向网关设备请求测试参数信息的提交页面,并将相应的测试参数信息填入该提交页面后发送给网关设备,完成测试参数信息的提交,具体提交方式的变化并不影响本发明的保护范围。
其中,测试参数信息至少包括以下内容:
待测试网站登录页面的地址;
测试用户名;
测试密码。
在实际的应用场景中,根据需要获取的一次登录参数信息的具体内容可以对上述的测试参数信息的内容进行调整,如需要获取一个附加参数的参数信息时,可以在上述的测试参数信息中加入该附加参数的内容,这样的变化并不影响本发明的保护范围。
步骤S602、网关设备向待测试网站请求测试参数信息所对应的登录页面,并将待测试网站返回的登录页面发送给用户终端,具体包括:
(1)网关设备向用户终端返回测试确认页面,测试确认页面包含测试一次登录参数信息的启动链接,其中,启动链接所对应的请求页面包括网关设备的公网地址,一次登录参数所对应登录地址的内网地址信息。
(2)当启动链接被启动时,网关设备根据启动链接的请求地址向测试参数信息所对应的待测试网站请求对应的登录页面;
(3)网关设备将待测试网站返回的登录页面发送给用户终端。
其中,网关设备向用户终端返回的登录页面中还包括测试标识,测试标识至少包括测试确认标识字段、测试地址范围标识字段和测试时间范围标识字段;
网关设备向用户终端返回的登录页面之后,用户终端保存登录页面中的 测试标识,并在根据登录页面发送的测试登录请求中携带测试标识。
步骤S603、网关设备解析用户终端根据登录页面发送的登录请求,将解析结果的值与测试参数信息的值相匹配,如果匹配结果一致,则获取待测试网站的一次登录参数信息,具体包括:
(1)网关设备根据测试登录请求中携带的测试标识,判断登录请求是否为测试一次登录参数信息的请求消息。
(2)如果登录请求不是测试一次登录参数信息的请求消息,则该登录请求是用户终端发送的正式的登录请求,按照现有的技术流程进行转发处理。
(3)如果登录请求是测试一次登录参数信息的请求消息,网关设备解析登录请求,获取其中登录信息的值,并对照存储的测试参数信息的值,如果内容一致,则获取登录请求所对应的待测试网站的一次登录参数信息,具体为:
网关设备获取登录请求所包含的路径信息和服务器地址信息,确认登录请求所对应的地址信息的值;
网关设备将登录请求所包含的登录信息的值(即用户名和密码的具体数值)与存储的测试参数信息的值相匹配,将登录信息中与测试参数信息的数值相一致的参数所对应的参数名确认为登录请求所对应的待测试网站的一次登录参数信息(即用户名和密码的名称),并将一次登录参数信息进行存储。
通过本发明,使用户可以通过简单的参数测试流程获取一次登录的参数信息,方便了管理员对一次登录特性的配置操作,减轻了维护管理工作的工作量。
下面结合具体的实施场景进行说明,为描述方便,以下将这种测试分析过程称为分析登录请求(Analysis of Logon Request,ALR)测试。前述的待测试网站通过认证服务器来实现认证服务,具体名称的变化并不影响本发明的保护范围。完整的ALR测试过程如图7所示:
为描述方便,对ALR的测试过程将举例说明,基于当前的应用场景,做出以下规则约定:
A、VPN网关的地址为vpn.abc.com,这是一个公网地址。
B、内部Web站点的名称为“tech”,地址为“www.tech.net”,这是一个私网地址。
tech网站登录页面的URL地址为http://www.tech.net/index.htm,该登录页面中包含的提交登录请求的URL地址为http://www.tech.net/logon.cgi,登录请求需要携带的参数有:用户名(参数名为user),密码(参数名为pwd)和附加参数。
附加参数有:key1=value1,key2=value2。
C、在SSL VPN网关上为tech网站映射了一个虚拟路径:“/web/tech/”。
以下对ALR测试过程进行说明:
步骤S701、管理员登录VPN网关,创建一个可以访问tech网站的网络资源配置项。
为了实现对tech网站的一次登录,需要配置以下的ALR测试参数:
a)指向网站登录页面的URL地址。
b)用于ALR测试的用户名和密码的具体数值。这一组信息仅用于测试,不必在认证服务器上存在对应的真实账号。
配置ALR测试参数的Web页面可以如图8所示:
URL地址的具体值为:http://www.tech.net/index.htm;
用于ALR测试的用户名和密码的具体数值分别为:“tester”和“123456”。
在输入完上述参数后,管理员点击页面中的“提交”按钮,向VPN网关提交ALR测试参数。
步骤S702、VPN网关在收到管理员提交的ALR测试参数后,将测试参数保存在相应的网络资源配置项中。并生成如图9所示的ALR测试页面,返回给管理员。
在ALR测试页面中,与“登录tech网站”按钮相关联的URL地址为:
http://vpn.abc.com/alrtest.cgi?page=tech
该URL的具体含义在下面会有详细说明。
步骤S703、管理员点击ALR测试页面中的“登录tech网站”按钮,将 向VPN网关发出一个http请求,所请求页面的URL为http://vpn.abc.com/alrtest.cgi?page=tech。
步骤S704、VPN网关接收到http请求后,对其进行解析。
解析的结果为:用户请求的页面是alrtest.cgi,请求的参数为page=tech,于是网关调用相应的处理函数alrtest()来处理该http请求,并将参数page传递进去。
alrtest()函数负责处理ALR测试请求:首先根据page参数,确定远程主机要访问的ALR测试站点为tech;接着查找tech网站所配置的ALR测试参数,可以得到tech网站的登录页面为:http://www.tech.net/index.htm;最后向tech 网站发出了获取登录页面的请求,请求的URL为http://www.tech.net/index.htm。
步骤S705、Web站点响应上述的http请求,向VPN网关返回自己的登录页面。
步骤S706、VPN网关接收到Web站点返回的登录页面后,对其进行URL改写,再将改写过的Web页面返回给远程用户。
在本例中,登录页面中包含着提交登录请求的URL地址:http://www.tech.net/logon.cgi。
VPN网关把此URL改写为:http://vpn.abc.com/web/tech/logon.cgi。
为了在收到对URL地址http://vpn.abc.com/web/tech/logon.cgi进行访问的http请求报文时,VPN网关能区分出是用户要求访问真实的Web站点,还是要求进行ALR测试,VPN网关可以在返回的http应答报文中增加一个cookie字段:
Set-Cookie:ALR_TEST=true;path=/;expires=Fri,30 Apr 2009 14:30:00GMT
在这个Cookie中设置了一个参数ALR_TEST,该参数为true表示正在进行ALR测试;“path=/”表示在浏览器今后访问当前网站(vpn.abc.com)“/”目录下的所有网页时,都需要在http请求中携带ALR_TEST参数;expires表示此参数的有效期,过期后,浏览器再访问此网站时将不再携带此参数。
Web浏览器在接收到此http应答报文后,将把Cookie中的参数保存在本地的缓存中。
步骤S707、管理员在登录页面中输入ALR测试帐号的用户名和密码,点击提交按钮,向VPN网关发出登录Web网站的http请求。
在本例中,管理员输入的用户名为tester,密码为123456。所提交的http请求如图10所示。
在该http请求头中携带着一个Cookie:ALR_TEST=true。
步骤S708、VPN网关对接收到的http请求进行分析,从中提取出登录Web站点的各种参数。
VPN网关对接收到的http请求进行语法解析,从中获得Cookie:ALR_TEST=true,从而可以确定此http请求是用于ALR测试的。然后可以采用图11所示的流程来分析登录请求参数:
结合本例,对ALR处理流程的说明如下:
步骤S1101、VPN网关对登录请求进行http协议的语法分析。
得到如下结果:
URL请求行中的路径为:/web/tech/logon.cgi
Host字段中的服务器地址为:vpn.abc.com
查询字符串的内容为:
user=tester&pwd=123456&key1=value1&key2=value2
步骤S1102、对原http请求报文中的URL地址进行组合,得到登录Web站点的URL。
将URL请求行与Host字段组合起来,就得到原http报文所请求页面的URL地址:http://vpn.abc.com/web/tech/logon.cgi。
步骤S1103、根据虚拟路径与内网站点的对应关系,对此URL进行改写,得到对tech网站的登录请求地址为:http://www.tech.net/logon.cgi。将此URL保存到VPN网关中关于tech网站的网络资源的配置项中。
步骤S1104、分解查询字符串获取登录信息。
在具体的应用场景中,可以以字符“&”为分隔符,将查询字符串分解为 多个Key-Value对。
步骤S1105、将登录信息匹配测试参数信息,获取一次登录的参数信息。
检查每个参数的数值部分。如果有某个参数的数值与所配置的ALR测试帐号的用户名相同,则该参数就是用户名参数,该参数的名称部分就是用户名参数的名称。采用类似的方法,可以得到密码参数的名称。
在本例中,查找参数值为tester的参数,得到用户名参数的名称为“user”;查找参数值为123456的参数,可以得到密码参数的名称为“pwd”。
余下的Key-Value对就是附加参数,不必再解析。
将分析出的用户名参数名称、密码参数名称和附加参数保存到VPN网关中关于tech网站的网络资源的配置项中。
以上就是本发明所提供的获取登录Web网站参数的方法。通过此方法,网络管理员在配置完一个Web资源后,如果要为此站点提供一次登录功能,则只需要配置几个ALR测试参数,然后执行一次ALR测试,就可以由VPN网关自动获取SSO特性所需的各种参数了。
进一步的为了实现上述的技术方案,本发明还提供了一种网关设备,应用于包括用户终端1和网关设备2的系统中,其结构示意图如图12所示,包括:
通信模块21,用于与用户终端1和待测试网站进行通信,向待测试网站请求登录页面,并返回给用户终端1,以及接收用户终端1根据登录页面发送的登录请求。
在实际的应用场景中,通信模块21还可以进一步完成网关设备2与用户终端1和待测试网站之间多种信息或消息的交互,而不仅限于上述的登录页面和登录请求,这样的变化并不影响本发明的保护范围。
测试参数设定模块22,与通信模块21电性连接,用于存储通信模块21所接收的用户终端1发送的设定消息所包含的测试参数信息的值。
在具体的应用场景中,上述的包含测试参数信息的设定消息是用户通过用户终端1向网关设备2发送的,具体的发送过程根据应用场景的差异也存 在多种情况,包括:用户通过用户终端1直接向网关设备2发送包含测试参数信息的消息,或用户通过用户终端1向网关设备2请求测试参数信息的提交页面,并将相应的测试参数信息填入该提交页面后发送给网关设备2,完成测试参数信息的提交。
如果采用了上述的请求测试参数信息的提交页面的方式,则需要通信模块21与用户终端1进行相应提交页面的请求和反馈,并接收用户终端1发送的包含测试参数信息的提交页面。
具体提交方式的变化并不影响本发明的保护范围。
参数获取模块23,分别与测试参数设定模块22和通信模块21电性连接,解析通信模块21接收到的用户终端1根据登录页面发送的登录请求,并将解析结果的值与测试参数设定模块22所存储的测试参数信息的值相匹配,获取待测试网站的一次登录参数信息,具体包括:
地址获取子模块231,用于获取登录请求所包含的路径信息和服务器地址信息,确认登录请求所对应的地址信息的值;
参数获取子模块232,用于将登录请求所包含的登录信息的值与存储的测试参数设定模块22所存储的测试参数信息的值相匹配,将登录信息中与测试参数信息的值相一致的参数所对应的参数名确认为登录请求所对应的待测试网站的一次登录参数信息,并将一次登录参数信息进行存储。
进一步的,参数获取模块23还用于判断所接收到的登录请求是否是测试一次登录参数信息的请求消息,如果登录请求是测试一次登录参数信息的请求消息,则按照上述的参数获取方案进行一次登录的参数获取,如果登录请求不是测试一次登录参数信息的请求消息,则该登录请求是用户终端发送的正式的登录请求,按照现有的技术流程进行转发处理。
在具体的应用场景中,通信模块21还用于在向用户终端1返回的登录页面中添加测试标识,测试标识至少包括测试确认标识字段、测试地址范围标识字段和测试时间范围标识字段。
通过本发明,使用户可以通过简单的参数测试流程获取一次登录的参数信息,方便了管理员对一次登录特性的配置操作,减轻了维护管理工作的工 作量。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种一次登录参数的获取方法,其特征在于,应用于包括用户终端和网关设备的系统中,包括以下步骤:
所述网关设备接收所述用户终端发送的包含测试参数信息的设定消息,并存储所述测试参数信息的值;
所述网关设备向待测试网站请求所述测试参数信息所对应的登录页面,并将所述待测试网站返回的登录页面发送给所述用户终端;
所述网关设备解析所述用户终端根据所述登录页面发送的登录请求,将所述解析的结果的值与所述测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息。
2.如权利要求1所述的方法,其特征在于,所述测试参数信息,至少包括:
所述待测试网站的登录页面的地址;
测试用户名;
测试密码。
3.如权利要求1所述的方法,其特征在于,所述网关设备向所述待测试网站请求所述测试参数信息所对应的登录页面,并将所述待测试网站返回的登录页面发送给所述用户终端,具体包括:
所述网关设备向所述用户终端返回测试确认页面,所述测试确认页面包含测试一次登录参数信息的启动链接;
当所述启动链接被启动时,所述网关设备根据所述启动链接的请求页面,向所述测试参数信息所对应的待测试网站请求所述登录页面的地址所对应的登录页面;
所述网关设备将所述待测试网站返回的所述登录页面发送给所述用户终端。
4.如权利要求3所述的方法,其特征在于,所述启动链接所对应的请求页面包括:
所述网关设备的公网地址;
一次登录参数所对应登录地址的内网地址信息。
5.如权利要求3所述的方法,其特征在于,
所述网关设备向所述用户终端返回的所述登录页面中还包括测试标识,所述测试标识至少包括测试确认标识字段、测试地址范围标识字段和测试时间范围标识字段;
所述网关设备向所述用户终端返回的所述登录页面之后,所述用户终端保存所述登录页面中的测试标识,并在根据所述登录页面发送的登录请求中携带所述测试标识。
6.如权利要求1或5所述的方法,其特征在于,所述网关设备解析所述用户终端根据所述登录页面发送的登录请求,将所述解析的结果的值与所述测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息,具体为:
所述网关设备根据所述登录请求中携带的测试标识,判断所述登录请求是否为测试一次登录参数信息的请求消息;
如果所述登录请求是测试一次登录参数信息的请求消息,所述网关设备解析所述登录请求中登录信息的值,并对照存储的所述测试参数信息的值,如果信息内容一致,则获取所述登录请求所对应的待测试网站的一次登录参数信息。
7.如权利要求6所述的方法,其特征在于,所述网关设备解析所述登录请求中登录信息的值,并对照存储的所述测试参数信息的值,如果信息内容一致,则获取所述登录请求所对应的待测试网站的一次登录参数信息,具体为:
所述网关设备获取所述登录请求所包含的路径信息和服务器地址信息,确认所述登录请求所对应的地址信息的值;
所述网关设备将所述登录请求所包含的登录信息的值与存储的所述测试参数信息的值相匹配,将所述登录信息中与所述测试参数信息的值相一致的参数所对应的参数名确认为所述登录请求所对应的待测试网站的一次登录参数信息,并将所述一次登录参数信息进行存储。
8.一种网关设备,应用于包括用户终端和网关设备的系统中,其特征在于,包括:
通信模块,用于与所述用户终端和待测试网站进行通信,向所述待测试网站请求登录页面,并返回给所述用户终端,以及接收所述用户终端根据所述登录页面发送的登录请求;
测试参数设定模块,与所述通信模块电性连接,用于存储所述通信模块所接收的所述用户终端发送的设定消息所包含的测试参数信息的值;
参数获取模块,分别与所述测试参数设定模块和所述通信模块电性连接,解析所述通信模块接收到的所述用户终端根据所述登录页面发送的登录请求,并将所述解析的结果的值与所述测试参数设定模块所存储的测试参数信息的值相匹配,如果匹配结果一致,则获取所述待测试网站的一次登录参数信息。
9.如权利要求8所述的网关设备,其特征在于,所述参数获取模块,具体包括:
地址获取子模块,用于获取所述登录请求所包含的路径信息和服务器地址信息,确认所述登录请求所对应的地址信息的值;
参数获取子模块,用于将所述登录请求所包含的登录信息的值与存储的所述测试参数信息的值相匹配,将所述登录信息中与所述测试参数信息的值相一致的参数所对应的参数名确认为所述登录请求所对应的待测试网站的一次登录参数信息,并将所述一次登录参数信息进行存储。
10.如权利要求8所述的网关设备,其特征在于,所述通信模块还用于在向所述用户终端返回的所述登录页面中添加测试标识,所述测试标识至少包括测试确认标识字段、测试地址范围标识字段和测试时间范围标识字段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101483747A CN101572608B (zh) | 2009-06-17 | 2009-06-17 | 一次登录参数的获取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101483747A CN101572608B (zh) | 2009-06-17 | 2009-06-17 | 一次登录参数的获取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101572608A CN101572608A (zh) | 2009-11-04 |
CN101572608B true CN101572608B (zh) | 2011-08-31 |
Family
ID=41231849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101483747A Active CN101572608B (zh) | 2009-06-17 | 2009-06-17 | 一次登录参数的获取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101572608B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102142939B (zh) * | 2010-06-12 | 2013-12-04 | 华为技术有限公司 | 一种前传规则的测试方法和装置 |
CN102299942B (zh) * | 2010-06-25 | 2015-01-28 | 中兴通讯股份有限公司 | 代理网络设备的管理方法和系统 |
CN101977224B (zh) * | 2010-10-28 | 2013-10-09 | 神州数码网络(北京)有限公司 | 一种基于SSL VPN设备的Web资源认证信息管理方法 |
CN102136964B (zh) * | 2010-11-25 | 2013-02-27 | 中国移动(深圳)有限公司 | 一种网站测试方法和系统 |
CN102571762A (zh) * | 2011-12-21 | 2012-07-11 | 深信服网络科技(深圳)有限公司 | 单点登录的方法和设备 |
CN102710456A (zh) * | 2012-04-21 | 2012-10-03 | 北京迈凯互动网络科技有限公司 | 移动应用测试方法和系统 |
CN103634159B (zh) * | 2012-08-24 | 2018-11-09 | 百度在线网络技术(北京)有限公司 | 一种基于模拟登录的流量回放方法和装置 |
CN103023908B (zh) * | 2012-12-21 | 2016-08-24 | 北京奇虎科技有限公司 | 一种网站信息获取方法、设备及系统 |
CN104156461B (zh) * | 2014-08-20 | 2017-12-19 | 深圳市共进电子股份有限公司 | 一种网关产品压力测试方法及装置 |
CN104333557A (zh) * | 2014-11-19 | 2015-02-04 | 成都卫士通信息安全技术有限公司 | 一种基于vpn网关的单点登录系统及方法 |
CN104836793B (zh) * | 2015-03-31 | 2018-07-27 | 北京奇虎科技有限公司 | 请求控制方法、服务器、客户端及系统 |
CN105959197B (zh) * | 2015-07-30 | 2019-05-07 | 杭州迪普科技股份有限公司 | 一种ssl vpn用户界面定制方法及装置 |
CN106802902A (zh) * | 2015-11-26 | 2017-06-06 | 北京国双科技有限公司 | 用户关联操作方法及装置 |
CN106372782A (zh) * | 2016-08-26 | 2017-02-01 | 重庆蓝盾电子技术服务公司 | 车辆管理查验测试系统的工作方法 |
CN106330925A (zh) * | 2016-08-26 | 2017-01-11 | 重庆蓝盾电子技术服务公司 | 云端控制车辆管理查验测试系统的工作方法 |
CN108650209B (zh) * | 2018-03-06 | 2021-05-14 | 北京信安世纪科技股份有限公司 | 一种单点登录的方法、系统、装置及认证方法 |
CN108768961B (zh) * | 2018-05-11 | 2021-03-30 | 中国联合网络通信集团有限公司 | 存储处理方法及家庭网关 |
CN109951535B (zh) * | 2019-03-05 | 2021-10-22 | 网经科技(苏州)有限公司 | 基于key-value机制的设备中各个模块间可靠通信方法 |
CN110351259A (zh) * | 2019-06-28 | 2019-10-18 | 深圳数位传媒科技有限公司 | 一种基于网络抓包获取app认证信息的方法及装置 |
CN112788019B (zh) * | 2020-12-30 | 2023-04-07 | 杭州天谷信息科技有限公司 | 一种零信任理念下的应用融合方案 |
CN113938886B (zh) * | 2021-11-30 | 2024-04-05 | 上海派拉软件股份有限公司 | 身份认证平台测试方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848766A (zh) * | 2005-04-14 | 2006-10-18 | 阿尔卡特公司 | 管理专用网络之间的网络服务的系统和方法 |
CN101064611A (zh) * | 2006-04-24 | 2007-10-31 | 维豪信息技术有限公司 | 基于注册和呼叫控制的应用整合方法 |
CN101404643A (zh) * | 2008-11-13 | 2009-04-08 | 中国移动通信集团福建有限公司 | 基于ipsec技术实现无线单点登录系统及其运行方法 |
-
2009
- 2009-06-17 CN CN2009101483747A patent/CN101572608B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848766A (zh) * | 2005-04-14 | 2006-10-18 | 阿尔卡特公司 | 管理专用网络之间的网络服务的系统和方法 |
CN101064611A (zh) * | 2006-04-24 | 2007-10-31 | 维豪信息技术有限公司 | 基于注册和呼叫控制的应用整合方法 |
CN101404643A (zh) * | 2008-11-13 | 2009-04-08 | 中国移动通信集团福建有限公司 | 基于ipsec技术实现无线单点登录系统及其运行方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101572608A (zh) | 2009-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101572608B (zh) | 一次登录参数的获取方法及装置 | |
US8990911B2 (en) | System and method for single sign-on to resources across a network | |
Li et al. | Security issues in OAuth 2.0 SSO implementations | |
US8738731B2 (en) | Method and system for providing secure access to private networks | |
CN101977224B (zh) | 一种基于SSL VPN设备的Web资源认证信息管理方法 | |
US7877440B2 (en) | Web resource request processing | |
US7793342B1 (en) | Single sign-on with basic authentication for a transparent proxy | |
EP1442580B1 (en) | Method and system for providing secure access to resources on private networks | |
Miculan et al. | Formal analysis of Facebook Connect single sign-on authentication protocol | |
GB2349244A (en) | Providing network access to restricted resources | |
US9398075B2 (en) | Communication system, communication apparatus, communication method, and storage medium | |
US9059987B1 (en) | Methods and systems of using single sign-on for identification for a web server not integrated with an enterprise network | |
CN111510461B (zh) | 一种web应用集中发布权限管理系统及方法 | |
CN103634111B (zh) | 单点登录方法和系统及单点登录客户端 | |
US20140026203A1 (en) | Authenticating a user for testing purposes | |
CN112838951A (zh) | 一种终端设备的运维方法、装置、系统及存储介质 | |
Rocchetto et al. | Model-based detection of CSRF | |
CN105959278B (zh) | 一种调用vpn的方法、设备和系统 | |
CN105205078A (zh) | 访问网页的方法和装置 | |
CN107294917A (zh) | 一种信任登录方法和装置 | |
JP6840505B2 (ja) | システム、サービス提供装置、システムの制御方法およびプログラム | |
CA3100164C (en) | Pre-registration of authentication devices | |
Haron et al. | Re-engineering of web reverse proxy with shibboleth authentication | |
JP2017134535A (ja) | システム、及びシステムの制御方法 | |
KR20040053722A (ko) | 멀티미디어 콘텐츠의 분산형 신디케이트 서비스 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |