CN101686245A - 用于隔离超文本传输协议会话的方法和系统 - Google Patents
用于隔离超文本传输协议会话的方法和系统 Download PDFInfo
- Publication number
- CN101686245A CN101686245A CN200810166021.5A CN200810166021A CN101686245A CN 101686245 A CN101686245 A CN 101686245A CN 200810166021 A CN200810166021 A CN 200810166021A CN 101686245 A CN101686245 A CN 101686245A
- Authority
- CN
- China
- Prior art keywords
- transfer protocol
- hypertext transfer
- protocol session
- session
- sign
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
Abstract
本发明提供了一种用于隔离超文本传输协议会话的方法和系统。所述方法包括:在客户端检测将在同一超文本传输协议会话中请求服务器来实例化同一应用的事件;响应于该事件,从服务器获取另一超文本传输协议会话标识,该另一超文本传输协议会话标识与将被实例化的服务实例对应;以及将当前会话中的超文本传输协议会话标识设置为与将与服务器通信的服务实例对应的超文本传输协议会话标识。通过本发明的方法和系统,可以避免现有技术中的各种问题,诸如数据混淆、数据错误、使用不便等,并给用户带来了良好的体验,从而很好地满足了商业需求。
Description
技术领域
本发明涉及超文本传输协议(HTTP,Hypertext Transfer Protocol)会话技术,尤其涉及用于隔离HTTP会话的方法和系统。
背景技术
HTTP协议是一种一次性的单向协议。根据HTTP协议,服务器不能主动连接客户端,只能被动地等待并答复客户端的请求。由于HTTP其本身并不支持在服务器保存客户端的状态信息,因此引入了一种状态管理机制,即会话机制,用以在服务器与客户端之间保持状态。
会话机制的引入克服了HTTP的一些限制,使得能够在客户端及服务器维护各请求间的关系。根据会话机制,当客户端初次连接服务器时,在服务器建立HTTP会话并保存与该会话相关的变量,同时产生一个HTTP会话标识(ID)用来识别该会话的变量。接着,服务器会在HTTP响应中指示浏览器在客户端生成与该HTTP会话标识对应的“Cookie”。Cookie是服务器存储在客户端的一小段文本,在会话期间,每次通过浏览器向服务器发出HTTP请求时,都会将Cookie中包含的会话标识包括在HTTP请求中发送给服务器,从而使服务器能够识别该会话,并获得与该会话相关的变量。
然而,在现有技术中,通常存在这样的情况,即,通常在一个HTTP会话中需要运行与同一应用对应的多个服务实例。在这种情况下,该多个服务实例共享了同一个HTTP会话。此时,就可能会出现问题。
图1示出了在现有技术中可能会出现问题的一种环境的示例。如图所示,在该示例中,有两个服务器,一个是门户服务器110,另一个是软件即服务应用(SaaS,Software As a Service)服务器,诸如结算服务器120。
用户可以通过浏览器以自己的用户名和密码登陆门户网络服务器110,随后用户进入页面100。在页面100中,包括有三个用户接口组件,即内嵌框架(IFrame)101、内嵌框架102和内嵌框架103。IFrame 101、IFrame 102和IFrame 103都对应于相同的结算应用,因此它们的接入点相同。然而,与IFrame 101对应的服务实例是“A”公司的主数据,与IFrame 102对应的服务实例是“B”公司的主数据,而与IFrame 103对应的服务实例是与“C”公司对应的主数据。
在图1的左下方示出了这三个IFrame都打开时的Cookie 104的示例。从该示例可以看出,Cookie 104中存在两个会话标识,即JSESSIONID 105和JSESSIONID 106。JSESSIONID 105用于在与门户服务器110通信时使用,同时在门户服务器110中保存有与JSESSIONID 105对应的变量信息111。JSESSIONID 106用于在与结算服务器120通信时使用,同时在结算服务器120中保存有与JSESSIONID 106对应的变量信息121。
根据现有技术,尽管在这种情况下存在与结算应用对应的三个服务实例,但在与结算服务器120通信时,却都是使用JSEESIONID106。由于利用该JSESSIONID 106根本无法区分正在使用的是哪个服务实例,因此通常会出现问题。这是因为在对“A”公司的主数据进行操作之后,结算服务器120处所存储的会话变量是与“A”公司相关的值,而在对“B”公司的主数据进行操作后,结算服务器120处所存储的会话变量可能是与“B”公司相关的值。因此,在操作了“B”公司的主数据后,再返回查看“A”公司的主数据,此时看到的实际可能是与“B”公司相关的主数据。这造成了极大的混乱,并且还会出现数据错误的问题。
因此,在一些应用中,为了避免这种现象,特别地设计了一种机制,该机制在检测到在同一HTTP会话期间要求实例化同一应用的多个服务实例时,禁止该操作。换句话讲,如果想要处理其他公司的数据,必须结束当前HTTP会话,重新连接服务器。利用这种方式,虽然避免了数据混乱和数据错误的问题,但是却非常麻烦,给用户带来了很不好的体验。因此,这种解决方案在根本上是不能满足商业需求的。
还有另一种解决方案,即仅确保最后接入的服务实例的数据正确。这种方案简单,但是用户不能查看先前应用实例的主数据。这依然给用户带来了很大的不便。
虽然图1示出了结算服务器和门户服务器位于同一域中的环境,实际上在结算服务器和门户服务器处于不同域时也同样会存在这些问题。
发明内容
为此,本发明提供了一种用于隔离HTTP会话的方法和系统,以便克服现有技术中的问题。
根据本发明的一个方面,提供了一种用于隔离超文本传输协议会话的方法。该方法包括:在客户端检测将在同一超文本传输协议会话中请求服务器来实例化同一应用的事件;响应于该事件,从服务器获取另一超文本传输协议会话标识,该另一超文本传输协议会话标识与将被实例化的服务实例对应;以及将当前会话中的超文本传输协议会话标识设置为与将与服务器通信的服务实例对应的超文本传输协议会话标识。
在本发明的一个实施方式中,获取超文本传输协议会话标识的步骤包括:在请求实例化所述同一应用时,修改当前会话中的超文本传输协议会话标识,以使得所述服务器为将被实例化的服务实例生成所述另一超文本传输协议会话标识。
在本发明的另一实施方式中,通过删除当前会话中的超文本传输协议会话标识来执行所述修改。
在本发明的又一实施方式中,通过将当前会话中的超文本传输协议会话标识替换为所述服务器不能识别的值来执行所述修改。
在本发明的再一实施方式中,设置当前会话中的超文本传输协议会话标识的步骤包括:检测另一服务实例将与服务器通信的事件;响应于该事件,检索与所述另一服务实例对应的超文本传输协议会话标识;以及将当前会话中的超文本传输协议会话标识设置为检索到的超文本传输协议会话标识。
在本发明的另一实施例中,当前会话中的超文本传输协议会话标识是Cookie中的超文本传输协议会话标识,或者是包括在URL地址后的超文本传输协议会话标识。
在本发明的又一实施方式中,所述应用是软件即服务应用。
根据本发明的另一方面,提供了一种用于隔离超文本传输协议会话的系统,包括:会话管理器,用于检测将在同一超文本传输协议会话中请求服务器来实例化同一应用的事件;以及会话代理,用于响应于所述事件,从服务器获取另一超文本传输协议会话标识,该另一超文本传输协议会话标识与将被实例化的服务实例对应、以及用于将当前会话中的超文本传输协议会话标识设置为与将与服务器通信的服务实例对应的超文本传输协议会话标识。
在本发明的一个实施方式中,所述会话代理用于:在请求实例化所述同一应用时,修改当前会话中的超文本传输协议会话标识,以使得所述服务器为将被实例化的服务实例生成所述另一超文本传输协议会话标识。
在本发明的另一实施方式中,所述会话代理通过删除当前会话中的超文本传输协议会话标识来执行所述修改。
在本发明的又一实施方式中,所述会话代理通过将当前会话中的超文本传输协议会话标识替换为所述服务器不能识别的值来执行所述修改。
在本发明的再一实施方式中,所述会话管理器用于:检测另一服务实例将与服务器通信的事件,以及用于响应于该事件,检索与所述另一服务实例对应的超文本传输协议会话标识,并且其中,所述会话代理用于将当前会话中的超文本传输协议会话标识设置为检索到的超文本传输协议会话标识。
在本发明的另一实施例中,当前会话中的超文本传输协议会话标识是Cookie中的超文本传输协议会话标识,或者是包括在URL地址后的超文本传输协议会话标识。
在本发明的又一实施方式中,所述应用是软件即服务应用。
通过本发明的方法和系统,可以避免现有技术中在同一超文本传输协议会话中运行同一应用的多个服务实例时出现的诸如数据混淆、数据错误、使用不便等各种问题,并给用户带来了良好的体验,从而很好地满足了商业需求。
附图说明
通过对结合附图所示出的实施方式进行详细说明,本发明的上述以及其他特征将更加明显,本发明附图中相同的标号表示相同或相似的部件。在附图中,
图1示出了现有技术中可能会出现问题的环境的示例;
图2示意性地出了根据本发明一个实施方式的用于隔离HTTP会话的方法的流程图;
图3a示意性地示出了根据本发明一个实施方式在实例化与同一应用对应的第一、第二和第三服务实例时的过程;
图3b示意性地示出了根据本发明一个实施方式在与同一应用对应的三个服务实例之间进行切换的过程;
图4a-4e示出了浏览器实例与服务器进行通信期间的Cookie以及子会话信息表的示例;
图5示意性地出了根据本发明一个实施方式的用于隔离HTTP会话的系统的方框图;以及
图6示例性示出了可以实现根据本发明的实施方式的计算设备的结构方框图。
具体实施方式
在下文中,将参考附图通过实施方式对本发明提供的用于隔离HTTP会话的方法和系统进行详细地描述。
图2示出了根据本发明一个实施方式的用于隔离HTTP会话的方法的流程图。图3a意性地示出了根据本发明一个实施方式在实例化与同一应用对应的第一、第二和第三服务实例时的过程。下面将首先参考图2和3a来描述根据本发明的方法。
参考图2,首先在步骤200,进入页面。
该步骤的操作可进一步参见图3a中的方框300和310。用户首先以自己的用户名和密码登陆门户网络服务器310,接着进入包括若干IFrame的页面300。与图1中示出的情况类似,页面300包括IFrame1、IFrame 2、和IFrame 3(未示出),其组件ID分别为“01”、“02”、“03”。与IFrame 1、IFrame 2和IFrame 3对应的服务实例1、服务实例2和服务实例3例如分别是“SID=01”的A公司的主数据、“SID=02”的B公司的主数据以及“SID=03”的C公司的主数据。
另外,在页面300中包括有会话管理器330。会话管理器330可以解析应用的URL,并根据解析的应用的URL来建立或者初始化一个子会话信息表,如图4a所示,以便用于存储随后隔离HTTP会话得到的会话标识。该表410例如可以包括组件ID、统一资源定位符(URL,Uniform Resource Locator)以及会话Cookie名称、会话Cookie值等。由于在该页面中包括有与同一应用对应的三个IFrame,所以表中将包括三条记录411、412、413。需要说明的是,该表只是示例性的,本发明并不局限于此。
接着返回图2,在步骤201,在客户端检测将在同一HTTP会话中请求服务器来实例化同一应用的事件。
参考图3a,包括在页面300中的会话管理器330例如通过监视请求新打开IFrame的事件,来检测出将在同一HTTP会话中请求服务器来实例化同一应用的事件。
如图3a所示,在用户请求打开服务实例1对应的IFrame1时,会话管理器可以检测到现在还不存在与SaaS服务器之间的任何HTTP会话。因此,浏览器实例向SaaS服务器320发出HTTP请求。SaaS服务器320响应于该请求生成一个HTTP会话标识,诸如“1122ddaabbcc”,同时在服务器端保存与该会话相关的变量。SaaS服务器320还通过在HTTP响应的头部中包括一行特殊的指令来指示浏览器实例在客户端生成与该HTTP会话标识对应的Cookie,如图4b的表420所示,表中的信息422即为与服务实例1对应的会话标识“1122ddaabbcc”。需要说明的是,为了清楚起见,表420中仅示出了与SaaS服务器320相关的cookie信息421,而并未示出与门户服务器310相关的cookie信息。
在得到了HTTP会话标识后,会话代理331会将HTTP会话标识作为信息414注册到会话信息表410中,结果得到如图4c所示的子会话信息表410。
例如,在请求打开服务实例2对应的IFrame时,会话管理器可以确定将要利用当前的HTTP会话标识(即,“1122ddaabbcc”)请求SaaS服务器来实例化服务实例2,这时就需要根据本发明的方法对HTTP会话进行隔离。此时也是隔离HTTP会话的适当时机。
返回图2,在步骤202,响应于该事件,从服务器获取另一HTTP会话标识,该另一HTTP会话标识与将被实例化的服务实例对应。
在得到了隔离HTTP会话的适当时机之后,会话管理器330可以指示会话代理331来获取另一HTTP会话标识,该另一HTTP会话标识与将要实例化的服务实例2对应。
如图3a所示,在根据本发明的一个实施方式中,在会话管理器330检测到将在同一HTTP会话中请求实例化所述同一应用的事件时,例如,在已经运行了服务实例1的情况下,要运行服务实例2时,会话管理器330可以指示服务实例1中的会话代理331来修改Cookie中的当前HTTP会话标识,即表420中的信息422,以使得SaaS服务器320把发送给它的HTTP请求当作是新的请求,并生成新的HTTP会话标识。该修改可以通过删除Cookie中的HTTP会话标识来实现,或者可替代地,通过将Cookie中的HTTP会话标识替换为所述SaaS服务器不能识别的值来实现,例如替换为随机生成的一个值。
由于SaaS服务器320无法识别HTTP请求中包括的HTTP会话标识,所以SaaS服务器320会在HTTP响应中,指示浏览器实例生成与该新生成的HTTP会话标识对应的Cookie。该新生成的Cookie将替换原有的Cookie,并且该新生成的Cookie与原Cookie类似,只是新生成的Cookie中包括的是新生成的HTTP会话标识。
接着,与实例化服务实例1时的情况类似,可以通过包括在实例化得到的服务实例2中的会话代理332将新生成的HTTP会话标识(例如“2233ddbbccaa”)注册到会话信息表410中,结果得到如图4d所示的子会话信息表410。另外,也可以通过已经存在的其他的会话代理从cookie中取出新生成的HTTP会话标识,并向会话管理器330注册,这是因为服务实例1-3属于相同域,浏览器允许在相同域内进行的修改Cookie的操作。
同样,在请求打开与服务实例3对应的IFrame3时,会话管理器330将指示会话代理331或者会话代理332来修改Cookie。接着,与请求实例化服务实例2的情形类似,可以得到与服务实例3对应的HTTP会话标识,例如,“3344bbccaadd”。
然后,可以通过会话代理331、会话代理332和会话代理333中的任何一个,将新得到的HTTP会话标识(例如,“3344bbccaadd”)注册到会话信息表410中,结果得到如图4e所示的会话信息表410。
这样,就得到了可以分别用于服务实例1、服务实例2和服务实例3的三个会话标识。
返回图2,在步骤203,将Cookie中的HTTP会话标识设置为与将与服务器通信的服务实例对应的HTTP会话标识。
会话管理器330可以例如通过检测服务实例对应的IFrame的切换,来检测另一服务实例将与SaaS服务器320通信的事件,从而获得设置会话ID的适当时机。
如图3b所示,在会话管理器330检测到要从服务实例2切换到服务实例1时,则利用与服务实例1对应的组件ID“01”作为关键字,从由它维护的子会话信息表410(如图4e所示)中检索出对应的HTTP会话标识“1122ddaabbcc”。
然后,会话管理器330将该HTTP会话标识发送给将服务实例1中包括的会话代理331。会话代理331接收到会话管理器330发送过来的HTTP会话标识后,根据指示将Cookie中的HTTP会话标识设置为检索得到的HTTP会话标识“1122ddaabbcc”。
另外,由于服务实例1、服务实例2和服务实例3属于相同域,所以可以由包括在它们之中的任一会话代理来设置Cookie中的HTTP会话标识。
这样,在与SaaS服务器通信的时候,浏览器实例将自动把相应HTTP会话标识包括在HTTP请求中,从而SaaS服务器320可以识别出与服务实例2对应的会话变量并为服务实例2提供正确的数据。
需要说明的是,在上面参考图2-4所描述的实施方式中,SaaS服务器320与门户服务器310在同一个域中。因此,也可以在页面300中包括会话代理,用以为所有的服务实例设置和修改Cookie中的HTTP会话标识;或者,包括会话管理器330可以包括会话代理的功能。
另外,在SaaS服务器与门户服务器不属于相同域时,同样可以实现本发明。在这种情况下,包括在页面中的会话管理器300与会话代理331、332和332之间需要跨域通信,这可以利用跨域通信技术来实现。跨域通信是现有技术中已知的,因此为了清楚起见,不再赘述。
需要说明的是,虽然在上面示出的实施方式中,是结合Cookies技术来描述的,但是本发明并不局限于此。HTTP会话技术还可以通过其他技术来实现,例如,可以通过在每个URL地址后面加一个参数,即sessionid,来实现,这些都在本发明的范围之内。
此外,虽然在上面示出的实施方式中,结合SaaS应用来描述本发明,但这只是示例性的,本发明并非仅限于此。本发明中的应用可以是任何适当的应用,诸如像电子邮件应用、网上银行应用等一般的网络应用。
另外,虽然在上面示出的实施方式中,描述了本发明在一个浏览器实例的情况下的应用,但并不应当将其理解为是对本发明的限制。实际上,本发明适应用于在一个HTTP会话中需要运行同一应用的多个服务实例的环境,而与并非只是单个浏览器实例的情况。如果浏览器被设计为多个浏览器实例共享一个HTTP会话,则依然能够应用本发明。
此外,虽然在上面示出的实施方式中,结合IFrame对本明进行了详细描述,这只是出于说明的目的。实际上,本发明并不仅限于IFrame,本发明还可以应用于具有例如选项卡等任何其他适当的用户接口组件的环境中。
另外,还需说明的是,尽管在上面的实施例中按照步骤的顺序描述的本发明的方法,但并不应理解为这是为本发明的限制。例如,在首先实例化了服务实例1和服务实例2、然后切换至服务实例1、接着实例化服务实例3的情况下,就可以在执行了步骤201、202以及203后,接着执行步骤201和202。
此外,在上面示出的实施方式中,虽然由会话管理器集中管理所有子会话的会话标识,然而本发明并不限于此。各个服务实例中的会话代理可以各自保存它自己的会话标识,并且响应于服务管理器的指示,将Cookie中的HTPP会话标识修改为它自己的HTTP会话标识。
利用本发明的方法,通过向服务器请求与同一应用的多个服务实例的多个HTTP会话ID,实现了对现有技术中的HTTP会话的隔离,从而得到了与各个服务实例对应的子会话。在与服务器进行通信时,各个服务实例使用与其对应的HTTP子会话,从而使得服务器能够通过各个HTTP会话标识识别出各个服务实例,进而确保了数据的正确性,避免了现有技术中引起的混淆,并且这对于用户是透明的,从而带来了良好的用户体验,更好地满足了商业的需求。
下面,将参考图5来描述根据本发明的系统。图5示出了根据本发明的一个实施方式的用于隔离HTTP会话的系统。
如图5所示,系统500,包括:会话管理器501,用于检测将在同一HTTP会话中请求服务器来实例化同一应用的事件;以及会话代理502,用于响应于所述事件,从服务器获取另一HTTP会话标识,该另一HTTP会话标识与将被实例化的服务实例对应、以及用于将Cookie中的HTTP会话标识设置为与将与服务器通信的服务实例对应的HTTP会话标识。
在本发明的一个实施方式中,所述会话代理502用于:在请求实例化所述同一应用时,修改Cookie中的HTTP会话标识,以使得所述服务器为将被实例化的服务实例生成所述另一HTTP会话标识。
在本发明的另一实施方式中,所述会话代理502通过删除Cookie中的HTTP会话标识来执行所述修改。
在本发明的又一实施方式中,所述会话代理502通过将Cookie中的HTTP会话标识替换为所述服务器不能识别的值来执行所述修改。
在本发明的再一实施方式中,所述会话管理器501用于:检测另一服务实例将与服务器通信的事件,以及用于响应于该事件,检索与所述另一服务实例对应的HTTP会话标识;并且其中,所述会话代理502用于将Cookie中的HTTP会话标识设置为检索到的HTTP会话标识。
在本发明的另一实施例中,所述当前会话中的超文本传输协议会话标识是Cookie中的超文本传输协议会话标识,或者是包括在URL地址后的超文本传输协议会话标识。
在本发明的又一实施方式中,所述应用是软件即服务应用。
在上述本发明的系统的各实施方式中,会话管理器501和会话代理502的具体操作可以参考上面结合图2至图4对于本发明的方法的描述。
通过本发明提供的系统,可以确保数据的正确性,避免现有技术中引起的混淆,并且这对于用户是透明的,从而带来良好的用户体验,更好地满足了商业的需求。
下面,将参考图6来描述可以实现本发明的计算机设备。图6示意性示出了可以实现根据本发明的实施方式的计算设备的结构方框图。
图6中所示的计算机系统包括CPU(中央处理单元)1001、RAM(随机存取存储器)602、ROM(只读存储器)603、系统总线604、硬盘控制器605、键盘控制器606、串行接口控制器607、并行接口控制器608、显示器控制器609、硬盘610、键盘611、串行外部设备612、并行外部设备613和显示器614。在这些部件中,与系统总线604相连的有CPU 601、RAM 602、ROM 603、硬盘控制器605、键盘控制器606、串行接口控制器607、并行接口控制器608和显示器控制器609。硬盘610与硬盘控制器605相连,键盘611与键盘控制器606相连,串行外部设备612与串行接口控制器607相连,并行外部设备613与并行接口控制器608相连,以及显示器614与显示器控制器609相连。
图6所述的结构方框图仅仅为了示例的目的而示出的,并非是对本发明的限制。在一些情况下,可以根据需要添加或者减少其中的一些设备。
此外,本发明的实施方式可以以软件、硬件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。
虽然已经参考目前考虑到的实施方式描述了本发明,但是应该理解本发明不限于所公开的实施方式。相反,本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。以下权利要求的范围符合最广泛解释,以便包含所有这样的修改及等同结构和功能。
Claims (14)
1.一种用于隔离超文本传输协议会话的方法,包括:
在客户端检测将在同一超文本传输协议会话中请求服务器来实例化同一应用的事件;
响应于该事件,从服务器获取另一超文本传输协议会话标识,该另一超文本传输协议会话标识与将被实例化的服务实例对应;以及
将当前会话中的超文本传输协议会话标识设置为与将与服务器通信的服务实例对应的超文本传输协议会话标识。
2.根据权利要求1所述的方法,其中所述获取超文本传输协议会话标识的步骤包括:
在请求实例化所述同一应用时,修改当前会话中的超文本传输协议会话标识,以使得所述服务器为将被实例化的服务实例生成所述另一超文本传输协议会话标识。
3.根据权利要求2所述的方法,其中通过删除当前会话中的超文本传输协议会话标识来执行所述修改。
4.根据权利要求2所述的方法,其中通过将当前会话中的超文本传输协议会话标识替换为所述服务器不能识别的值来执行所述修改。
5.根据权利要求1所述的方法,所述设置当前会话中的超文本传输协议会话标识的步骤包括:
检测另一服务实例将与所述服务器通信的事件;
响应于该事件,检索与所述另一服务实例对应的超文本传输协议会话标识;以及
将当前会话中的超文本传输协议会话标识设置为检索到的超文本传输协议会话标识。
6.根据权利要求1所述的方法,其中所述当前会话中的超文本传输协议会话标识是Cookie中的超文本传输协议会话标识,或者是包括在URL地址后的超文本传输协议会话标识。
7.根据权利要求1至6任一项所述的方法,其中所述应用是软件即服务应用。
8.一种用于隔离超文本传输协议会话的系统,包括:
会话管理器,用于检测将在同一超文本传输协议会话中请求服务器来实例化同一应用的事件;以及
会话代理,用于响应于所述事件,从服务器获取另一超文本传输协议会话标识,该另一超文本传输协议会话标识与将被实例化的服务实例对应,以及用于将当前会话中的超文本传输协议会话标识设置为与将与服务器通信的服务实例对应的超文本传输协议会话标识。
9.根据权利要求8所述的系统,其中所述会话代理用于:
在请求实例化所述同一应用时,修改当前会话中的超文本传输协议会话标识,以使得所述服务器为将被实例化的服务实例生成所述另一超文本传输协议会话标识。
10.根据权利要求9所述的系统,其中所述会话代理通过删除当前会话中的超文本传输协议会话标识来执行所述修改。
11.根据权利要求9所述的系统,其中所述会话代理通过将当前会话中的超文本传输协议会话标识替换为所述服务器不能识别的值来执行所述修改。
12.根据权利要求8所述的系统,其中所述会话管理器用于检测另一服务实例将与所述服务器通信的事件,以及用于响应于该事件,检索与所述另一服务实例对应的超文本传输协议会话标识;以及其中所述会话代理用于将当前会话中的超文本传输协议会话标识设置为检索到的超文本传输协议会话标识。
13.根据权利要求8所述的系统,其中所述当前会话中的超文本传输协议会话标识是Cookie中的超文本传输协议会话标识,或者是包括在URL地址后的超文本传输协议会话标识。
14.根据权利要求8至13中任一项所述的系统,其中所述应用是软件即服务应用。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810166021.5A CN101686245B (zh) | 2008-09-28 | 2008-09-28 | 用于隔离超文本传输协议会话的方法和系统 |
US12/567,980 US8484360B2 (en) | 2008-09-28 | 2009-09-28 | Method and system for separating HTTP session |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810166021.5A CN101686245B (zh) | 2008-09-28 | 2008-09-28 | 用于隔离超文本传输协议会话的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101686245A true CN101686245A (zh) | 2010-03-31 |
CN101686245B CN101686245B (zh) | 2014-06-11 |
Family
ID=42049215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810166021.5A Expired - Fee Related CN101686245B (zh) | 2008-09-28 | 2008-09-28 | 用于隔离超文本传输协议会话的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8484360B2 (zh) |
CN (1) | CN101686245B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105812476A (zh) * | 2016-04-05 | 2016-07-27 | 深圳市深信服电子科技有限公司 | 访问被拒绝网站的方法及装置 |
CN105991739A (zh) * | 2015-02-28 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据请求方法和装置 |
CN112470443A (zh) * | 2018-08-07 | 2021-03-09 | 戴尔产品有限公司 | 将复位向的生物辨识装置隔离到远程会话 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999375B (zh) * | 2011-09-19 | 2016-10-05 | 腾讯科技(深圳)有限公司 | 防止应用程序运行多个实例的方法、装置及信息处理系统 |
EP3123411B1 (en) * | 2014-03-24 | 2020-09-23 | Amadeus S.A.S. | Double-processing prevention |
US10657465B2 (en) | 2014-03-24 | 2020-05-19 | Amadeus S.A.S. | Double-booking prevention |
US10491685B2 (en) * | 2015-03-31 | 2019-11-26 | Microsoft Technology Licensing, Llc | Session transfer between resources |
US11089079B2 (en) | 2017-11-22 | 2021-08-10 | International Business Machines Corporation | Asynchronously reading HTTP responses in separate process |
US10771564B2 (en) * | 2017-11-22 | 2020-09-08 | International Business Machines Corporation | Sharing system managed HTTP client sessions across processes |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2313524A (en) * | 1996-05-24 | 1997-11-26 | Ibm | Providing communications links in a computer network |
US6711618B1 (en) * | 1999-09-03 | 2004-03-23 | Cisco Technology, Inc. | Apparatus and method for providing server state and attribute management for voice enabled web applications |
AU4717901A (en) * | 1999-12-06 | 2001-06-25 | Warp Solutions, Inc. | System and method for dynamic content routing |
US7720908B1 (en) * | 2000-03-07 | 2010-05-18 | Microsoft Corporation | System and method for multi-layered network communications |
ATE422130T1 (de) | 2000-06-14 | 2009-02-15 | Sap Ag | Kommunikation zwischen klienten und servercomputern über http, verfahren, computerprogrammprodukt und system |
US6941562B2 (en) | 2000-12-01 | 2005-09-06 | Appeon Corporation | Method of <script> based remote JavaScript function call of web page |
US7039049B1 (en) * | 2000-12-22 | 2006-05-02 | 3Com Corporation | Method and apparatus for PPPoE bridging in a routing CMTS |
JP4449288B2 (ja) * | 2001-10-31 | 2010-04-14 | ヤマハ株式会社 | 認証方法およびその装置 |
US20030110266A1 (en) * | 2001-12-10 | 2003-06-12 | Cysive, Inc. | Apparatus and method of using session state data across sessions |
US7318238B2 (en) * | 2002-01-14 | 2008-01-08 | Microsoft Corporation | Security settings for markup language elements |
US7363340B2 (en) * | 2002-07-18 | 2008-04-22 | International Business Machines Corporation | Method and system for generating auxiliary-server cache identifiers |
CN100518176C (zh) * | 2002-12-02 | 2009-07-22 | Sap股份公司 | 实现有状态网络应用的会话返回 |
US20040210536A1 (en) * | 2002-12-18 | 2004-10-21 | Tino Gudelj | Cross-domain transactions through simulated pop-ups |
US7454622B2 (en) * | 2002-12-31 | 2008-11-18 | American Express Travel Related Services Company, Inc. | Method and system for modular authentication and session management |
JP4305004B2 (ja) * | 2003-02-28 | 2009-07-29 | ソニー株式会社 | 情報処理装置、およびコンテンツ情報処理方法、並びにコンピュータ・プログラム |
US7886217B1 (en) * | 2003-09-29 | 2011-02-08 | Google Inc. | Identification of web sites that contain session identifiers |
US7689712B2 (en) * | 2003-11-26 | 2010-03-30 | Ricoh Company, Ltd. | Techniques for integrating note-taking and multimedia information |
US7441000B2 (en) * | 2003-12-22 | 2008-10-21 | International Business Machines Corporation | Method for session sharing |
US7600230B2 (en) * | 2004-07-06 | 2009-10-06 | Oracle International Corporation | System and method for managing security meta-data in a reverse proxy |
JP4504167B2 (ja) * | 2004-11-24 | 2010-07-14 | 株式会社日立製作所 | マルチキャスト課金制御システム及びブロードバンドアクセスサーバ |
US8249915B2 (en) * | 2005-08-04 | 2012-08-21 | Iams Anthony L | Computer-implemented method and system for collaborative product evaluation |
DE602006005943D1 (de) * | 2005-09-08 | 2009-05-07 | Ibm | Verfahren und system für verbesserte client-servlet-kommunikation |
US20070136179A1 (en) * | 2005-12-14 | 2007-06-14 | Toolow, Inc., A Delaware Corporation | System & method for providing reverse auction services |
US7720556B2 (en) * | 2005-12-21 | 2010-05-18 | Lsi Corporation | Web-enabled solutions for memory compilation to support pre-sales estimation of memory size, performance and power data for memory components |
US20070233782A1 (en) * | 2006-03-28 | 2007-10-04 | Silentclick, Inc. | Method & system for acquiring, storing, & managing software applications via a communications network |
US8151327B2 (en) * | 2006-03-31 | 2012-04-03 | The 41St Parameter, Inc. | Systems and methods for detection of session tampering and fraud prevention |
US8352316B2 (en) * | 2006-07-27 | 2013-01-08 | Fatwallet, Inc. | Method of using a subdomain portion of a domain name to pass a unique tracking code |
US7624145B2 (en) * | 2007-01-06 | 2009-11-24 | Microsoft Corporation | Persistent collaborative framework for interactive web applications |
US20080195740A1 (en) * | 2007-02-12 | 2008-08-14 | Mobitv, Inc. | Maintaining session state information in a client server system |
EP1965301A1 (en) * | 2007-02-27 | 2008-09-03 | Abb Research Ltd. | Method and system for generating a control system user interface |
US20080228926A1 (en) * | 2007-03-13 | 2008-09-18 | Asher Shiratzky | Methods, media, and systems for balancing session initiation protocol server load |
US20080270974A1 (en) * | 2007-04-30 | 2008-10-30 | Krasimir Topchiyski | Enterprise JavaBeans Metadata Model |
US20090259744A1 (en) * | 2008-04-14 | 2009-10-15 | Kolke Daniel J | System and Method for Running a Web-Based Application while Offline |
-
2008
- 2008-09-28 CN CN200810166021.5A patent/CN101686245B/zh not_active Expired - Fee Related
-
2009
- 2009-09-28 US US12/567,980 patent/US8484360B2/en not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105991739A (zh) * | 2015-02-28 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据请求方法和装置 |
CN105991739B (zh) * | 2015-02-28 | 2019-06-18 | 阿里巴巴集团控股有限公司 | 一种数据请求方法和装置 |
CN105812476A (zh) * | 2016-04-05 | 2016-07-27 | 深圳市深信服电子科技有限公司 | 访问被拒绝网站的方法及装置 |
CN105812476B (zh) * | 2016-04-05 | 2019-04-19 | 深信服科技股份有限公司 | 访问被拒绝网站的方法及装置 |
CN112470443A (zh) * | 2018-08-07 | 2021-03-09 | 戴尔产品有限公司 | 将复位向的生物辨识装置隔离到远程会话 |
CN112470443B (zh) * | 2018-08-07 | 2023-06-16 | 戴尔产品有限公司 | 将复位向的生物辨识装置隔离到远程会话 |
Also Published As
Publication number | Publication date |
---|---|
US8484360B2 (en) | 2013-07-09 |
US20100082823A1 (en) | 2010-04-01 |
CN101686245B (zh) | 2014-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101686245B (zh) | 用于隔离超文本传输协议会话的方法和系统 | |
CN101997903B (zh) | 用于处理超文本传输协议请求的方法和系统 | |
CN104335523B (zh) | 一种权限控制方法、客户端及服务器 | |
CN101159714B (zh) | 一种即时通讯方法和装置 | |
CN101394371B (zh) | 用于实现聊天应用程序代理服务器的方法和系统 | |
CN103905497B (zh) | 实现第三方应用业务网站登录的方法、装置及应用平台 | |
CN102664909A (zh) | 通过用户标识符重新建立推送通知信道 | |
CN103795767B (zh) | 一种跨应用会话信息的同步方法及系统 | |
KR100354369B1 (ko) | 정보 처리 방법, 정보 처리 장치, 정보 처리 프로그램을 격납하는 기억 매체 | |
US9936027B2 (en) | Methods, systems, and computer readable media for application session sharing | |
CN104079683B (zh) | 一种授权域名服务器直接响应的域名解析方法及系统 | |
US11765112B2 (en) | Context driven dynamic actions embedded in messages | |
CN104753960A (zh) | 一种基于单点登录的系统配置管理方法 | |
CN101771724B (zh) | 异构分布式信息集成方法、装置及系统 | |
CN102664756B (zh) | 设备访问方法、装置及系统 | |
US10389811B2 (en) | Cloud data transmission system and dynamic data flow decentralizing method thereof | |
CN102891851A (zh) | 虚拟桌面访问控制方法、设备及系统 | |
CN102438022A (zh) | 一种登录服务器系统的方法、装置及系统 | |
CN102054213A (zh) | 一种信息集成方法、装置及系统 | |
CN107070885B (zh) | 信息处理方法、装置及系统 | |
CN105959197A (zh) | 一种ssl vpn用户界面定制方法及装置 | |
CN102957726B (zh) | 业务处理方法和系统 | |
CN109413181A (zh) | 一种实现应用程序的双架构模式方法 | |
CN101969426A (zh) | 分布式用户认证系统及其方法 | |
Cisco | About This Guide |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180615 Address after: 7 floor, building 10, Zhang Jiang Innovation Park, 399 Keyuan Road, Zhang Jiang high tech park, Pudong New Area, Shanghai. Patentee after: International Business Machines (China) Co., Ltd. Address before: New York grams of Armand Patentee before: International Business Machines Corp. |
|
TR01 | Transfer of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140611 Termination date: 20190928 |
|
CF01 | Termination of patent right due to non-payment of annual fee |