CN107534651B - 用于传送会话标识符的方法及设备 - Google Patents

用于传送会话标识符的方法及设备 Download PDF

Info

Publication number
CN107534651B
CN107534651B CN201680007597.XA CN201680007597A CN107534651B CN 107534651 B CN107534651 B CN 107534651B CN 201680007597 A CN201680007597 A CN 201680007597A CN 107534651 B CN107534651 B CN 107534651B
Authority
CN
China
Prior art keywords
request
client computer
session identifier
nad
redirected url
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
Application number
CN201680007597.XA
Other languages
English (en)
Other versions
CN107534651A (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.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
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 Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN107534651A publication Critical patent/CN107534651A/zh
Application granted granted Critical
Publication of CN107534651B publication Critical patent/CN107534651B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • 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
    • 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/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • 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/563Data redirection of data network streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

在实施例中,方法由网络接入设备(NAD)执行。NAD将第一HTTPS请求从客户端计算机(UE)传送到身份提供者计算机(IdP)。NAD将响应于第一HTTPS请求的此前被重定向的URL从IdP传送到UE,并且该此前被重定向的URL被配置为使得UE重定向到所述此前被重定向的URL。通过安全网络链路,NAD从UE接收指定所述此前被重定向的URL的特定请求。响应于接收到特定请求,NAD生成响应,该响应包括后续被重定向的URL和会话标识符,并且被配置为使得UE通过HTTPS连接重定向到IdP。NAD通过安全网络链路将所述后续被重定向的URL传送到UE。NAD将包括会话标识符的第二HTTPS请求从UE传送到IdP。

Description

用于传送会话标识符的方法及设备
技术领域
本公开总体涉及针对服务认证期间会话标识符的安全传输的用于分布式网络基础设施中的系统之间的数据通信的计算机实现的技术。
背景技术
本节描述的方法可被推行,但不必是此前已经被构思或推行的方法。因此,除非本文另有说明,否则本节描述的方法不构成本申请中的权利要求书的现有技术,并且不因包含在本节中而被承认为现有技术。
在分布式计算机网络中,对昂贵、复杂的软件即服务(SaaS)系统的用户进行认证受制于与管理用户的在线身份和提供对应用系统的有效企业访问相关的公知的安全问题。使用安全性断言标记语言(SAML)的单次登录(SSO)在某些情境下是应对这类问题的解决方案。身份提供者(IdP)计算机通常使用基于形式的认证来认证企业用户。IdP计算机向网络服务提供商发送具有关于待认证主题的属性数据的SAML断言,待认证主题通常是寻求访问SaaS系统的用户。在许多情况下,相关主题已经认证到个人计算机或智能电话,例如,通过利用客户端计算机或智能电话上的应用或应用程序的用户名和密码进行登录,并且该设备还已经根据网络安全协议认证到网络。在不要求用户再次输入凭证的情况下完成SaaS认证将是有用的。存在解决这些问题的尝试,但它们未能以具有针对所有通信的端到端安全性的安全方式来做到这一点。
一个解决方案涉及诸如路由器或交换机之类的网络接入设备(NAD)将会话标识符附加到从客户端发送到IdP的消息上。该解决方案可能给出会话标识符未暴露于捕获或欺骗的虚假信心,因为该解决方案基于可被捕获、欺骗、或屈服于其他攻击(例如,中间人(MitM))的超文本传输协议(HTTP)会话。简单来说,HTTP不应被用于跨不安全的网络传输秘密。当IdP驻留在本地网络之外(例如,在共享数据中心或云计算设施中)时,问题更加严重。HTTP的不安全性不能仅通过将通信更改为HTTP安全(HTTPS)来解决,因为这将要求NAD拦截并且更改客户端和IdP之间的消息,这本身就是可能因触发证书警告或连接拒绝而影响用户体验的MitM攻击。
因此,尚不存在在客户端和网络服务提供商之间的SSO流期间,在客户端、NAD、以及IdP之间传输会话标识符的安全和无缝的方式。由于缺乏端到端安全性,所尝试的解决方案未能在SSO流的早期防止对会话标识符的窃取和修改。需要提供无缝的用户体验并且允许在客户端、NAD、以及IdP之间安全分发会话标识符的方式。
发明内容
根据本公开的一个实施例,提供了一种用于传送会话标识符的方法,包括:通过安全网络链路,网络接入设备(NAD)将第一超文本传输协议安全(HTTPS)请求从客户端计算机传送到身份提供者计算机;由所述NAD将响应于所述第一HTTPS请求的此前被重定向的统一资源定位符(URL)从所述身份提供者计算机传送到所述客户端计算机,其中,所述此前被重定向的URL被配置为使得所述客户端计算机重定向到所述此前被重定向的URL;通过安全网络链路,所述NAD从所述客户端计算机接收指定所述此前被重定向的URL的特定请求;响应于接收到所述特定请求,所述NAD生成特定响应,所述特定响应包括后续被重定向的URL和会话标识符,其中,所述后续被重定向的URL被配置为使得所述客户端计算机通过HTTPS连接重定向到所述身份提供者计算机;由所述NAD将所述后续被重定向的URL通过所述安全网络链路传送到所述客户端计算机;由所述NAD将包括所述会话标识符的第二HTTPS请求从所述客户端计算机传送到所述身份提供者计算机;以及由所述身份提供者计算机在接收到所述第二HTTPS请求和所述会话标识符之后使用所述会话标识符来验证所述客户端计算机。
根据本公开的另一实施例,提供了一种用于传送会话标识符的设备,包括:通信接口,所述通信接口被配置为操作安全网络链路;处理器,所述处理器被耦合到所述通信接口;以及处理器逻辑,所述处理器逻辑被耦合到所述处理器和所述通信接口,并且被配置为:通过安全网络链路,将第一超文本传输协议安全(HTTPS)请求从客户端计算机传送到身份提供者计算机;将响应于所述第一HTTPS请求的此前被重定向的URL从所述身份提供者计算机传送到所述客户端计算机,其中,所述此前被重定向的URL被配置为使得所述客户端计算机重定向到所述此前被重定向的URL;通过安全网络链路,从所述客户端计算机接收指定所述此前被重定向的URL的特定请求;响应于接收到所述特定请求,生成特定响应,所述特定响应包括后续被重定向的URL和会话标识符,并且被配置为使得所述客户端计算机通过HTTPS连接重定向到所述身份提供者计算机;通过所述安全网络链路将所述后续被重定向的URL传送到所述客户端计算机;将包括所述会话标识符的第二HTTPS请求从所述客户端计算机传送到所述身份提供者计算机;以及由所述身份提供者计算机在接收到所述第二HTTPS请求和所述会话标识符之后使用所述会话标识符来验证所述客户端计算机。
根据本公开的又一实施例,提供了一种非暂态计算机可读介质,包括指令,所述指令当由一个或多个处理器执行时,使得:通过安全网络链路,网络接入设备(NAD)将第一超文本传输协议安全(HTTPS)请求从客户端计算机传送到身份提供者计算机;由所述NAD将响应于所述第一HTTPS请求的此前被重定向的统一资源定位符(URL)从所述身份提供者计算机传送到所述客户端计算机,其中,所述此前被重定向的URL被配置为使得所述客户端计算机重定向到所述此前被重定向的URL;通过安全网络链路,所述NAD从所述客户端计算机接收指定所述此前被重定向的URL的特定请求;响应于接收到所述特定请求,所述NAD生成特定响应,所述特定响应包括后续被重定向的URL和会话标识符,其中,所述后续被重定向的URL被配置为使得所述客户端计算机通过HTTPS连接重定向到所述身份提供者计算机;由所述NAD将所述后续被重定向的URL通过所述安全网络链路传送到所述客户端计算机;由所述NAD将包括所述会话标识符的第二HTTPS请求从所述客户端计算机传送到所述身份提供者计算机;以及由所述身份提供者计算机在接收到所述第二HTTPS请求和所述会话标识符之后使用所述会话标识符来验证所述客户端计算机。
附图说明
在附图中:
图1示出了安全地传送会话标识符的网络系统的实施例;
图2示出了安全地传送会话标识符的过程的实施例;
图3示出了安全地传送会话标识符的网络系统的实施例;
图4示出了安全地传送会话标识符的网络系统的实施例;
图5示出了安全地传送会话标识符的网络系统的实施例;
图6示出了安全地传送会话标识符的网络系统的实施例;
图7示出了可以在其上实现实施例的计算机系统;
图8示出了可以在其上实现实施例的网络接入设备。
具体实施方式
在下列描述中,为了解释的目的,许多具体细节被阐述以便提供对本公开的透彻的理解。然而,对于本领域技术人员将明显的是,本公开可以在没有这些具体细节的情况下被实施。在其他实例中,公知的结构和设备以框图的形式被示出以便避免不必要地模糊本发明。
本文根据下列大纲来描述实施例:
1.0 概览
2.0 结构和功能概览
2.1 初步流量
2.2 NAD约定
2.3 授权
2.4 退后认证
2.5 功能分解
3.0 过程概览
4.0 办公室部署
5.0 RADIUS部署
5.1 准备阶段
5.2 一般过程
6.0 SAML部署
6.1 SAML配置文件
7.0 VPN部署
8.0 硬件概览
9.0 扩展和替代
1.0 概览
在实施例中,方法由被定位为到受保护网络的接入端口的网络接入设备(NAD)(例如,路由器或交换机)来执行。NAD将第一安全超文本传输协议(HTTPS)请求从客户端计算机传送到身份提供者计算机。NAD将对第一HTTPS请求的HTTPS响应中的此前被重定向的统一资源定位符(URL)从身份提供者计算机传送到客户端计算机。响应中的URL被配置为使得客户端计算机重定向到所述此前被重定向的URL。通过安全网络链路,NAD从客户端计算机接收指定所述此前被重定向的URL的特定请求。响应于接收到该特定请求,NAD生成特定响应,该特定响应包括后续被重定向的URL和会话标识符,并且被配置为使得客户端计算机通过HTTPS连接重定向到身份提供者计算机。NAD通过安全网络链路将所述后续被重定向的URL传送到客户端计算机。NAD将包括会话标识符的第二HTTPS请求从客户端计算机传送到身份提供者计算机。
在实施例中,设备包括通信接口、处理器、以及使得设备执行上述方法的步骤的处理器逻辑。
2.0结构和功能概览
图1示出了安全地发送会话标识符的网络系统的实施例。在实施例中,可以在服务认证期间执行图1中的步骤。在实施例中,网络系统100包括网络接入设备(NAD)120、客户端计算机110、以及身份提供者计算机(IdP)130。IdP 130可以是能够托管网络服务并且响应于请求来传递标识信息的任意联网计算机。客户端计算机110可以是机架式服务器、个人计算机、平板计算机、智能电话、或例如使用浏览器程序来消费网络服务的其他联网计算机。
客户端计算机110通过安全网络链路191与NAD 120进行通信。安全网络链路191具有防止窃听的通信介质的实现方式。安全网络链路191可以是使用无线电传输的加密无线信道、诸如有线电缆或光纤之类的专用或非专用点对点链路、或通过不安全网络链路的虚拟专用网络(VPN)连接。客户端计算机110可以与NAD 120、IdP 130、以及未示出的其他远程计算机进行通信。去往或来自客户端计算机110的所有网络通信都经过安全网络链路191和NAD 120。
NAD 120是使得计算机能够连接到互联网协议(IP)网络的网络元件。NAD 120可以是无线接入点、交换机、路由器、或其他网络连接性元件。NAD 120具有足以作为有条件地生成会话标识符和统一资源定位符(URL)重定向的HTTP服务器来操作的处理电路和配置。若NAD 120是无线接入点,则它被配置用于物理或介质访问控制加密,例如,802.11强健安全性网络或802.11高级加密。
不管用于NAD 120的物理通信介质或配置如何,由NAD 120传送的通信都可以独立地利用诸如VPN之类的安全隧道。在可以利用安全网络链路191之前,NAD 120可强制应用客户端计算机110必须满足的链路安全协议(若存在),例如,密码或其他认证。若物理安全性得到保证,例如,当安全网络链路191是电缆时,则链路层安全性协议可能是不必要的。
NAD 120通过不安全网络192与IdP 130进行通信。不安全网络192可以是任意通信链路或链路和网络元件的聚合,例如,局域网、广域网、诸如公共互联网之类的互联网络或互联网络组。不安全网络192不需要防止窃听。
IdP 130可以托管管理远程主体的联合身份和认证的网络服务。根据实现方式,IdP 130的计算功能可包括诸如证书或密码之类的凭证的认证、零登录或单次登录的促进、身份配置文件的存储、以及与认证服务的集成。IdP 130可以认证来自多个安全性领域或组织的主体。IdP 130可以是机架式服务器计算机、工作站计算机、专用数据中心或诸如公共云计算设施之类的共享数据中心中的虚拟实例、或包括网络服务器的任意联网计算机。
尽管IdP 130被示出为与一个NAD 120和一个客户端计算机110进行交互,但IdP130可以与许多NAD 120同时进行交互,并且每个NAD 120与许多客户端计算机110同时进行交互。这类扇出允许IdP 130服务许多客户端计算机,这可能需要IdP 130的竖直或水平缩放。为了示出清楚的示例的目的,图1示出了与NAD和IdP的单个客户端计算机交互,但在实际的实施例中,系统中可能存在数以千计的客户端计算机,并且NAD和IdP可被配置为支持与大量客户端计算机的事务。
IdP 130被配置为有条件地重定向客户端请求。利用URL重定向实现重定向;在URL重定向中,在一种方法中,客户端请求指定第一URL,并且服务器响应于第一URL向客户端计算机返回包含第二URL的HTTP响应,其被配置为使得客户端计算机立即请求第二URL。URL重定向可以是客户端侧的或服务器侧的。服务器侧重定向可能涉及向客户端发送300系列HTTP状态码。客户端侧重定向可能涉及向客户端发送<meta>超文本标记语言(HTML)元素或用于执行的JavaScript。
2.1初步流量
客户端可以例如通过IdP发送具有联合认证的证据的索求。接受该索求的应用或服务被称为依赖方应用或索求感知应用。在操作中,客户端计算机110调用可以是联网计算机的服务提供商计算机(未示出)上所托管的依赖方应用的服务。服务提供商计算机可属于第三方并且可被连接到不安全网络192。依赖方应用可以是但不限于是:应用服务提供商、安全性断言标记语言(SAML)服务提供商、网络应用、SaaS、或用作安全网络服务的任意其他网络可用应用。服务提供商计算机和IdP 130各自托管不同的网络服务。服务提供商计算机托管用于由客户端计算机110消费的网络服务,而IdP 130托管授权该消费的网络服务。
依赖方应用被配置为依赖于IdP 130来提供客户端的联合认证。诸如客户端计算机110之类的客户端计算机在以下意义上是通用的:客户端计算机110不需要被配置有对IdP 130或NAD 120进行标识的数据、或被专门配置为与IdP或NAD互操作的程序。
当客户端计算机110向依赖方应用发送服务请求时,依赖方应用检测该服务请求是否已被授权。若服务请求尚未被授权,则依赖方应用向客户端计算机110发送指定IdP130为目标的URL重定向。使用来自依赖方应用的该URL重定向,客户端计算机110通过发送寻址到IdP 130的第一HTTPS请求144来尝试授权。第一HTTPS请求144经过NAD 120去往IdP130,如传送142所示。
通常在SSO或零登录(ZSO)环境中,客户端计算机110已经具有与IdP 130正在进行的认证会话,在这种情况下,第一HTTPS请求144将承载有效会话标识符,IdP 130将接受该有效会话标识符而不发送此前被重定向的URL 154。然而,在该示例中,客户端计算机110不具有与IdP 130正在进行的会话,因为客户端计算机100尚未登录到IdP 130。在接收到第一HTTPS请求144并且未检测到建立的会话时,IdP 130通过发送此前被重定向的URL 154来对客户端计算机110做出响应。此前被重定向的URL 154经过NAD 120去往客户端计算机110,如传送152所示。
2.2NAD约定
此前被重定向的URL 154的重定向URL指定IdP 130为目标主机,并且指定HTTP为客户端计算机110在执行重定向时所使用的传输协议。NAD 120被配置为识别具有该URL的请求。在接收到此前被重定向的URL154时,客户端计算机110使用该此前被重定向的URL154通过发送特定请求172来再次尝试授权,所述特定请求172寻址到此前被重定向的URL154中给出的重定向URL。由于来自客户端计算机110的所有流量都经过NAD 120,因此NAD 120接收特定请求172。NAD 120被配置为识别特定请求172并且不将它传送到网络192。
在接收到特定请求172时,NAD 120生成唯一的会话标识符,如生成174所示。NAD120可被配置为生成较小并且不透明的会话标识符。NAD120还可被配置为通过在会话标识符中包括一些随机性来实现稀疏。NAD120通过向客户端计算机110发送特定响应176来响应特定请求172。特定响应176包括会话标识符和后续被重定向的URL。所述后续被重定向的URL指定HTTPS作为传输协议并且指定IdP 130作为主机。
2.3授权
在接收到特定响应176时,客户端计算机110使用该特定响应176来通过发送第二HTTPS请求184来再次尝试授权。第二HTTPS请求184经过NAD 120去往IdP 130,如传送182所示。传送182可以是用于服务认证期间会话标识符的安全传输的最后步骤,然而,尽管未示出,但典型的登录和服务请求可以跟随传送182,并且可以在没有额外的重定向的情况下以直接的方式成功。在接收到第二HTTPS请求184和所包括的会话标识符时,IdP 130可以使用该会话标识符来认证客户端计算机110,可以可选地执行诸如服务访问控制之类的授权,并且返回安全性票据或其它临时凭证。客户端计算机110被登录并且可以使用临时凭证来激活依赖方应用的服务。
2.4退后(FALL BACK)认证
网络系统100的安全性拓扑可能并非总是可用的。在一种情况下,无论无线连接还是通过线缆连接,客户端计算机110可能漫游到不可信的NAD。在另一情况下,NAD 120的配置可能不完整。在任一情况下,NAD 120的作用未被实现,并且网络系统100的基础设施不能保证安全性。替代地,尽管未示出,但根据附加的交互实现认证,该认证作为退后认证而无缝地发生。
当IdP 130发送此前被重定向的URL 154时,IdP 130可能未被配置有指示NAD 120没有按预期参与的数据。同样地,当客户端计算机110通过发送特定请求172进行响应时,客户端计算机110可能也未被配置有指示NAD 120没有参与的数据。在任一情况下,退后仍可无缝地发生。例如,也许仅IdP 130同时服务的许多NAD的子集可能涉及退后。又如,安全网络链路191可能是双模的,并且对于不可信的客户端计算机(例如,缺少密钥扣的客户端计算机或未被列入白名单的客户端计算机)可能是不安全的。IdP 130可同时(可能通过同一NAD 120)服务客户端计算机以及涉及退后认证的子集的组合。
当NAD未被配置为识别特定请求172而是通过网络192将该请求传送到IdP 130时,退后场景可以开始。在该情况下,生成174、特定响应176、以及第二HTTPS请求184都不发生。替代地,IdP 130接收特定请求172并且执行退后认证。去往IdP 130的所有流量通常使用HTTPS。然而,特定请求172使用HTTP,IdP 130将其识别为对于退后认证的触发。
退后认证的机制取决于实现方式。例如,IdP 130可以向用于经由HTTPS进行访问的登录页面发布重定向,并且向客户端计算机110的用户询问密码。若退后认证成功,则典型的登录和服务请求可能接下来会发生并且以直接的方式成功。IdP 130可以执行诸如服务访问控制之类的授权,并且可以返回安全性令牌或其它临时凭证。在退后认证之后,客户端计算机110被登录并且可以使用安全性令牌来激活依赖方应用的服务,即使未实现NAD120的作用
2.5功能分解
图8是示出可以在其上实现本发明的实施例的NAD 120的功能分解的框图。可以根据所示出的一组模块和接口来实现NAD 120的职责。NAD120可具有其他模块化布置。NAD120的模块包括但不限于包括:入口接口802、出口接口804、身份提供者接口模块806、请求-响应传送模块808、以及重定向响应生成模块810。由于NAD 120中包括这些模块,因此NAD120是专用设备。这些模块中的每个模块可被实现为可编程逻辑阵列、专用集成电路、或固件。
分组中继根据入口接口802和出口接口804而发生。入口接口802具有足够的逻辑、电路、和/或固件来接收分组并且以允许检查的格式对它们进行缓冲。入口接口802将缓冲的分组提交给请求-响应传送模块808以供检查。请求-响应传送模块808具有足够的电路来检查缓冲的分组内容。若请求-响应传送模块808确定缓冲的分组不要求特殊处理,则请求-响应传送模块808指示出口接口804发出分组。出口接口804具有足够的电路来管理路由表、参与路由协议的控制平面、为缓冲的分组做出路由决定、以及通过适当的硬件端口发送缓冲的分组。入口接口802和出口接口804都管理链路层活动,例如,分组窗口、重新传输、确认、以及超时。
请求-响应传送模块808可以接收和识别需要拦截和特殊处理的特定请求,例如,图1的特定请求182。请求-响应传送模块808指示身份提供者接口模块806执行对缓冲的分组的特殊处理。身份提供者接口模块806具有足够的电路来生成会话标识符并且将缓冲的分组提交给重定向响应生成模块810。重定向响应生成模块810具有足够的电路来生成具有已知IdP计算机的重定向URL的重定向响应。重定向响应生成模块810指示出口接口804发送重定向响应。
3.0过程概览
图2示出了示例实施例中的用于服务认证期间会话标识符的安全传输的过程。为了示出清楚的示例的目的,可以参考图1来描述图2,但应理解,在其他实施例中不要求使用图1所示的特定布置。在该示例中,客户端计算机110利用IdP 130执行登录,作为激活依赖方应用的服务的序言。客户端计算机110可不存储指定需要登录并因此过早地向依赖方应用发送服务请求的数据或配置。依赖方应用检测到服务请求未经授权,并且向客户端计算机110发送指定IdP 130为目标的URL重定向。该过程按如下方式继续。
在步骤201中,NAD将第一HTTPS请求从客户端计算机传送到IdP。例如,在接收到来自依赖方应用的URL重定向时,并且根据该URL重定向,客户端计算机110通过发送寻址到IdP 130的第一HTTPS请求144来尝试授权。第一HTTPS请求144经过NAD 120去往IdP 130。
在步骤202中,NAD将此前被重定向的URL从IdP传送到客户端计算机。例如,在接收到第一HTTPS请求144并且未检测到建立的会话时,IdP 130通过发送此前被重定向的URL154来响应客户端计算机110。此前被重定向的URL 154经过NAD 120去往客户端计算机110。此前被重定向的URL 154被配置为使得客户端计算机110按此前被重定向的URL 154所指定的方式来重定向。
在步骤203中,NAD通过来自客户端计算机的安全网络链路来接收指定所述此前被重定向的URL的特定请求。例如,在接收到此前被重定向的URL 154时,客户端计算机110使用该此前被重定向的URL 154通过发送特定请求172来再次尝试授权,所述特定请求172寻址到此前被重定向的URL 154中给出的重定向URL。由于来自客户端计算机110的所有流量都经过NAD 120,并且不管特定请求172寻址到什么主机,NAD 120都接收特定请求172。尽管第一HTTPS请求144使用HTTPS作为传输协议,但特定请求172可使用HTTPS或HTTP,因为NAD120被配置为识别特定请求172并且不将它传送到不安全网络192。
在步骤204中,NAD生成包括后续被重定向的URL和会话标识符的特定响应。例如,在接收到特定请求172时,NAD 120生成唯一的会话标识符。NAD 120可被配置为生成较小并且不透明的会话标识符。NAD 120还可被配置为通过在会话标识符中包括一些随机性来实现稀疏。
在步骤205中,NAD通过安全网络链路将所述后续被重定向的URL传送到客户端计算机。例如,NAD 120通过向客户端计算机110发送特定响应176来响应特定请求172。特定响应176包括会话标识符和后续被重定向的URL。所述后续被重定向的URL指定HTTPS作为传输协议,并且指定IdP 130作为主机。
在步骤206中,NAD将包括会话标识符的第二HTTPS请求从客户端计算机传送到IdP。例如,在接收到特定响应176时,客户端计算机110使用特定响应176通过发送第二HTTPS请求184来再次尝试授权。第二HTTPS请求184经过NAD 120去往IdP 130。这可以是用于服务认证期间会话标识符的安全传输的最后步骤。此外,典型的登录和服务请求可以跟随。在接收到第二HTTPS请求184和所包括的会话标识符时,IdP 130可以使用该会话标识符来认证客户端计算机110,可以可选地执行诸如服务访问控制之类的授权,并且可以返回安全性票据或其它临时凭证。客户端计算机110被登录并且可以使用临时凭证来激活依赖方应用的服务。
4.0办公室部署
图3示出了安全地传送会话标识符的网络系统的实施例。例如,图3示出了放置会话cookie并且具有用于物理安全性的以太网线缆和交换机的网络系统300的实施例。网络系统300例示了公共计算云所支持的典型的办公室部署。网络系统300可以是网络系统100的实现方式,但网络系统100可具有其他实现方式。网络系统300包括台式个人计算机(PC)310、以太网线缆391、以太网交换机320、云IdP 330、以及互联网392。
台式PC 310可以是客户端计算机110的实现方式。云IdP 330可以是IdP 130的实现方式。云IdP 330可以是被外包给公共计算云的托管IdP。以太网交换机320可以是NAD120的实现方式。以太网交换机320可以是交换机或路由器。由于在该示例中寻求物理安全性,因此以太网交换机320不应是集线器。以太网线缆391可以是安全网络链路191的实现方式。以太网线缆391可以是金属线或光纤。以太网线缆391可具有包括可用收发器和光纤的15千米的范围。同样,因为该示例通过以太网线缆391的物理隔离来实现安全性,因此以太网线缆391不应是总线,例如,具有用于每个端点设备的线缆挂钩(drop)的共享线缆。线缆以太网的最早形式具有共享通信介质,不适用于该示例。具有共享介质的拓扑(例如,以太网总线或以太网集线器)可替代地使用图6所示的VPN实施例。互联网392可以是不安全网络192的实现方式。互联网392可以是全球互联网。
图3中实现的图1的组件还可具有其他实现方式。可以利用图1的其他实现方式来实现图3的一些特征。例如,会话cookie的放置不需要以太网线缆。图3的一些实现方式选择仅作为示例被描述。
尽管网络系统300实现了网络系统100的特征,但并非图1的所有必要的交互都在图3中被示出。替代地,图3仅示出了展示网络系统300的自定义特征的那些必要的交互。例如,图3中未出现第一HTTPS请求144,但该特征仍存在于网络系统300中。
在该示例中,尽管未示出,但台式PC 310已经通过向云IdP 330发送第一HTTPS请求144来尝试授权。在接收到第一HTTPS请求144并且未检测到建立的会话时,云IdP 330利用以下两个步骤来进行反应。首先,云IdP 330生成唯一的会话cookie。会话cookie与会话标识符不同,但二者在该示例中都存在。云IdP 330可被配置为生成较小并且不透明的会话cookie。云IdP 330还可被配置为通过在会话cookie中包括一些随机性来实现稀疏。为进一步确保真实性,从台式PC 310到云IdP 330的后续请求应承载该会话cookie。其次,云IdP330通过向台式PC 310发送此前被重定向的URL354来进行响应。此前被重定向的URL 354被配置为使得台式PC 310重定向回云IdP 330。此前被重定向的URL 354将在接收到会话cookie时放置该会话cookie。
在接收到此前被重定向的URL 354时,台式PC 310使用此前被重定向的URL 354通过发送寻址到云IdP 330的特定请求372来再次尝试授权。以太网交换机320被配置为识别特定请求372并且不将它传送到不安全的互联网392。这被示出为拦截374,其包括通过以太网交换机320生成会话标识符。
以太网交换机320通过向台式PC 310发送特定响应376来响应特定请求372。特定响应376包括会话标识符和后续被重定向的URL。所述后续被重定向的URL指定HTTPS作为传输协议,并且指定云IdP 330作为主机。尽管可能使用不安全的HTTP作为传输协议来传递特定响应376,但通过以太网线缆391物理地保证了安全性,防止诸如插入式分接头(vampiretap)之类的物理攻击。
在收到特定响应376时,台式PC 310通过向云IdP 330发送第二HTTPS请求384来使用特定响应376再次尝试授权。第二HTTPS请求384承载会话cookie以进一步确保真实性。第二HTTPS请求384的URL在URL的查询字符串中包括URL编码格式的会话标识符。由于会话标识符出现在查询字符串中,因此可以可选地利用GET动词而不是公共网关接口(CGI)POST来发送第二HTTPS请求384。由于GET可能缺少CGI形式数据,因此利用GET实现URL重定向可能要比利用POST实现URL重定向更简单。由于若干原因,GET增加了强健性。POST不与所有300系列状态码一起用于服务器侧重定向的。此外,当客户端在没有JavaScript的情况下(例如利用网络浏览器之外的专用应用)进行操作时,POST的脚本客户端侧重定向可能失败。URL编码和GET的使用还可有益于本发明的其他必要的重定向。
云IdP 330可以返回安全性票据或其它临时凭证。台式PC 310被登录并且可以使用临时凭证来激活依赖方应用的服务。
5.0 RADIUS部署
图4示出了使用加密的无线电并且根据用户服务中的远程认证拨号(RADIUS)协议被操作的网络系统400的实施例。网络系统400例示了漫游方的典型部署。网络系统400可以是网络系统100的实现方式,但网络系统100可具有其他实现方式。网络系统400包括:智能电话410、演进节点B(eNodeB)420、广域网(WAN)492、认证/授权/计费(AAA)服务器462、应用服务提供商(ASP)464、IdP 430、以及长期演进(LTE)链路491。
智能电话410可以是客户端计算机110的实现方式。IdP 430可以是IdP130的实现方式。eNodeB 420可以是NAD 120的实现方式。eNodeB 420可以是蜂窝电话基站或其他无线接入点。LTE链路491可以是安全网络链路191的实现方式。LTE链路491可以是密码加密的无线电信道,例如,LTE或全球微波接入互操作性(WiMAX)。例如,第三代和第四代(3G或4G)空中接口是足够安全的。WAN 492可以是不安全网络192的实现方式。蜂窝提供商的电话核心网络是WAN 492的部分。AAA服务器462可以是实现诸如RADIUS或Diameter之类的AAA协议的任意联网计算机。AAA服务器462的实现方式可以是广泛分布的专用AAA服务器的组,例如,接入网AAA服务器、代理AAA服务器、归属AAA服务器、以及访问AAA服务器。ASP 464可以是托管安全网络服务的任意联网计算机。
图4中实现的图1的组件还可具有其他实现方式。可以利用图1的其他实现方式来实现图4的一些特征。例如,RADIUS不要求蜂窝电话。图4的一些实现方式选择仅被提供为示例。除可能具有80千米范围的LTE链路491之外,网络系统400的组件可以分布在全球并且通过WAN 492交互。
尽管网络系统400实现了网络系统100的特征,但并非图1的所有必要的交互都在图4中被示出。替代地,图4仅示出了展示网络系统400的自定义特征的那些必要的交互。例如,图4中未出现此前被重定向的URL154,但该特征仍存在于网络系统400中。
5.1准备阶段
网络系统400以图4所示的准备阶段开始。在该示例中,智能电话410最近着陆在机场并且请求获取LTE链路491,如连接431所示。在接收到连接431时,代表智能电话410并且在电话核心网络的协助下,eNodeB420执行翻译432以生成RADIUS访问请求433,eNodeB 420将该请求发送到AAA服务器462。响应于接收到RADIUS访问请求433,AAA服务器462生成唯一的RADIUS会话标识符,并且在RADIUS访问接受434中将RADIUS会话标识符发送到eNodeB420。尽管智能电话410已经加入RADIUS网络,但在智能电话410之前发生的额外的认证可以使用ASP 464的服务。
尽管未示出,但在接收到RADIUS访问接受434时,eNodeB 420生成包括RADIUS会话标识符的会话标识符,并且然后将该会话标识符发送到智能电话410。智能电话410然后向ASP 464发送初始请求435作为激活服务的尝试。在接收到初始请求435时,ASP 464检测到初始请求435是在未经授权的情况下发生的,并且尽管未示出但通过向智能电话410发送URL重定向来进行响应。URL重定向指定IdP 430作为目标。
5.2一般过程
此时,网络系统400已经完成准备阶段。网络系统400现在开始也如图1所示的一般过程。在接收到ASP 464所发送的URL重定向时,智能电话410使用URL重定向来向IdP 430发送访问尝试444。访问尝试444是第一HTTPS请求144(图1的第一交互)的实现方式。在接收到访问尝试444时,尽管未示出,但IdP 430检测到访问尝试444未被认证,并且将此前被重定向的URL 154发送到智能电话410。
在接收到此前被重定向的URL 154时,智能电话410使用它来发送拦截请求472,该请求是特定请求172的实现方式。在接收到拦截请求472时,eNodeB 420通过执行生成474来生成会话标识符,该生成474是生成174的实现方式。eNodeB 420然后发送会话响应476,其是特定响应176的实现方式。会话响应476将会话标识符传递到智能电话410。
此时,智能电话410准备好完成联合登录。智能电话410向IdP 430发送包括会话标识符的登录484。登录484是第二HTTPS请求184(图1的最后一个交互)的实现方式。但是,联合登录尚未完成。在接收到登录484时,IdP 430委派会话验证。IdP 430从会话标识符中提取RADIUS会话标识符,并且将RADIUS会话标识符发送到AAA服务器462,如验证会话485所示。AAA服务器462通过发送可富含用户账户数据(例如,IdP 430可用于访问控制的许可和配额)的会话信息486进行响应。IdP 430可以返回安全性票据或其它临时凭证。智能电话410被登录并且可以使用临时凭证来激活依赖方应用的服务。
6.0SAML部署
图5示出了使用加密无线电并且利用SAML配置文件被操作的网络系统500的实施例。网络系统500例示了典型的无线办公室部署。网络系统500可以是网络系统100的实现方式,但网络系统100可具有其他实现方式。网络系统500包括:智能电话510、无线保真(Wi-Fi)路由器520、互联网592、SAML服务提供商564、IdP 530、以及Wi-Fi保护接入Ⅱ(WPA2)链路591。
智能电话510可以是客户端计算机110的实现方式。IdP 530可以是IdP130的实现方式。IdP 530被配置为发布SAML断言。Wi-Fi路由器520可以是NAD 120的实现方式。Wi-Fi路由器520可以是任意无线接入点。WPA2链路591可以是安全网络链路191的实现方式。互联网592可以是不安全网络192的实现方式。SAML服务提供商564可以是托管消费SAML断言的网络服务的任意联网计算机。
图5中实现的图1的组件还可具有其他实现方式。可以利用图1的其他实现方式来实现图5的一些特征。例如,SAML不要求Wi-Fi。图5的一些实现方式选择仅被提供为示例。除了可能具有30米范围的WPA2链路591之外,网络系统500的组件可以分布在全球并且通过互联网592交互。
尽管网络系统500实现了网络系统100的特征,但并非图1的所有必要的交互都在图5中被示出。替代地,图5仅示出了展示网络系统500的自定义特征的那些必要的交互。例如,图5中未出现此前被重定向的URL154,但该特征仍存在于网络系统500中。
6.1SAML配置文件
SAML配置文件是用于使用联合安全性来访问网络服务的标准化交互序列。该示例实现了网络浏览器SSO配置文件,其是SAML 2.0的主要配置文件。不管其名称,网络浏览器SSO配置文件不要求网络浏览器、令专用客户端应用嵌入HTTP用户代理、可适用于无界面(headless)客户端、并且不需要人工交互。
网络系统500以网络浏览器SSO配置文件所指定的并且如图5所示的准备阶段开始。在该示例中,智能电话510通过向SAML服务提供商564发送初始请求535作为激活服务的尝试来开始操作。在接收到初始请求535时,SAML服务提供商564检测到初始请求535是在未经授权的情况下发生的,并且尽管未示出但通过向智能电话510发送URL重定向来进行响应。URL重定向指定IdP 530作为目标。
此时,网络系统500已经完成准备阶段。网络系统500现在开始也如图1所示的一般过程。在接收到SAML服务提供商564所发送的URL重定向时,智能电话510使用URL重定向来向IdP 530发送访问尝试544。访问尝试544是第一HTTPS请求144(图1的第一交互)的实现方式。在接收到访问尝试544时,尽管未示出,但IdP 530检测到访问尝试544未被认证,并且将此前被重定向的URL 154发送到智能电话510。网络浏览器SSO配置文件要求此前被重定向的URL 154包括SAML<AuthnRequest>元素。
在接收到此前被重定向的URL 154时,智能电话510使用它来发送拦截572,该拦截572是特定请求172的实现方式。在接收到拦截572时,尽管未示出,但Wi-Fi路由器520生成会话标识符。尽管未示出,但Wi-Fi路由器520随后发送特定响应176。会话响应176将会话标识符传递到智能电话510。
此时,智能电话510准备好完成联合登录。智能电话510向IdP 530发送包括会话标识符的登录584。网络浏览器SSO配置文件要求登录584使用GET动词并且包括此前被重定向的URL 154的<AuthnRequest>元素的副本。登录584是第二HTTPS请求184(图1的最后一个交互)的实现方式。然而,联合登录尚未完成。在接收到登录484时,IdP 430生成SAML断言,IdP430在授权587中将该SAML断言发送到智能电话510。网络浏览器SSO配置文件要求授权587使用POST动词并且包含可扩展HTML(XHTML)形式,其具有包括SAML断言的SAML<Response>元素。智能电话510被登录并且可以使用SAML断言来激活依赖方应用的服务。
网络浏览器SSO配置文件直到智能电话510使用SAML断言来访问网络服务时才完整。网络浏览器SSO配置文件要求服务访问按步骤发生。首先,智能电话510向SAML服务提供商564发送断言588。网络浏览器SSO配置文件要求断言588使用POST动词并且包括授权587的<Response>元素的副本。在接收到断言588时,SAML服务提供商564向智能电话510发送重定向589。智能电话510使用重定向589来发送访问SAML服务提供商564的网络服务的成功请求590。在接收到成功请求590时,尽管未示出,但SAML服务提供商564执行所请求的服务并且发送响应,完成网络浏览器SSO配置文件。
7.0VPN部署
图6示出了使用通过不安全无线电的VPN隧道的网络系统600的实施例。网络系统600例示了公共无线接入点之上的安全覆盖网络,例如,当公共热点处的客户访问受限的门户网站时。网络系统600可以是网络系统100的实现方式。网络系统600包括:智能电话610、安全设备620、互联网692、IdP 630、不安全Wi-Fi链路602、以及VPN隧道691。
智能电话610可以是客户端计算机110的实现方式。IdP 630可以是IdP130的实现方式。安全设备620可以是NAD 120的实现方式,例如,思科自适应安全设备。开放Wi-Fi链路602可以是任意无线链路,例如,蓝牙、Wi-Fi、WiMAX、卫星、或蜂窝电话。开放Wi-Fi链路602不需要加密、保护、或信任。开放Wi-Fi链路602和互联网692可以是不安全网络192的实现方式。VPN隧道691可以是安全网络链路191的实现方式。VPN隧道691可以使用具有加密和认证的任意VPN隧道协议。
尽管网络系统600实现了网络系统100的特征,但并非图1的所有必要的交互都在图6中被示出。例如,图6中未出现此前被重定向的URL154,但该特征仍存在于网络系统600中。
网络系统600的组件可以分布在全球并且通过互联网692交互。图1的网络系统100的其他实施例将NAD 120物理地放置在客户端计算机110和不安全网络192之间。网络系统600替代地使用经修改的网络系统拓扑。网络系统600将互联网692物理地放置在智能电话610和安全设备620之间。智能电话610和安全设备620之间的物理接近是不必要的。
尽管未示出,网络系统600以在智能电话610和安全设备620之间握手以建立VPN隧道691的介绍阶段开始。智能电话610可以向安全设备620发送用于VPN认证的安全令牌或密码。智能电话610和安全设备620或IdP 630之间的所有后续通信可以通过VPN隧道691发生。
在建立VPN隧道691之后,网络系统600开始图1所示的一般过程。智能电话610向IdP 630发送访问尝试644。访问尝试644是第一HTTPS请求144(图1的第一交互)的实现方式。在接收到访问尝试644时,尽管未示出,但IdP 530检测到访问尝试644未被认证,并且将此前被重定向的URL 154发送到智能电话610。
在接收到此前被重定向的URL 154时,智能电话610对其进行处理以发送拦截672,该拦截672是特定请求172的实现方式。在接收到拦截672时,尽管未示出,但安全设备620生成会话标识符。尽管未示出,但安全设备620随后发送特定响应176。会话响应176将会话标识符传递到智能电话610。
此时,智能电话610准备好完成联合登录。智能电话610向IdP 630发送包括会话标识符的登录684。登录684是第二HTTPS请求184(图1的最后一个交互)的实现方式。智能电话610被登录并且可以激活依赖方应用的服务,例如,受限的门户网站。
8.0硬件概览
图7是示出可以在其上实现本发明的实施例的计算机系统700的框图。使用在诸如路由器设备之类的网络元件上运行的一个或多个计算机程序来实现优选实施例。因此,在该实施例中,计算机系统700是路由器。
计算机系统700包括总线702或用于传送信息的其他通信机制,以及与总线702相耦合的用于处理信息的处理器704。计算机系统700还包括耦合到总线702的用于存储信息和将由处理器704执行的指令的主存储器706,例如,随机存取存储器(RAM)、闪速存储器、或其它动态存储设备。主存储器706还可用于在将由处理器704执行的指令的执行期间存储临时变量或其他中间信息。计算机系统700还包括耦合到总线702的用于存储静态信息和用于处理器704的指令的只读存储器(ROM)708或其他静态存储设备。提供了诸如磁盘、闪速存储器、或光盘之类的存储设备710,并且被耦合到总线702以存储信息和指令。
通信接口718可被耦合到总线702以将信息和命令选择传送到处理器704。接口718是诸如RS-232或RS-422接口之类的传统串行接口。外部终端712或其他计算机系统连接到计算机系统700,并且使用接口718来向它提供命令。在计算机系统700中运行的固件或软件提供终端接口或基于字符的命令接口,以使得外部命令可以被给到计算机系统。
切换系统716被耦合到总线702,并且具有到一个或多个外部网络元件的输入接口714和输出接口719。外部网络元件可包括耦合到一个或多个主机724的本地网络722、或具有一个或多个服务器730的诸如互联网728之类的全球网络。切换系统716根据公知的预定协议和约定将到达输入接口714的信息流量切换到输出接口719。例如,切换系统716与处理器704合作可以确定到达输入接口714的数据的分组的目的地,并且使用输出接口719将其发送到正确的目的地。目的地可包括主机724、服务器730、其他端站点、或本地网络722或互联网728中的其他路由和切换设备。
根据一个实施例,响应于处理器704执行包含在主存储器706中的一个或多个指令的一个或多个序列,计算机系统700提供合规管理。这类指令可以从诸如存储设备710之类的另一计算机可读介质被读取到主存储器706中。包含在主存储器706中的指令序列的执行使得处理器704执行本文描述的处理步骤。多处理布置中的一个或多个处理器还可用于执行包含在主存储器706中的指令序列。在替代实施例中,硬连线电路可以替代软件指令或与软件指令结合来使用以实现本发明。因此,本发明的实施例不限于硬件电路和软件的任何特定组合。
如本文使用的术语“计算机可读存储介质”指参与向处理器704提供指令以供执行的任意介质。这样的介质可以采取许多形式,包括但不限于:非暂态非易失性存储介质和非暂态易失性存储介质。非易失性存储介质例如包括诸如存储设备710之类的光盘或磁盘。易失性存储介质包括诸如主存储器706之类的动态存储器。
计算机可读存储介质的常见形式包括,例如,软盘、软磁盘、硬盘、磁带、或任意其他磁介质、CD-ROM、任意其他光介质、打孔卡、纸带、具有孔图案的任意其他物理介质、RAM、PROM、以及EPROM、FLASH-EPROM、任意其他存储器芯片或盒、或计算机可以从其读取的任意其他非暂态有形存储介质。
各种形式的计算机可读存储介质可用于将一个或多个指令的一个或多个序列运载到处理器704以供执行。例如,初始地可以在远程计算机的磁盘上运载指令。远程计算机可以将指令加载到其动态存储器中,并且使用调制解调器通过电话线来发送指令。计算机系统700本地的调制解调器可以接收电话线上的数据,并且使用红外发送器将数据转换为红外信号。耦合到总线702的红外检测器可以接收红外信号中运载的数据,并且将数据放置在总线702上。总线702将数据运载到主存储器706,处理器704从主存储器706取回指令并执行指令。主存储器706接收到的指令可选地可以在由处理器704执行之前或之后被存储在存储设备710上。
通信接口718还提供到连接到本地网络722的网络链路720的双向数据通信耦合。例如,通信接口718可以是提供到相应类型的电话线的数据通信连接的综合业务数字网(ISDN)卡或调制解调器。作为另一示例,通信接口718可以是提供到兼容LAN的数据通信连接的局域网(LAN)卡。还可以实现无线链路。在任意这类实施例中,通信接口718发送和接收运载表示各类信息的数字数据流的电信号、电磁信号、或光信号。
网络链路720通常通过一个或多个网络来提供到其他数据设备的数据通信。例如,网络链路720可以通过本地网络722来提供到主机计算机724或到互联网服务提供商(ISP)726所操作的数据设备的连接。ISP 726进而通过世界范围分组数据通信网络(现在通常称为“互联网”728)来提供数据通信服务。本地网络722和互联网728都使用运载数字数据流的电信号、电磁信号、或光信号。运载去往和来自计算机系统700的数字数据的通过各种网络的信号、网络链路720上的信号、以及通过通信接口718的信号是传输信息的示例形式。
计算机系统700可以通过(一个或多个)网络、网络链路720、以及通信接口718来发送消息和接收包括程序代码的数据。在互联网示例中,服务器730可以通过互联网728、ISP726、本地网络722、以及通信接口718来发送应用程序的所请求的代码。根据本发明,一个被这样下载的应用提供如本文描述的顺从性管理。接收到的代码可以在其被接收时由处理器704执行、和/或存储在存储设备710、或其他非易失性存储装置中以供稍后执行。
9.0扩展和替代
在上述说明书中,已经参考可能随实现方式变化而变化的许多具体细节描述了本公开的实施例。因此,说明书和附图将被视为说明性的而非限制性的。

Claims (20)

1.一种用于传送会话标识符的方法,包括:
通过安全网络链路,网络接入设备(NAD)将第一超文本传输协议安全(HTTPS)请求从客户端计算机传送到身份提供者计算机;
由所述NAD将响应于所述第一HTTPS请求的此前被重定向的统一资源定位符(URL)从所述身份提供者计算机传送到所述客户端计算机,其中,所述此前被重定向的URL被配置为使得所述客户端计算机重定向到所述此前被重定向的URL;
通过安全网络链路,所述NAD从所述客户端计算机接收指定所述此前被重定向的URL的特定请求;
响应于接收到所述特定请求,所述NAD生成特定响应,所述特定响应包括后续被重定向的URL和会话标识符,其中,所述后续被重定向的URL被配置为使得所述客户端计算机通过HTTPS连接重定向到所述身份提供者计算机;
由所述NAD将所述后续被重定向的URL通过所述安全网络链路传送到所述客户端计算机;
由所述NAD将包括所述会话标识符的第二HTTPS请求从所述客户端计算机传送到所述身份提供者计算机;以及
由所述身份提供者计算机在接收到所述第二HTTPS请求和所述会话标识符之后使用所述会话标识符来验证所述客户端计算机。
2.如权利要求1所述的方法,其中,所述此前被重定向的URL包括所述身份提供者计算机的主机标识符,并且其中,所述NAD接收所述特定请求包括所述NAD拦截所述特定请求。
3.如权利要求1所述的方法,其中,所述此前被重定向的URL指定使用超文本传输协议(HTTP)。
4.如权利要求1所述的方法,其中,所述后续被重定向的URL包括包含所述会话标识符的查询字符串。
5.如权利要求1所述的方法,其中,所述此前被重定向的URL包括会话cookie,并且所述第二HTTPS请求包括所述会话cookie。
6.如权利要求1所述的方法,其中,所述安全网络链路包括下列项中的一项:虚拟专用网(VPN)链路、802.11强健安全性网络(RSN)链路、或802.1高级加密(AE)链路。
7.如权利要求1所述的方法,其中,安全性断言标记语言(SAML)元素被包括在下列项中的至少一项中:所述此前被重定向的URL和所述第二HTTPS请求。
8.如权利要求1所述的方法,其中,所述会话标识符至少部分地基于从下列项中选择的认证/授权/计费(AAA)协议的会话标识符:用户服务中的远程认证拨号(RADIUS)或Diameter。
9.一种用于传送会话标识符的设备,包括:
通信接口,所述通信接口被配置为操作安全网络链路;
处理器,所述处理器被耦合到所述通信接口;以及
处理器逻辑,所述处理器逻辑被耦合到所述处理器和所述通信接口,并且被配置为:
通过安全网络链路,将第一超文本传输协议安全(HTTPS)请求从客户端计算机传送到身份提供者计算机;
将响应于所述第一HTTPS请求的此前被重定向的URL从所述身份提供者计算机传送到所述客户端计算机,其中,所述此前被重定向的URL被配置为使得所述客户端计算机重定向到所述此前被重定向的URL;
通过安全网络链路,从所述客户端计算机接收指定所述此前被重定向的URL的特定请求;
响应于接收到所述特定请求,生成特定响应,所述特定响应包括后续被重定向的URL和会话标识符,并且被配置为使得所述客户端计算机通过HTTPS连接重定向到所述身份提供者计算机;
通过所述安全网络链路将所述后续被重定向的URL传送到所述客户端计算机;
将包括所述会话标识符的第二HTTPS请求从所述客户端计算机传送到所述身份提供者计算机;以及
由所述身份提供者计算机在接收到所述第二HTTPS请求和所述会话标识符之后使用所述会话标识符来验证所述客户端计算机。
10.如权利要求9所述的设备,其中,所述此前被重定向的URL包括所述身份提供者计算机的主机标识符,并且其中,接收所述特定请求包括拦截所述特定请求。
11.如权利要求9所述的设备,其中,所述此前被重定向的URL指定使用HTTP。
12.如权利要求9所述的设备,其中,所述后续被重定向的URL包括包含所述会话标识符的查询字符串。
13.如权利要求9所述的设备,其中,所述此前被重定向的URL包括会话cookie,并且所述第二HTTPS请求包括所述会话cookie。
14.如权利要求9所述的设备,其中,所述安全网络链路包括下列项中的一项:VPN链路、802.11RSN链路、或802.1AE链路。
15.如权利要求9所述的设备,其中,SAML元素被包括在下列项中的至少一项中:所述此前被重定向的URL和所述第二HTTPS请求。
16.如权利要求9所述的设备,其中,所述会话标识符至少部分地基于从下列项中选择的AAA协议的会话标识符:RADIUS或Diameter。
17.一种非暂态计算机可读介质,包括指令,所述指令当由一个或多个处理器执行时,使得:
通过安全网络链路,网络接入设备(NAD)将第一超文本传输协议安全(HTTPS)请求从客户端计算机传送到身份提供者计算机;
由所述NAD将响应于所述第一HTTPS请求的此前被重定向的统一资源定位符(URL)从所述身份提供者计算机传送到所述客户端计算机,其中,所述此前被重定向的URL被配置为使得所述客户端计算机重定向到所述此前被重定向的URL;
通过安全网络链路,所述NAD从所述客户端计算机接收指定所述此前被重定向的URL的特定请求;
响应于接收到所述特定请求,所述NAD生成特定响应,所述特定响应包括后续被重定向的URL和会话标识符,其中,所述后续被重定向的URL被配置为使得所述客户端计算机通过HTTPS连接重定向到所述身份提供者计算机;
由所述NAD将所述后续被重定向的URL通过所述安全网络链路传送到所述客户端计算机;
由所述NAD将包括所述会话标识符的第二HTTPS请求从所述客户端计算机传送到所述身份提供者计算机;以及
由所述身份提供者计算机在接收到所述第二HTTPS请求和所述会话标识符之后使用所述会话标识符来验证所述客户端计算机。
18.如权利请求17所述的非暂态计算机可读介质,其中,所述安全网络链路包括下列项中的一项:虚拟专用网(VPN)链路、802.11强健安全性网络(RSN)链路、或802.1高级加密(AE)链路。
19.如权利要求17所述的非暂态计算机可读介质,其中,安全性断言标记语言(SAML)元素被包括在下列项中的至少一项中:所述此前被重定向的URL和所述第二HTTPS请求。
20.如权利要求17所述的非暂态计算机可读介质,其中,所述会话标识符至少部分地基于从下列项中选择的认证/授权/计费(AAA)协议的会话标识符:用户服务中的远程认证拨号(RADIUS)或Diameter。
CN201680007597.XA 2015-03-31 2016-03-23 用于传送会话标识符的方法及设备 Active CN107534651B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/674,938 US9578007B2 (en) 2015-03-31 2015-03-31 Secure transmission of a session identifier during service authentication
US14/674,938 2015-03-31
PCT/US2016/023834 WO2016160457A1 (en) 2015-03-31 2016-03-23 Secure transmission of a session identifier during service authentication

Publications (2)

Publication Number Publication Date
CN107534651A CN107534651A (zh) 2018-01-02
CN107534651B true CN107534651B (zh) 2021-01-29

Family

ID=55650769

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680007597.XA Active CN107534651B (zh) 2015-03-31 2016-03-23 用于传送会话标识符的方法及设备

Country Status (4)

Country Link
US (1) US9578007B2 (zh)
EP (1) EP3286893B1 (zh)
CN (1) CN107534651B (zh)
WO (1) WO2016160457A1 (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10050934B2 (en) * 2015-07-31 2018-08-14 Citrix Systems, Inc. Redirector for secure web browsing
US9992187B2 (en) * 2015-12-21 2018-06-05 Cisco Technology, Inc. Single sign-on authentication via browser for client application
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US10356621B2 (en) 2016-05-23 2019-07-16 Citrix Systems, Inc. Browser plug-in for secure web access
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10846390B2 (en) 2016-09-14 2020-11-24 Oracle International Corporation Single sign-on functionality for a multi-tenant identity and data security management cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10445395B2 (en) * 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10904074B2 (en) 2016-09-17 2021-01-26 Oracle International Corporation Composite event handler for a multi-tenant identity cloud service
US10725759B2 (en) * 2016-10-03 2020-07-28 Avaya Inc. Web application system and method to dynamically select between local installed and cloud-based resources
US10831789B2 (en) 2017-09-27 2020-11-10 Oracle International Corporation Reference attribute query processing for a multi-tenant cloud service
US10601864B1 (en) * 2017-10-05 2020-03-24 Symantec Corporation Using disposable profiles for privacy in internet sessions
US10530746B2 (en) 2017-10-17 2020-01-07 Servicenow, Inc. Deployment of a custom address to a remotely managed computational instance
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10805320B1 (en) 2018-06-15 2020-10-13 Trend Micro Incorporated Methods and systems for inspecting encrypted network traffic
US11032241B2 (en) * 2019-01-08 2021-06-08 Walmart Apollo, Llc Systems and methods for application level fault injection for parallel tests
CN109905377B (zh) * 2019-02-01 2021-10-01 湖南快乐阳光互动娱乐传媒有限公司 一种防止非法访问服务器的方法及系统
CN109873819B (zh) * 2019-02-01 2022-03-22 湖南快乐阳光互动娱乐传媒有限公司 一种防止非法访问服务器的方法及系统
CN109905376B (zh) * 2019-02-01 2022-03-22 湖南快乐阳光互动娱乐传媒有限公司 一种防止非法访问服务器的方法及系统
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
CZ2019221A3 (cs) * 2019-04-08 2020-06-17 Aducid S.R.O. Způsob autentizace uživatele ke spoléhající straně v systému federace elektronické identity
CN111431844B (zh) * 2019-04-23 2023-04-18 杭州海康威视数字技术股份有限公司 一种权限认证方法及装置
US11233784B2 (en) * 2019-05-06 2022-01-25 Blackberry Limited Systems and methods for managing access to shared network resources
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11516204B1 (en) 2020-12-14 2022-11-29 Express Scripts Strategic Development, Inc. System and method for secure single sign on using security assertion markup language
CN117851267B (zh) * 2024-03-06 2024-06-11 湖南兴盛优选网络科技有限公司 一种软件多环境自动化测试方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297969A (zh) * 2012-03-02 2013-09-11 中兴通讯股份有限公司 一种ims单点登录组合鉴权方法和系统
CN104283848A (zh) * 2013-07-03 2015-01-14 杭州华三通信技术有限公司 终端接入方法和装置
CN104396220A (zh) * 2012-06-21 2015-03-04 思科技术公司 用于安全内容检索的方法和设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0021083D0 (en) * 2000-08-25 2000-10-11 Claripoint Ltd Web page access
US7370351B1 (en) 2001-03-22 2008-05-06 Novell, Inc. Cross domain authentication and security services using proxies for HTTP access
US7441046B2 (en) * 2003-03-03 2008-10-21 Siemens Medical Solutions Usa, Inc. System enabling server progressive workload reduction to support server maintenance
US8844040B2 (en) * 2009-03-20 2014-09-23 Citrix Systems, Inc. Systems and methods for using end point auditing in connection with traffic management
US8949938B2 (en) 2011-10-27 2015-02-03 Cisco Technology, Inc. Mechanisms to use network session identifiers for software-as-a-service authentication

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297969A (zh) * 2012-03-02 2013-09-11 中兴通讯股份有限公司 一种ims单点登录组合鉴权方法和系统
CN104396220A (zh) * 2012-06-21 2015-03-04 思科技术公司 用于安全内容检索的方法和设备
CN104283848A (zh) * 2013-07-03 2015-01-14 杭州华三通信技术有限公司 终端接入方法和装置

Also Published As

Publication number Publication date
EP3286893A1 (en) 2018-02-28
US20160294797A1 (en) 2016-10-06
US9578007B2 (en) 2017-02-21
CN107534651A (zh) 2018-01-02
WO2016160457A1 (en) 2016-10-06
EP3286893B1 (en) 2020-01-01

Similar Documents

Publication Publication Date Title
CN107534651B (zh) 用于传送会话标识符的方法及设备
US10116663B2 (en) Identity proxy to provide access control and single sign on
EP3395037B1 (en) Single sign-on authentication via browser for client application
US10523678B2 (en) System and method for architecture initiated network access control
US10237732B2 (en) Mobile device authentication in heterogeneous communication networks scenario
EP3120591B1 (en) User identifier based device, identity and activity management system
US20080222714A1 (en) System and method for authentication upon network attachment
EP3711274B1 (en) Message queuing telemetry transport (mqtt) data transmission method, apparatus, and system
US20090064291A1 (en) System and method for relaying authentication at network attachment
EP3289753B1 (en) Multi-factor authorization for ieee 802.1x-enabled networks
US20240056483A1 (en) Server-initiated secure sessions
US11956217B2 (en) Apparatus and method for secure communication over restricted network
JP5982706B2 (ja) セキュアトンネリング・プラットフォームシステムならびに方法
US20240214354A1 (en) Connection management over restricted network
KR20130087185A (ko) 웹 광고 서비스를 위한 무선 인터넷 접속 인증 방법
WO2013052037A1 (en) System and method for wireless network access

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