CN101341492B - 提供和接收身份相关的信息的方法和系统 - Google Patents
提供和接收身份相关的信息的方法和系统 Download PDFInfo
- Publication number
- CN101341492B CN101341492B CN2006800482991A CN200680048299A CN101341492B CN 101341492 B CN101341492 B CN 101341492B CN 2006800482991 A CN2006800482991 A CN 2006800482991A CN 200680048299 A CN200680048299 A CN 200680048299A CN 101341492 B CN101341492 B CN 101341492B
- Authority
- CN
- China
- Prior art keywords
- reference section
- authenticity
- authenticity reference
- identity
- art1
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/41—User authentication where a single sign-on provides access to a plurality of computers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
- Storage Device Security (AREA)
- Communication Control (AREA)
- Plural Heterocyclic Compounds (AREA)
Abstract
本发明涉及一种用于通过身份提供者(40)为请求实体(50)提供身份相关的信息(IRI)的方法。本发明包括:第一真实性参考部分生成步骤(IVa),包括由所述身份提供者(40)生成第一真实性参考部分(art1);在所述客户端应用(30)与所述身份提供者(40)之间的第一真实性参考通信步骤(IVb、IVd),包括传送所述第一真实性参考部分(art1);第二真实性参考部分生成步骤(VI),包括由所述身份提供者(40)生成第二真实性参考部分(art2);借助所述第一通信协议在所述身份提供者(40)与所述请求实体(50)之间进行的第二真实性参考通信步骤(VIII、IX),包括传送所述第二真实性参考部分(art2)以及传送引用者元素中的所述第一真实性参考部分(art1)。
Description
技术领域
本发明涉及一种用于通过身份提供者为请求实体提供关于用户的身份相关的信息的方法和系统。
背景技术
在广义上,身份管理意味着管理有关某个人的所有个人信息,至少包括此人的所有数字关系。在未来十年内,身份管理系统在此广义上将很可能得到发展。短期内,身份管理通常用于通过传输有关某个人的少量数据而进行网络单点登录。
主要的商业案例是电子商务的全面推进:身份管理是基础设施问题,其中几乎所有各方都可以受益于如互联网和网络标准之类的标准。
单点登录使得个人或用户能够在仅记住一个密码的情况下登录到不同的组织或服务。此外,单点登录协议允许客户端应用向它们未与之事先交换任何常用数据(如密钥)的其他应用标识自身。通常,对于所有组织或服务,许多用户都选择相同的用户名和密码。这存在两个问题:每个服务可以模仿用户使用其他服务。这对于一个企业的各个服务是可以接受的,但即使如此,人们还是更倾向于较好的模块化。而且显然这对于用户的全面网络体验而言是不可接受的。
单点登录被普遍视为一种必要的基础设施,可使互联网上的电子商务更容易进行,并允许广泛使用新兴的网络服务。它还可以演变为更普遍的身份管理,例如用于在建立身份之后交换有关某个人的其他信息。
近来,单点登录解决方案例如被微软公司的Passport系统(URL:http://www.passport.com)、安全断言标记语言(SAML)的OASIS(结构化信息标准促进组织)标准化(URL: http://www.oasis-open.org/committees/security/docs),以及自由联盟计划的最新规范(URL:http://www.projectliberty.org)所熟知。联盟规范中的一个方面是不仅为作为客户端应用的浏览器提供详细的协议,而且还为其他功能更强大的客户端应用提供更高效的协议。此设置中的较早相关方案是传统的三方验证协议。
传统的三方客户端验证协议(如Kerberos、Needham-Schroeder)全部始于密钥交换或密钥建立协议,然后需要客户端应用使用此密钥进行加密和验证。换言之,可以通过某些事先交换的信息(例如密码、密钥或已确认的公钥)标识客户端应用的第三方通常生成用于在客户端应用及其合作实体(在此称为“请求实体”)之间通信的新密钥,并且针对这两个实体安全地建立此密钥。存在各种协议以执行此密钥的安全传输。
诸如安全断言标记语言(SAML)之类的联合身份管理建议能够通过密码帮助台、用户管理和用户删除方面的节省而降低用户管理成本。SAML具有仅依赖于标准Web浏览器的基于浏览器的简档,以便例如通过单点登录实现身份联合。这些协议为联合身份管理解决方案的一般优点补充了零足迹的特性,即不需要安装额外的客户端软件。因此,基于浏览器的简档可进行低成本高效率的部署。但是,将标准Web浏览器作为客户端时设计安全协议并不简单。浏览器(并不知道其所参与的协议)具有预定义的行为、对预定义的消息做出反应并生成流向底层操作系统和通信伙伴的信息。尤其是,通过浏览器的统一资源定位(URL)传输机密信息的协议的安全性由于标准Web浏览器的这种不了解协议的行为而处于险境。SAML的浏览器/助诊文件(artifact)简档属于此类协议,因为它们发出随机助诊文件作为对安全令牌的参考并通过浏览器重定向URL传输此令牌。
同时,SAML已发展到版本2.0。标准中的结构和命名也略有变化,因此对应的协议(在安全协议研究的术语方面)现在为SAML V2.0WebBrowser SSO/Response/Artifact Feature。
本发明的一个目标是提供用于身份管理的改进解决方案。
发明内容
根据本发明的一个方面,提供了一种用于通过身份提供者为请求实体提供身份相关的信息的方法,其中提供了客户端应用以便用户与所述请求实体和所述身份提供者通信,其中所述客户端应用使用第一通信协议,其中所述第一通信协议包括引用者(referrer)函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述方法包括:
向所述身份提供者验证所述用户,
第一真实性参考部分生成步骤,包括由所述身份提供者生成第一真实性参考部分,
在所述客户端应用与所述身份提供者之间的第一真实性参考通信步骤,包括传送所述第一真实性参考部分,
第二真实性参考部分生成步骤,包括由所述身份提供者生成第二真实性参考部分,
借助所述第一通信协议在所述身份提供者与所述请求实体之间进行的第二真实性参考通信步骤,包括传送所述第二真实性参考部分以及传送所述引用者元素中的所述第一真实性参考部分,
请求步骤,其中所述请求实体向所述身份提供者发送所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
响应步骤,其中所述身份提供者向所述请求实体发送所述身份相关的信息。
此方法具有显著增强了安全性的优点。此外,它可以容易和高效地实现。通过发送至少两个真实性参考部分(第一真实性参考部分和第二真实性参考部分),确保了如果对手仅获得两个真实性参考部分之一,则无法代表用户对请求实体执行操作。
应以广泛的方式理解术语用户。用户是其身份受管理的任何实体或个人。术语用户还应包括用户的客户端,例如特定软件应用。
根据本发明的各种实施例,执行请求步骤存在不同的可能性。
一种可能性是在请求步骤中向身份提供者发送第一和第二真实性参考部分。在这种情况下,生成第一和第二真实性参考部分之后,身份提供者将它们作为一对存储在数据库中,并且如果身份提供者在请求步骤中收到一对真实性参考部分,其将在数据库中查找是否存储了相应的对。如果已存储,他将向请求实体发送相应的身份相关的信息。否则,可以发送错误消息。
另一种可能性是使用第一和第二真实性参考部分的安全函数。安全函数应被理解为确保对手不可能或至少几乎不可能重新构造函数结果的函数,所述结果从第一和第二真实性参考部分、仅从一个真实性参考部分计算得出。在这种情况下,生成第一和第二真实性参考部分之后,身份提供者将分别计算和确定主要真实性参考。此主要真实性参考由安全函数通过第一和第二真实性参考部分计算得出。然后身份提供者存储主要真实性参考。如果请求实体在第二真实性参考通信步骤中收到第一和第二真实性参考部分,它将通过同一安全函数或相应的安全函数分别计算和确定主要真实性参考。这意味着在这种情况下,身份提供者以及请求实体知道相同的安全函数,或者身份提供者知道一个安全函数而请求实体知道相应的安全函数。在请求实体侧使用相应的安全函数允许公钥加密。在请求步骤中,请求实体向身份提供者发送主要真实性参考。身份提供者在其数据库中查找是否具有已存储的相应主要真实性参考。如果存在,他将向请求实体发送相应的身份相关的信息。
本发明可以应用于各种形式的通信协议。具体地说,它可应用于包括引用者函数的通信协议,根据该函数,通信消息包括多个具有与两个或更多个先前通信步骤有关的信息的引用者元素。如果引用者元素包括与两个先前通信步骤有关的信息,则生成三个真实性参考部分可以确保安全验证。通常,如果引用者元素包括与n个先前通信步骤有关的信息,其中n是自然数,则生成n+1个真实性参考部分可以确保安全验证。
在术语方面,身份相关的信息(IRI)被理解为与某个人或用户相关的任何信息。身份相关的信息IRI包括姓名、地址、组成员资格、授权证书、人口数据、个人偏好、日历项、医疗和财务信息,以及有关个人或用户名下可数字地存储的任何其他内容。请求实体可能需要此信息以用于访问控制、授权、个人化、验证、登录、商业、医疗或政府问题,或任何其他作用于身份相关的信息IRI的应用。此术语的另一种表达可以是证书,即有关用户或个人的任何认证信息。
真实性参考部分是统一选择的随机、伪随机或其他难以猜测的元素。真实性参考和真实性参考部分通常分别被称为助诊文件。
为了向身份提供者验证用户,可以使用各种方法,例如用户名及密码、个人标识号或事务号(TAN)或双因素验证方法(例如智能卡、硬件令牌或电子邮件消息)。
客户端应用可以是为了与请求实体和身份提供者通信而提供的任何软件或硬件工具或设备。
所述方法还可以包括用于通过所述第一通信协议将结果从所述请求实体传送到所述客户端应用的结果步骤。
结果页向用户呈现他从请求实体请求的信息。结果页的传送通常通过安全通道执行,因为结果页可能包括用户的机密或私人信息。
收到结果页之后,用户通常可能通过不安全的通道继续使用客户端应用,例如通过使用诸如超文本传输协议(HTTP)之类的不安全的浏览器协议。因此,对手可能非常容易地观察到用户的此进一步活动。由于第一通信协议的引用者函数,客户端应用发送到请求实体或其他实体的下一个通信消息可能仍在引用者元素中包括第二真实性参考部分。因此,对手可能获取此第二真实性参考部分,但是没有获取此通信消息中不再存在的第一真实性参考部分(假设引用者函数仅存储有关一个先前通信步骤的信息)。从而,如果对手仅获取此第二真实性参考部分,他将无法滥用该第二部分,因为如果没有第一真实性参考部分,该部分就毫无价值。
根据本发明的一个实施例,所述第一通信协议是浏览器协议,具体地 说,是超文本传输协议(HTTP)。这允许简单且广泛地应用本发明的实施例。用户无需额外软件便可执行本发明的实施例。尽管如此,仍确保了所述方法的安全性。
浏览器协议通常包括引用者函数。根据HTTP协议的消息在第一部分中包括统一资源定位(URL)。URL包括查询字段,此字段可以在一个步骤中用于传送第一真实性参考部分,而在另一个步骤中用于传送第二真实性参考部分。此外,HTTP协议的消息包括具有一个或多个标头的第二层。标头包括引用者元素(即最后一个通信步骤的URL),并且因此在最后一个URL的查询字段中包括最后一个真实性参考部分。
根据本发明的其他实施例,通过安全通道,具体地说,通过具有服务器验证的安全通道来执行所述第一真实性参考通信步骤和/或所述第二真实性参考通信步骤和/或所述结果步骤。可以优选地通过安全套接字层(SSL)、传输层安全性(TLS)协议,或诸如Web服务(WS)安全性之类的简单对象访问协议(SOAP)扩展来实现所述安全通道。
这确保了对手在所述第一和/或第二真实性参考通信步骤期间无法获取所述第一和第二真实性参考部分和/或无法获取所述结果页的信息。
根据本发明的其他实施例,所述第二真实性参考通信步骤是通过所述客户端应用将所述身份提供者重定向到所述请求实体的重定向步骤。此类由重定向命令启动的重定向步骤是浏览器协议的常见元素。这确保了本发明可以容易地在各种通信系统中实现。
优选地,所述重定向步骤包括第一和第二重定向子步骤,其中所述身份提供者在所述第一重定向子步骤中向所述客户端应用发送具有重定向地址的重定向命令,其中所述重定向地址包括所述第二真实性参考部分,并且其中所述客户端应用在所述第二重定向子步骤中向所述请求实体发送get请求,所述get请求包括具有所述第二真实性参考部分的所述重定向地址以及所述引用者元素中的所述第一真实性参考部分。
这意味着第一真实性参考部分仅在客户端应用与请求实体之间的第二重定向子步骤中传输,但不在第一重定向子步骤中传输。这增强了安全性, 因为两个真实性参考部分仅在一个而不是两个子步骤中传输,并且因此对手仅可在第二子步骤中获取两个真实性参考部分。
根据本发明的其他实施例,所述请求步骤和所述响应步骤使用第二通信协议,具体地说,使用安全断言标记语言(SAML)。但是,也可以使用其他利用真实性参考(也称为助诊文件)进行联合身份管理的标准作为第二通信协议。自由联盟计划或Web服务联合的相关标准是其他优选实例。
根据本发明的其他实施例,所述请求步骤和响应步骤通过具有相互验证的安全通道执行。可以优选地通过安全套接字层(SSL)或具有客户端和服务器证书的传输层安全性(TLS)协议,或通过诸如WS安全性之类的简单对象访问协议(SOAP)扩展来实现所述安全通道。
这进一步提高了安全性,并且确保了第一和第二真实性参考部分或第一和第二真实性参考部分的安全函数不会流向对手。
根据本发明的其他实施例,所述安全函数是异或(XOR)函数、伪随机函数、散列函数、加密函数或秘密共享函数。
所有这些函数必须确保对手不可能或至少几乎不可能重新构造这些函数的结果,所述结果从第一和第二真实性参考部分、仅从真实性参考部分之一计算得出。
根据本发明的其他实施例,所述第一真实性参考通信步骤包括:其中所述身份提供者向所述客户端应用发送所述第一真实性参考部分的子步骤,以及其中所述客户端应用向所述身份提供者发送验证和所述第一真实性参考部分的后续子步骤。
在此实施例中,在用户向身份提供者验证自身之前生成第一真实性参考部分。身份提供者在第一子步骤中向客户端应用发送第一真实性参考部分。在此第一真实性参考通信步骤中传输的消息可以还包括要求用户输入密码或其他授权方式的验证表单或验证命令。然后在另一个子步骤中,客户端应用例如通过submit或get请求发回密码或其他授权方式。submit或get请求包括身份提供者的URL作为地址。此外,此另一个子步骤的通 信消息例如在get或submit请求的URL的查询字段中包括第一真实性参考部分。结果,第一通信协议的当前URL包括第一真实性参考部分。这意味着在第二真实性参考通信步骤中,第一真实性参考部分将在引用者元素中传输,而第二真实性参考部分可以在第一层内的URL的查询字段中传输。
应指出的是,本发明的不同方面的各步骤可以按不同的顺序执行。此外,所述步骤还可以被组合,也就是例如两个步骤在一起执行(例如在一个通信消息中)。作为一个实例,向身份提供者验证用户可以与第一真实性参考部分生成步骤和/或第一真实性参考通信步骤结合进行。作为另一个实例,第一和第二真实性参考部分生成步骤可以在一个步骤中同时执行。
本发明的另一个方面涉及一种用于从拥有身份相关的信息(IRI)的身份提供者接收所述身份相关的信息的方法,其中提供了第一通信协议以便与客户端应用的用户和所述身份提供者通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述方法包括:
通过所述第一通信协议从所述身份提供者接收第二真实性参考部分以及所述引用者元素中的第一真实性参考部分,
向所述身份提供者发送所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
从所述身份提供者接收所述身份相关的信息(IRI)。
根据本发明的另一个方面,提供了一种用于为请求实体提供身份相关的信息的方法,其中提供了第一通信协议以便与客户端应用的用户和请求所述身份相关的信息的请求实体通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述方法包括:
生成第一真实性参考部分,
将所述第一真实性参考部分传送到所述客户端应用,
生成第二真实性参考部分,
通过所述第一通信协议将所述第二真实性参考部分以及所述引用者元素中的所述第一真实性参考部分传送到所述请求实体,
从所述请求实体接收所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
向所述请求实体发送具有所述身份相关的信息的响应。
本发明的另一个方面涉及一种用于从拥有身份相关的信息(IRI)的身份提供者接收所述身份相关的信息的请求实体,其中所述请求实体适于通过第一通信协议与客户端应用的用户通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,其中所述请求实体适于执行以下步骤:
通过所述第一通信协议从所述身份提供者接收第二真实性参考部分以及所述引用者元素中的第一真实性参考部分,
向所述身份提供者发送所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
从所述身份提供者接收所述身份相关的信息。
本发明的另一个方面涉及一种用于为请求实体提供身份相关的信息(IRI)的身份提供者,其中所述身份提供者适于通过第一通信协议与客户端应用的用户通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,其中所述身份提供者适于执行以下步骤:
生成第一真实性参考部分,
将所述第一真实性参考部分传送到所述客户端应用,
生成第二真实性参考部分,
通过所述第一通信协议将所述第二真实性参考部分以及所述引用者元素中的所述第一真实性参考部分传送到所述请求实体,
从所述请求实体接收所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
向所述请求实体发送具有所述身份相关的信息的响应。
本发明的另一个方面涉及一种用于通过身份提供者为请求实体提供身份相关的信息的系统,其中提供了客户端应用以便用户与所述请求实体和所述身份提供者通信,其中所述客户端应用使用第一通信协议,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述系统适于执行以下步骤:
向所述身份提供者验证所述用户,
第一真实性参考部分生成步骤,包括由所述身份提供者生成第一真实性参考部分,
在所述客户端应用与所述身份提供者之间的第一真实性参考通信步骤,包括传送所述第一真实性参考部分,
第二真实性参考部分生成步骤,包括由所述身份提供者生成第二真实性参考部分,
借助所述第一通信协议在所述身份提供者与所述请求实体之间进行的第二真实性参考通信步骤,包括传送所述第二真实性参考部分以及传送所述引用者元素中的所述第一真实性参考部分,
请求步骤,其中所述请求实体向所述身份提供者发送所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
响应步骤,其中所述身份提供者向所述请求实体发送所述身份相关的信息(IRI)。
本发明的另一个方面涉及一种用于通过身份提供者为请求实体提供身份相关的信息的方法,其中提供了客户端应用以便用户与所述请求实体和所述身份提供者通信,其中所述客户端应用使用第一通信协议,所述方法包括:
检查所述第一通信协议是否包括具有与至少一个先前通信步骤有关的 信息的引用者元素,
如果所述第一通信协议包括引用者函数,则执行以下步骤:
向所述身份提供者验证所述用户,
第一真实性参考部分生成步骤,包括由所述身份提供者生成第一真实性参考部分,
在所述客户端应用与所述身份提供者之间的第一真实性参考通信步骤,包括传送所述第一真实性参考部分,
第二真实性参考部分生成步骤,包括由所述身份提供者生成第二真实性参考部分,
借助所述第一通信协议在所述身份提供者与所述请求实体之间进行的第二真实性参考通信步骤,包括传送所述第二真实性参考部分以及传送所述引用者元素中的所述第一真实性参考部分,
请求步骤,其中所述请求实体向所述身份提供者发送所述第一和所述第二真实性参考部分或所述第一和所述第二真实性参考部分的安全函数,
响应步骤,其中所述身份提供者向所述请求实体发送所述身份相关的信息(IRI)。
根据本发明的此方面,提供了优选地由身份提供者执行的额外检查步骤。在此检查步骤中,将检查由客户端应用发送到身份提供者和/或请求实体的通信消息是否包括引用者元素。如果它们不包括引用者元素,则从身份提供者向请求实体仅传送一个真实性参考部分便已足够。检查步骤可以在向身份提供者验证用户之前或之后执行。通信消息不包括引用者元素的原因可能是第一通信协议根本不包括引用者函数或引用者函数已分别被关闭和停用。
本发明的此方面对于其中使用具有引用者函数的通信协议以及没有引用者函数的通信协议或客户端可以选择是否设置引用者的应用尤其有用。
本发明的各种实施例允许进行能够以全面互操作性适应参与者各种要求(具体地说,传输验证和其他身份相关的信息)的可靠、安全及有效的身份管理。本发明可应用于用户只有一个浏览器软件的系统以及用户具有 功能更强大的软件的系统。具体地说,它允许简单浏览器协议(例如HTTP)和更复杂的联合身份管理协议(例如SAML)的组合。简单浏览器协议可用于客户端应用与身份提供者和请求实体的通信,而联合身份管理协议可用于身份提供者和请求实体之间的通信。
换言之,本发明使得基于Web的服务的最终用户(例如电子商务的最终用户)能够执行单点登录(SSO)操作、分布式事务或其他授权服务。提供的本发明的各实施例和方面可以支持零足迹版本,即不需要其他软件,甚至不需要活动内容,例如Javascript、Java或ActiveX(Javascript和Java是Sun Microsystems,Inc.的商标。ActiveX是微软公司的商标)。
附图说明
以下通过实例的方式参考附图说明本发明的优选实施例,这些附图是:
图1示出了根据本发明的系统的示意图;
图2示出了根据本发明的第一实施例的消息流的示意图;
图3示出了根据本发明的第二实施例的消息流的示意图;
图4a到4f示出了通信消息的示例性实施例的示意图;
图5示出了本发明的第三实施例的消息流的示意图;以及
图6示出了根据本发明的第四实施例的消息流的示意图。
提供这些图形只是为了进行说明,并不一定表示与本发明的实际实例成比例。
词汇表
下面是有助于理解本说明的非正式定义。
用户或个人:其身份被管理的实体。如果个人操作,其将变为用户。通常个人或用户是个体,但是至少小型企业通常将与其他企业像个体一样进行交互,例如在旅游预订和信息收集方面。
请求实体:希望知道某个人的姓名或特征的实体,例如由服务器所代表的组织。最初组织将主要是互联网商店,因为任何可轻松部署的注册系 统具有较低的可信性。从长远看,组织包括某个人的所有通信伙伴,例如银行、医生、同事和家庭。如果某个人希望在身份管理(例如即时消息传送和日历)中包括联系或位置信息,则作为“组织”的同事和家庭尤其相关。
身份提供者:存储某个人的身份相关的信息的实体。其可以是银行、证书颁发机构(CA)、互联网服务提供商等。
术语计算机包括诸如PC等的设备,而且还包括具有浏览工具的数字助理和移动电话。
具体实施方式
参考图1,描述了其中可以使用本发明的通信环境的总体布局。在图中,相同的标号用于表示相同或相似的部件。图1示出了作为用户20的个人P。用户20在他的计算机上执行客户端应用30,例如Web浏览器。为进行应用相关的交互,将客户端应用30连接到请求实体50,例如提供服务的公司或银行的服务器。客户端应用30和请求实体50通过本领域公知的通信线路5连接。通信线路5通常通过网络(例如互联网)提供。客户端应用30还被连接到身份提供者40,由此身份提供者40可以是本地的(即在用户20的计算机处)或远程的(即在外部服务器处等)。身份提供者40可以例如是提供身份管理服务的银行或其他专业组织。身份提供者40也可连接到请求实体50以传输身份相关的信息IRI。在术语方面,身份相关的信息IRI被理解为与某个人或用户相关的任何信息。身份相关的信息IRI包括姓名、地址、组成员资格、授权证书、人口数据、个人偏好、日历项、医疗和财务信息,以及有关个人或用户名下可数字地存储的任何其他内容。请求实体可能需要此信息以进行访问控制、授权、个人化、验证、登录、商业、医疗或政府问题,或任何其他作用于身份相关的信息IRI的应用。示出图1的情况以便于说明以下用于为请求实体50提供身份相关的信息IRI的流程。
客户端应用30优选地通过第一通信协议与身份提供者40和请求实体 50通信。此第一通信协议优选地是基于浏览器的协议,例如超文本传输协议(HTTP)。第一通信协议包括引用者函数,根据该函数,通信步骤包括具有与至少一个先前通信步骤有关的信息的引用者元素。如果第一通信协议是例如基于浏览器的协议(如HTTP),则客户端应用30发送到通信伙伴的通信消息在引用者元素中包括先前已访问的客户端应用的统一资源定位(URL)。根据HTTP,引用者元素布置在通信消息的标头中。
要指出的是,原始RFC 2068协议(http://www.ietf.org/rfc/rfc2068.txt)和HTTP1.1RFC2616错误地包括了不正确的拼写“referer”,并将此拼写作为http标准的拼写。尽管如此,在本申请中,除了对HTTP命令语言的直接引用之外,将使用正确的英文拼写referrer。
身份提供者40和请求实体50可以通过第二通信协议,例如通过安全断言标记语言(SAML)或其他联合身份管理协议(如自由联盟计划和WS联合)直接通信以交换IRI。
图2示出了第一实施例的消息流的示意图。其中,使用为其指定了相应罗马数字的标记箭头示出客户端应用30、身份提供者40和请求实体50之间的消息流。由圆圈中的罗马数字表示其他步骤或子步骤。所述流被理解为从顶部到底部按顺序执行,如由渐增的罗马数字表示的那样。但是应指出的是,此协议可以有多个实例并行运行而没有指定的排序。
在步骤I中,在客户端应用30和请求实体50之间执行应用相关的交互。在此步骤I中,用户可能访问请求实体的没有访问限制的公共网站。如果用户希望访问具有受限访问权限的网站或执行需要验证的操作(例如,执行购买交易或货币转帐),则请求实体50启动身份提供者请求步骤II。在子步骤IIa中,请求实体50从客户端应用30请求与拥有身份相关的信息IRI的身份提供者40对应的身份提供者信息(IPI)。在子步骤IIc中将身份提供者信息(IPI)发送给请求实体50。可选地,子步骤IIb允许客户端应用30以不同方式(例如通过询问用户20)获得身份提供者信息IPI。可选地,请求实体50按照默认值使用特定的身份提供者40。在这种情况下,可以省略身份提供者请求步骤II。其后是具有重定向指令(子步骤IIIa) 的重定向步骤III,其中客户端应用30仍连接到身份提供者40的站点间传输(IST)URL(子步骤IIIb)。
在第一真实性参考部分生成步骤IVa中,身份提供者40为用户生成第一真实性参考部分art1。真实性参考通常被称为助诊文件。此第一真实性参考部分art1是统一选择的随机、伪随机或其他难以猜测的元素。在步骤IVb中,身份提供者40向客户端应用30发送消息,此消息包括要求用户例如通过用户名和密码或个人标识号(PIN)验证自身的验证表单。此外,此消息包括身份提供者40的单点登录(SSO)-URL地址,客户端应用30应在此地址提交已完成的授权表单。此SSO-URL地址在查询字段中包括第一真实性参考部分art1。在步骤IVc中,用户例如通过键盘输入向客户端应用30提交其用户名和密码。在步骤IVd中,客户端应用30在指定的SSO-URL地址(其在查询字段中包括第一真实性参考部分art1)处将已完成的授权表单发回身份提供者40。步骤IVb和步骤IVd建立了第一真实性参考通信步骤。此第一真实性参考通信步骤将第一真实性参考部分art1传送到第一通信协议的当前URL。换言之,在第一真实性参考通信步骤中,客户端应用30(浏览器)与身份提供者40联系,而身份提供者40将第一真实性参考部分art1传送到客户端应用30。在本发明的此示例性实施例中,第一真实性参考通信步骤与用户的验证相结合。这提高了所述方法的效率并节省了其他步骤。但是,验证和第一真实性参考通信步骤也可以分别执行。
在步骤V中,身份提供者40检查提供的验证信息(例如密码或PIN)是否正确。如果正确,则用户已成功向身份提供者40验证了自身。在第二真实性参考生成步骤VI中,身份提供者40为已成功授权的用户生成第二真实性参考部分art2(也称为助诊文件2)。第二真实性参考部分art2是统一选择的随机、伪随机或其他难以猜测的元素,并且与第一真实性参考部分art1无关。
在步骤VII中,服务提供者40存储第一和第二真实性参考部分art1和art2以及第一和第二真实性参考部分art1和art2之间的关系(即它们一起 属于一对)。
在第一重定向子步骤VIII中,身份提供者40向客户端应用30发送重定向命令。重定向命令包括请求实体50的断言使用者服务(ACS)-URL作为重定向地址,并且此ACS-URL在查询字段中包括第二真实性参考部分art2。ACS-URL是例如根据SAML标准为联合身份管理提供的请求实体50的地址。在第二重定向子步骤IX中,客户端应用30向请求实体50发送get请求,此请求包括请求实体的已请求ACS-URL,并且此已请求的ACS-URL包括第二真实性参考部分art2。此外,在步骤IX中发送的通信消息在引用者元素中包括浏览器的最后一个URL(SSO)。从而,由于最后一个URL在查询字段中包括第一真实性参考部分art1,因此在步骤IX中将传输第一和第二真实性参考部分art1和art2。第一重定向子步骤VIII和第二重定向子步骤IX通常建立了第二真实性参考通信步骤,并且在此特定实例中为重定向步骤。
在请求步骤X中,请求实体向身份提供者40的断言响应服务地址ARS发送第一和第二真实性参考部分art1和art2。断言响应服务可以例如是根据SAML标准的断言响应服务。
在步骤XI中,身份提供者40检查第一和第二真实性参考部分art1和art2是否有效,即它们是否与身份提供者40先前发出并且尚未无效或失效的一对真实性参考部分相对应。
在步骤XII中,身份提供者40从其数据库移除或删除先前已从请求实体发送的第一和第二真实性参考部分art1和art2。这确保了这些真实性参考部分不可能再用于任何验证用途。
如果在步骤X中传输的第一和第二真实性参考部分art1和art2有效,则身份提供者40在响应步骤XIII中向请求实体50发送具有身份相关的信息IRI的响应。否则,身份提供者40在响应步骤XIII中向请求实体50发送表明所接收的第一和第二真实性参考部分art1和art2无效的错误消息。
在步骤XIV中,请求实体50向客户端应用30发送具有结果页的结果, 此结果页包括在步骤I中发出的用户20的请求的结果。这可能是所请求的结果页或错误页。由于结果页通常包括机密信息,因此步骤XIV优选地通过安全通道执行。
收到结果页之后,用户通常可能继续进一步的步骤XV。在此进一步的步骤XV中,用户向请求实体50或其他服务器发送进一步的请求。对于此进一步的请求,用户通常可能使用不安全的浏览器协议,即没有通过安全通道执行的浏览器协议。作为一个实例,进一步的请求可能通过超文本传输协议(HTTP)被发送到请求实体50。因此,对手可能非常容易地观察到此进一步的请求并可能获取进一步请求的信息。在此进一步请求中传输的信息包括用户要获取的新URL的地址,以及引用者元素中的先前URL的信息。先前URL(在此情况下为ACS-URL)包括第二真实性参考部分art2,并且因此对手可能非常容易地获取此第二真实性参考部分art2。但是,进一步的请求不再包括任何有关第一真实性参考部分art1的信息,因为此部分已从引用者元素中删除。因此,如果对手仅获取此第二真实性参考部分art2,他将无法滥用它,因为如果没有第一真实性参考部分art1,此部分毫无价值。
为了进一步提高安全性,第一真实性参考通信步骤IVb、IVd,第二真实性参考通信步骤VIII、IX以及请求步骤X和响应步骤XIII应通过安全通道执行。安全通道可以优选地通过安全套接字层(SSL)、传输层安全性(TLS)协议,或诸如Web服务(WS)安全性之类的简单对象访问协议(SOAP)扩展来实现。请求步骤X和响应步骤XIII可以优选地使用相互验证执行,而第一真实性参考通信步骤IVb、IVd和第二真实性参考通信步骤VIII、IX可以优选地使用服务器验证执行。
图3示出了本发明的第二实施例的消息流的示意图。步骤I到V与针对图2所述的相同,并且因此不再次说明。在此实施例中,第二真实性参考生成步骤VI被分为两个子步骤。在第一子步骤VIa中,生成第二真实性参考部分art2。第二真实性参考部分art2是随机、伪随机或其他难以猜测的元素。在第二子步骤VIb中,分别计算和确定主要真实性参考部分art。 主要真实性参考部分art是由来自第一真实性参考部分art1和第二真实性参考部分art2的安全函数分别计算和确定的助诊文件。
安全函数优选地是异或函数(XOR)。主要真实性参考部分art然后如下确定:
主要助诊文件art=art1 XOR art2。
在步骤VII中,身份提供者40将主要真实性参考art存储在其数据库中。如果真正随机选择第一真实性参考部分art1和第二真实性参考部分art2,则第一真实性参考部分art1和第二真实性参考部分art2是理论上与主要真实性参考部分art无关的信息。
步骤VIII和IX与针对图2所述的相同,并且因此不再次说明。
在此实施例中,请求步骤X包括两个子步骤Xa和Xb。请求实体50在子步骤Xa中通过安全函数(例如,通过异或函数)根据所接收的第一和第二真实性参考部分art1和art2计算主要真实性参考art。这意味着根据此实施例,请求实体50也必须知道安全函数。
在子步骤Xb中,请求实体50向身份提供者40发送主要真实性参考art。
在步骤XI中,身份提供者40检查所接收的主要真实性参考art是否有效,即它是否与身份提供者先前发出并且尚未删除或失效或由于其他原因而无效的已存储主要真实性参考相对应。
在步骤XII中,身份提供者40移除或删除先前从请求实体50发送的已存储主要真实性参考art。这确保了此主要真实性参考不可能再用于任何验证用途。
如果在步骤XI中传输的主要真实性参考有效,则身份提供者40在响应步骤XIII中向请求实体50发送具有身份相关的信息IRI的响应。否则,身份提供者40在响应步骤XIII中向请求实体发送表明所发送的主要真实性参考无效的错误消息。
步骤XIV和XV与针对图2所述的相同,并且因此不再次说明。
在根据图3的实施例中,身份提供者40和请求实体50必须知道安全 函数。另一方面,身份提供者40的数据库必须仅存储主要真实性参考art而不同时存储真实性参考部分art1和art2。此外,在请求步骤中必须仅传输主要真实性参考art。
应指出的是,其他解决方案也是可能的,例如身份提供者40仅存储主要助诊文件art,请求实体40不知道安全函数并在请求步骤中传输第一和第二真实性参考部分art1和art2,以及身份提供者40根据所接收的第一和第二真实性参考部分art1和art2计算主要真实性参考art,并检查它是否存储了匹配且有效的主要真实性参考art。
图4a到4f示出了可以在图2和/或图3的方法的某些步骤中传输的通信消息的示例性实施例。图4a到图4f中示出的实例消息基于超文本传输协议版本1.1(HTTP 1.1)。
图4a示出了可以在步骤IVd中由客户端应用30发送到身份提供者40的通信消息的示例性实施例。在此实施例中使用HTTP验证。客户端应用30向身份提供者40发送get请求,此请求包括单点登录页SSOpage作为地址并在查询字段中包括第一真实性参考部分art1。(主机的)身份提供者的服务器的名称为identity provider.org,并且客户端应用30的浏览器的名称为XYZ.1.0.8。此通信消息的引用者元素包括客户端应用30的先前目的地URL,在此实例中为站点间传输IST页。此引用者元素通常位于通信消息的标头中。在此标头的其他字段中,客户端应用向身份提供者40传输用户证书,例如用户名和密码。
图4b示出了可以在步骤IVd中由客户端应用30发送到身份提供者40的通信消息的另一个示例性实施例。在此实施例中使用基于HTML表单的验证。相应地,发送post命令而不是get命令,并且HTML表单包括用户证书。
图4c示出了可以在步骤VIII中由身份提供者40发送到客户端应用30的通信消息的示例性实施例。身份提供者40的重定向命令要求客户端应用30转到请求实体50处的服务器de.requestingentity.org的断言使用者服务页ACSpage。此消息的查询字段包括第二真实性参考部分art2。
图4d示出了可以在步骤IX中由客户端应用30发送到请求实体50的通信消息的示例性实施例。客户端应用30向请求实体50发送请求获取ACSpage的get请求。此消息在查询字段中包括第二真实性参考部分art2。(主机的)请求实体50的服务器的名称为de.requestingentity.org。此通信消息的引用者元素包括客户端应用30的先前目的地URL https://identityprovider.org/SSOpage?...art1。因此引用者元素的查询字段包括第一真实性参考部分art1。因此,此通信消息包括第一真实性参考部分art1以及第二真实性参考部分art2。
图4e示出了在步骤XIV中从请求实体50传输到客户端应用30的通信消息的示例性实施例。它包括HTML页作为结果。
图4f示出了可以在步骤XV中由客户端应用30发送到请求实体50的通信消息的示例性实施例。客户端应用30向其他名为otherhost.org的服务器发送包括名为otherpage的目的地页的get请求。此通信消息的引用者元素包括客户端应用30的先前目的地URL。在此实例中为URLhttps://de.requestingentity.org/ACSpage?...art2...。此URL的查询字段仍包括第二真实性参考部分art2,但通信消息不再包括第一真实性参考部分art1。因此,如果对手获取图4f中所示的此通信消息的访问权限,这对于他而言毫无价值。
图5示出了本发明的第三实施例的消息流的示意图。步骤I到IV与针对图2所述的相同,并且因此不再次说明。在步骤Va中,身份提供者40检查提供的验证信息(例如密码或PIN)是否正确。如果正确,则用户已成功向身份提供者40验证自身。在进一步的步骤Vb中,身份提供者40检查客户端应用是否分别包括和使用引用者函数。如果是,则所述方法可以继续执行如图2或图3中所述的步骤。如果身份提供者40了解到客户端应用30没有使用引用者函数,则执行以下步骤。在第二真实性参考生成步骤VI中,身份提供者40为已成功授权的用户生成第二真实性参考部分art2。作为一种备选方案,可以再次使用第一真实性参考部分art1。第二真实性参考部分art2也是随机、伪随机或其他难以猜测的元素。
在步骤VII中,服务提供者40存储第二真实性参考部分art2。
在第一重定向子步骤VIII中,身份提供者40向客户端应用30发送重定向命令。重定向命令包括请求实体50的断言使用者服务(ACS)-URL,并且此ACS-URL在查询字段中包括第二真实性参考部分art2。在第二重定向子步骤IX中,客户端应用30向请求实体50发送get请求,此请求包括请求实体的所请求的ACS-URL,并且此请求的ACS-URL包括第二真实性参考部分。在请求步骤X中,请求实体50向身份提供者40的断言响应服务地址ARS发送第二真实性参考部分art2。在步骤XI中,身份提供者40检查第二真实性参考部分art2是否有效。在步骤XII中,身份提供者40移除或删除第二真实性参考部分art2。
如果在步骤X中传输的第二真实性参考部分art2有效,则身份提供者40在响应步骤XIII中向请求实体50发送具有身份相关的信息IRI的响应。否则,身份提供者40在响应步骤XIII中向请求实体50发送表明所接收的第二真实性参考部分art2无效的错误消息。
步骤XIV和XV再次与针对图2和图3所述的相同。
此实施例尤其适于这样的应用:其中客户端应用30有时使用具有引用者函数的通信协议,有时使用没有引用者函数的通信协议,或其中客户端应用的引用者函数可能由用户关闭。
图6示出了本发明的第四实施例的消息流的示意图。步骤I到XV在很大程度上类似于针对图3所述的步骤,并且因此不再全部说明。根据此实施例,客户端应用30是移动设备(例如,蜂窝电话)的无线应用协议(WAP)浏览器。WAP旨在通过进行某些特定于移动的添加(专用于解决非常小型的便携设备的限制),提供与Web浏览器等效的服务。根据此实施例,作为WAP格式和HTTP格式之间的接口提供WAP网关服务器60。WAP网关服务器60将来自身份提供者40或请求实体50的HTTP格式的消息分别转换或变换为WAP格式的消息。另一方面,WAP网关服务器60将来自客户端应用30的WAP格式的消息转换为可以被转发到身份提供者40或请求实体50的HTTP格式的消息。
此转换在以下步骤中执行。在子步骤IIa中,请求实体50从客户端应用30请求身份提供者信息(IPI)。WAP网关服务器60将此HTTP请求转换为WAP请求。客户端应用30(即WAP浏览器)然后在子步骤IIc中将身份提供者信息IPI发送到WAP网关60,WAP网关60将WAP消息转换为HTTP格式并将其转发到请求实体50。按照相应的方式,在重定向步骤III、第一真实性参考通信步骤IVb、IVd,以及第二真实性参考通信步骤VIII、IX中执行此类从HTTP格式到WAP格式的转换,并且反之亦然。
除了上述实施例之外,本发明还可应用于各种其他领域。作为另一个实例,本发明可用于验证通过互联网进行的音频和/或视频传输。在此实例中,请求实体50可以是音频和/或视频数据的内容提供者,而客户端应用30是内容播放器。内容播放器向内容提供者发送获取内容流的请求,根据上述方法之一执行验证,并且作为响应,内容提供者向内容播放器发送内容流。
本发明可应用于各种标准,具体地说,可应用于OASIS安全断言标记语言、自由联盟计划和WS联合。
任何披露的实施例都可以与所示和/或所述的一个或多个其他实施例相结合。对于实施例的一个或多个特性也可以如此。
本发明可以在硬件、软件或硬件与软件的组合中实现。任何种类的计算机系统或其他适于执行此处所述的方法的装置都是适合的。典型的硬件和软件组合可以是具有计算机程序的通用计算机系统,所述计算机程序在被加载和执行时,可以控制所述计算机系统以使其执行此处所述的方法。本发明还可以嵌入计算机程序产品中,所述计算机程序产品包括使能实现此处所述的方法的所有功能,并且所述计算机程序产品在被加载到计算机系统中时,能够执行上述方法。
当前上下文中的计算机程序装置或计算机程序包括一组指令的以任何语言、代码或符号表示的任何表达,旨在使具有信息处理能力的系统直接执行特定的功能,或者执行以下两者之一或全部后执行特定的功能:a)转换为另一种语言、代码或符号;b)以不同的材料形式再现。
Claims (19)
1.一种用于通过身份提供者(40)为请求实体(50)提供身份相关的信息的方法,其中提供了客户端应用(30)以便用户与所述请求实体(50)和所述身份提供者(40)通信,其中所述客户端应用(30)使用第一通信协议,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述方法包括:
向所述身份提供者(40)验证所述用户,
第一真实性参考部分生成步骤(IVa),包括由所述身份提供者(40)生成第一真实性参考部分(art1),
在所述客户端应用(30)与所述身份提供者(40)之间的第一真实性参考通信步骤(IVb、IVd),包括传送所述第一真实性参考部分(art1),
第二真实性参考部分生成步骤(VI),包括由所述身份提供者(40)生成第二真实性参考部分(art2),
借助所述第一通信协议在所述身份提供者(40)与所述请求实体(50)之间进行的第二真实性参考通信步骤(VIII、IX),包括传送所述第二真实性参考部分(art2)以及传送所述引用者元素中的所述第一真实性参考部分(art1),
请求步骤(X),其中所述请求实体(50)向所述身份提供者(40)发送所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数,
响应步骤(XIII),其中所述身份提供者向所述请求实体(50)发送所述身份相关的信息。
2.如权利要求1中所述的方法,其中所述方法包括结果步骤(XIV),用于通过所述第一通信协议将用户请求的结果从所述请求实体(50)传送到所述客户端应用(30)。
3.如权利要求1或2中所述的方法,其中所述第一通信协议是浏览器协议。
4.如权利要求3所述的方法,其中所述浏览器协议是超文本传输协议。
5.如权利要求1或2中所述的方法,其中通过安全通道来执行所述第一真实性参考通信步骤(IVb、IVd)、所述第二真实性参考通信步骤(VIII、IX)和/或所述结果步骤(XIV)。
6.如权利要求5所述的方法,其中所述安全通道是具有服务器验证的安全通道。
7.如权利要求1或2中所述的方法,其中所述第二真实性参考通信步骤(VIII、IX)是通过所述客户端应用(30)将所述身份提供者(40)重定向到所述请求实体(50)的重定向步骤。
8.如权利要求7中所述的方法,其中所述重定向步骤包括第一重定向子步骤(VIII)和第二重定向子步骤(IX),其中所述身份提供者(40)在所述第一重定向子步骤(VIII)中向所述客户端应用(30)发送具有重定向地址的重定向命令,其中所述重定向地址包括所述第二真实性参考部分(art2),
其中所述客户端应用(30)在所述第二重定向子步骤(IX)中向所述请求实体(50)发送get请求,所述get请求包括具有所述第二真实性参考部分(art2)的所述重定向地址以及所述引用者元素中的所述第一真实性参考部分(art1)。
9.如权利要求1或2中所述的方法,其中所述请求步骤(X)和所述响应步骤(XIII)使用第二通信协议。
10.如权利要求9所述的方法,其中所述第二通信协议包括安全断言标记语言。
11.如权利要求1或2中所述的方法,其中通过具有相互验证的安全通道来执行所述请求步骤(X)和所述响应步骤(XIII)。
12.如权利要求1或2中所述的方法,其中所述安全函数是异或函数、伪随机函数、散列函数、加密函数或秘密共享函数。
13.如权利要求1或2中所述的方法,其中所述第一真实性参考通信步骤(IVb、IVd)包括:一个子步骤(IVb),其中所述身份提供者(40)向所述客户端应用(30)发送要求用户验证自身的验证表单以及所述第一真实性参考部分(art1);以及一个后续子步骤(IVd),其中所述客户端应用(30)向所述身份提供者(40)发送已完成的验证表单和所述第一真实性参考部分(art1)。
14.一种用于从拥有身份相关的信息的身份提供者(40)接收所述身份相关的信息的方法,其中提供了第一通信协议以便与客户端应用(30)的用户和所述身份提供者(40)通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述方法包括:
通过所述第一通信协议从所述身份提供者(40)接收第二真实性参考部分(art2)以及所述引用者元素中的第一真实性参考部分(art1),
向所述身份提供者(40)发送所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数,
从所述身份提供者(40)接收所述身份相关的信息。
15.一种用于为请求实体(50)提供身份相关的信息的方法,其中提供了第一通信协议以便与客户端应用(30)的用户和请求所述身份相关的信息的请求实体(50)通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述方法包括:
生成第一真实性参考部分(art1),
将所述第一真实性参考部分(art1)传送到所述客户端应用(30),
生成第二真实性参考部分(art2),
通过所述第一通信协议将所述第二真实性参考部分(art2)以及所述引用者元素中的所述第一真实性参考部分(art1)传送到所述请求实体(50),
从所述请求实体(50)接收所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数,
向所述请求实体(50)发送具有所述身份相关的信息的响应。
16.一种用于从拥有身份相关的信息的身份提供者(40)接收所述身份相关的信息的请求实体(50),其中所述请求实体(50)适于通过第一通信协议与客户端应用(30)的用户通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,其中所述请求实体(50)包括:
用于通过所述第一通信协议从所述身份提供者(40)接收第二真实性参考部分(art2)以及所述引用者元素中的第一真实性参考部分(art1)的装置,
用于向所述身份提供者(40)发送所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数的装置,
用于从所述身份提供者(40)接收所述身份相关的信息的装置。
17.一种用于为请求实体(50)提供身份相关的信息的身份提供者(40),其中所述身份提供者(40)适于通过第一通信协议与客户端应用(30)的用户通信,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,其中所述身份提供者(40)包括:
用于生成第一真实性参考部分(art1)的装置,
用于将所述第一真实性参考部分(art1)传送到所述客户端应用(30)的装置,
用于生成第二真实性参考部分(art2)的装置,
用于通过所述第一通信协议将所述第二真实性参考部分(art2)以及所述引用者元素中的所述第一真实性参考部分(art1)传送到所述请求实体(50)的装置,
用于从所述请求实体(50)接收所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数的装置,
用于向所述请求实体(50)发送具有所述身份相关的信息的响应的装置。
18.一种用于通过身份提供者(40)为请求实体(50)提供身份相关的信息的系统,其中提供了客户端应用(30)以便用户与所述请求实体(50)和所述身份提供者(40)通信,其中所述客户端应用(30)使用第一通信协议,其中所述第一通信协议包括引用者函数,根据该函数,通信消息可以包括具有与至少一个先前通信步骤有关的信息的引用者元素,所述系统包括:
用于向所述身份提供者(40)验证所述用户的装置,
所述身份提供者(40)中的第一真实性参考部分生成装置(IVa),用于生成第一真实性参考部分(art1),
第一真实性参考通信装置(IVb、IVd),用于在所述客户端应用(30)与所述身份提供者(40)之间传送所述第一真实性参考部分(art1),
所述身份提供者(40)中的第二真实性参考部分生成装置(VI),用于生成第二真实性参考部分(art2),
借助所述第一通信协议在所述身份提供者(40)与所述请求实体(50)之间进行的第二真实性参考通信装置(VIII、IX),用于传送所述第二真实性参考部分(art2)以及传送所述引用者元素中的所述第一真实性参考部分(art1),
所述请求实体(50)中的请求装置(X),用于向所述身份提供者(40)发送所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数,
所述身份提供者中的响应装置(XIII),用于向所述请求实体(50)发送所述身份相关的信息。
19.一种用于通过身份提供者(40)为请求实体(50)提供身份相关的信息的方法,其中提供了客户端应用(30)以便用户与所述请求实体(50)和所述身份提供者(40)通信,其中所述客户端应用(30)使用第一通信协议,所述方法包括:
向所述身份提供者(40)验证所述用户,
第一真实性参考部分生成步骤(IVa),包括由所述身份提供者(40)生成第一真实性参考部分(art1),
在所述客户端应用(30)与所述身份提供者(40)之间的第一真实性参考通信步骤(IVb、IVd),包括传送所述第一真实性参考部分(art1),
响应于所述用户的验证成功,检查所述客户端应用(30)是否包括和使用具有与至少一个先前通信步骤有关的信息的引用者函数;
第二真实性参考部分生成步骤(VI),包括由所述身份提供者(40)生成第二真实性参考部分(art2),
如果所述客户端应用(30)包括和使用引用者函数,则执行借助所述第一通信协议在所述身份提供者(40)与所述请求实体(50)之间进行的第二真实性参考通信步骤(VIII、IX),包括传送所述第二真实性参考部分(art2)以及传送所述引用者元素中的所述第一真实性参考部分(art1),以及请求步骤(X),其中所述请求实体(50)向所述身份提供者(40)发送所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)或所述第一真实性参考部分(art1)和所述第二真实性参考部分(art2)的安全函数,
如果所述客户端应用(30)没有使用引用者函数,则执行借助所述第一通信协议在所述身份提供者(40)与所述请求实体(50)之间进行的第二真实性参考通信步骤(VIII、IX),包括传送所述第二真实性参考部分(art2),以及请求步骤(X),其中所述请求实体(50)向所述身份提供者(40)发送所述第二真实性参考部分(art2),
响应步骤(XIII),其中所述身份提供者向所述请求实体(50)发送所述身份相关的信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05112930.2 | 2005-12-23 | ||
EP05112930 | 2005-12-23 | ||
PCT/IB2006/054799 WO2007072318A2 (en) | 2005-12-23 | 2006-12-13 | Secure identity management |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101341492A CN101341492A (zh) | 2009-01-07 |
CN101341492B true CN101341492B (zh) | 2011-10-26 |
Family
ID=38124048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800482991A Active CN101341492B (zh) | 2005-12-23 | 2006-12-13 | 提供和接收身份相关的信息的方法和系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7836298B2 (zh) |
EP (1) | EP1964021B1 (zh) |
JP (1) | JP4608579B2 (zh) |
CN (1) | CN101341492B (zh) |
AT (1) | ATE459930T1 (zh) |
DE (1) | DE602006012733D1 (zh) |
WO (1) | WO2007072318A2 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090077627A1 (en) * | 2007-03-16 | 2009-03-19 | Novell, Inc. | Information card federation point tracking and management |
US20090077118A1 (en) * | 2007-03-16 | 2009-03-19 | Novell, Inc. | Information card federation point tracking and management |
US8627493B1 (en) * | 2008-01-08 | 2014-01-07 | Juniper Networks, Inc. | Single sign-on for network applications |
US8291474B2 (en) * | 2008-04-16 | 2012-10-16 | Oracle America, Inc. | Using opaque groups in a federated identity management environment |
US20100106963A1 (en) * | 2008-04-22 | 2010-04-29 | Barclays Capital Inc. | System and method for secure remote computer task automation |
CN101567785B (zh) * | 2008-04-25 | 2011-11-02 | 华为技术有限公司 | 网络服务中的票据认证方法、系统及实体 |
GB2460412B (en) * | 2008-05-28 | 2012-09-19 | Hewlett Packard Development Co | Information sharing |
US8632003B2 (en) | 2009-01-27 | 2014-01-21 | Novell, Inc. | Multiple persona information cards |
US8606879B2 (en) | 2009-03-12 | 2013-12-10 | Nec Europe Ltd. | Method for supporting management and exchange of distributed data of user or an entity |
US8442235B2 (en) * | 2010-04-14 | 2013-05-14 | Microsoft Corporation | Extensible management of self-encrypting storage devices |
US8881247B2 (en) * | 2010-09-24 | 2014-11-04 | Microsoft Corporation | Federated mobile authentication using a network operator infrastructure |
WO2013074998A1 (en) * | 2011-11-16 | 2013-05-23 | P97 Networks, Inc. | Payment system for vehicle fueling |
CN102624737B (zh) * | 2012-03-27 | 2015-05-06 | 武汉理工大学 | 单点登录系统中针对Form身份鉴别的单点登录集成方法 |
CN103001954B (zh) * | 2012-11-22 | 2016-03-09 | 深圳市共进电子股份有限公司 | 一种web服务器文件保护方法及系统 |
US9729539B1 (en) | 2014-03-28 | 2017-08-08 | Pulse Secure, Llc | Network access session detection to provide single-sign on (SSO) functionality for a network access control device |
AU2015256293B2 (en) * | 2014-05-06 | 2017-05-04 | Okta, Inc. | Facilitating single sign-on to software applications |
US9641504B2 (en) * | 2014-12-15 | 2017-05-02 | Sap Se | HTTP header-based adaptable authentication mechanism |
CN106452814B (zh) * | 2015-08-10 | 2019-11-26 | 阿里巴巴集团控股有限公司 | 一种采用外部账户操作资源的方法和装置 |
US9992187B2 (en) * | 2015-12-21 | 2018-06-05 | Cisco Technology, Inc. | Single sign-on authentication via browser for client application |
US10305885B2 (en) * | 2016-03-03 | 2019-05-28 | Blackberry Limited | Accessing enterprise resources using provisioned certificates |
US10470040B2 (en) | 2017-08-27 | 2019-11-05 | Okta, Inc. | Secure single sign-on to software applications |
US11115483B2 (en) | 2019-03-28 | 2021-09-07 | The Nielsen Company (Us), Llc | Methods and apparatus for census and panel matching using session identifiers positioned in an HTTP header |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0511483A2 (en) * | 1991-04-01 | 1992-11-04 | International Business Machines Corporation | Method and apparatus for authenticating users of a communication system to each other |
EP0782296A3 (en) * | 1995-12-13 | 2000-03-08 | Ncr International Inc. | Securing transmission and receipt of electronic data |
US20030236975A1 (en) * | 2002-06-20 | 2003-12-25 | International Business Machines Corporation | System and method for improved electronic security credentials |
WO2004049143A1 (en) * | 2002-11-26 | 2004-06-10 | Koninklijke Philips Electronics N.V. | Method, system and apparatus for registration, approval and certification of extranet users |
CN1650246A (zh) * | 2002-04-26 | 2005-08-03 | 国际商业机器公司 | 提供个人控制与匿名性的基于浏览器的高效身份管理 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3569122B2 (ja) | 1998-01-22 | 2004-09-22 | 富士通株式会社 | セッション管理システム、サービス提供サーバ、セッション管理サーバ、セッション管理方法及び記録媒体 |
JP2002007345A (ja) | 2000-06-16 | 2002-01-11 | Osaka Gas Co Ltd | ユーザ認証方法 |
JP2002149610A (ja) | 2000-11-09 | 2002-05-24 | Toshiba Corp | 電子情報サービス方法、コンピュータ、記憶媒体 |
US7610390B2 (en) * | 2001-12-04 | 2009-10-27 | Sun Microsystems, Inc. | Distributed network identity |
US7221935B2 (en) * | 2002-02-28 | 2007-05-22 | Telefonaktiebolaget Lm Ericsson (Publ) | System, method and apparatus for federated single sign-on services |
CN1252598C (zh) * | 2002-09-03 | 2006-04-19 | 国际商业机器公司 | 提供身份相关的信息和防止中间人的攻击的方法和系统 |
US7207058B2 (en) * | 2002-12-31 | 2007-04-17 | American Express Travel Related Services Company, Inc. | Method and system for transmitting authentication context information |
US7992195B2 (en) * | 2003-03-26 | 2011-08-02 | International Business Machines Corporation | Efficient browser-based identity management providing personal control and anonymity |
US7451305B1 (en) * | 2003-04-10 | 2008-11-11 | Cisco Technology, Inc. | Method and apparatus for securely exchanging cryptographic identities through a mutually trusted intermediary |
JP2005149239A (ja) | 2003-11-17 | 2005-06-09 | Nec Corp | ユーザ認証システム |
US7404204B2 (en) * | 2004-02-06 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | System and method for authentication via a single sign-on server |
US7467399B2 (en) * | 2004-03-31 | 2008-12-16 | International Business Machines Corporation | Context-sensitive confidentiality within federated environments |
-
2006
- 2006-11-30 US US11/565,250 patent/US7836298B2/en active Active
- 2006-12-13 EP EP06842473A patent/EP1964021B1/en active Active
- 2006-12-13 WO PCT/IB2006/054799 patent/WO2007072318A2/en active Application Filing
- 2006-12-13 AT AT06842473T patent/ATE459930T1/de not_active IP Right Cessation
- 2006-12-13 DE DE602006012733T patent/DE602006012733D1/de active Active
- 2006-12-13 CN CN2006800482991A patent/CN101341492B/zh active Active
- 2006-12-13 JP JP2008546738A patent/JP4608579B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0511483A2 (en) * | 1991-04-01 | 1992-11-04 | International Business Machines Corporation | Method and apparatus for authenticating users of a communication system to each other |
EP0782296A3 (en) * | 1995-12-13 | 2000-03-08 | Ncr International Inc. | Securing transmission and receipt of electronic data |
CN1650246A (zh) * | 2002-04-26 | 2005-08-03 | 国际商业机器公司 | 提供个人控制与匿名性的基于浏览器的高效身份管理 |
US20030236975A1 (en) * | 2002-06-20 | 2003-12-25 | International Business Machines Corporation | System and method for improved electronic security credentials |
WO2004049143A1 (en) * | 2002-11-26 | 2004-06-10 | Koninklijke Philips Electronics N.V. | Method, system and apparatus for registration, approval and certification of extranet users |
Also Published As
Publication number | Publication date |
---|---|
WO2007072318A3 (en) | 2007-10-18 |
DE602006012733D1 (de) | 2010-04-15 |
US7836298B2 (en) | 2010-11-16 |
WO2007072318A2 (en) | 2007-06-28 |
EP1964021B1 (en) | 2010-03-03 |
JP4608579B2 (ja) | 2011-01-12 |
CN101341492A (zh) | 2009-01-07 |
US20100064134A1 (en) | 2010-03-11 |
ATE459930T1 (de) | 2010-03-15 |
EP1964021A2 (en) | 2008-09-03 |
JP2009521046A (ja) | 2009-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101341492B (zh) | 提供和接收身份相关的信息的方法和系统 | |
CN100547992C (zh) | 管理用户属性信息的方法和数据处理系统 | |
CN100534092C (zh) | 用于执行认证操作的方法及其装置 | |
CN1820481B (zh) | 在客户机-服务器环境中认证客户机的系统和方法 | |
CN101803272B (zh) | 认证系统和方法 | |
Boritz et al. | Security in XML-based financial reporting services on the Internet | |
US7337468B2 (en) | Methods, apparatuses and systems facilitating seamless, virtual integration of online membership models and services | |
EP1530860B1 (en) | Method and system for user-determined authentication and single-sign-on in a federated environment | |
JP4782986B2 (ja) | パブリックキー暗号法を用いたインターネット上でのシングルサインオン | |
CN100590631C (zh) | 用于安全绑定注册名称标识符简表的方法和系统 | |
CN100405397C (zh) | 在联合环境执行注册中介和重定优先级操作的方法和系统 | |
US20040030887A1 (en) | System and method for providing secure communications between clients and service providers | |
US20040205243A1 (en) | System and a method for managing digital identities | |
US9124606B2 (en) | Methods, apparatuses and systems facilitating seamless, virtual integration of online membership models and services | |
US20130014211A1 (en) | Application identity design | |
US20080040773A1 (en) | Policy isolation for network authentication and authorization | |
WO2007125180A1 (en) | Authentication | |
CN107872455A (zh) | 一种跨域单点登录系统及其方法 | |
Ribeiro et al. | STORK: a real, heterogeneous, large-scale eID management system | |
JP4932154B2 (ja) | アイデンティティ管理ネットワークにおいてユーザーの認証をメンバーサイトに与える方法及びシステム、アイデンティティ管理ネットワークに属するホームサイトでユーザーの認証を行う方法、コンピュータ読み取り可能な媒体、ならびに、階層的分散アイデンティティ管理のためのシステム | |
US6611916B1 (en) | Method of authenticating membership for providing access to a secure environment by authenticating membership to an associated secure environment | |
JP2009093580A (ja) | ユーザ認証システム | |
Pfitzmann et al. | BBAE–a general protocol for browser-based attribute exchange | |
Geihs et al. | Single sign-on in service-oriented computing | |
TW554275B (en) | Management device and method for managing a remote database |
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 |