在操作系统和应用之间共享用户id的制作方法

文档序号:7890767阅读:164来源:国知局
专利名称:在操作系统和应用之间共享用户id的制作方法
在操作系统和应用之间共享用户ID
背景技术
在计算环境中,用户可以在诸如互联网或某种其他网络上与在线服务连接。在线服务可以包括电子邮件服务,社交网络,文件存储、管理和协作服务,游戏,娱乐以及多种其他服务和在线应用。此外,用户可以利用与诸如应用提供者提供的远程服务器的在线部件通信的设备上的应用。当连接到在线服务和/或 应用时,可以要求用户登记身份,身份可以包括用户相关信息和/或用于通过服务对用户进行认证的安全信息。常常要求用户提供用户名和诸如口令的共享秘密以与他们的在线身份和/或双重认证相关联,例如,在线服务提供者可以使用该在线身份和/或双重认证对用户进行认证。

发明内容
提供本发明内容的目的在于以简化的形式介绍下文在具体实施方式
中进一步描述的概念的选择。本发明内容既非旨在识别要求保护的主题内容的关键因素或必要特征,也非旨在用于限制要求保护的主题内容的范围。一些网站和/或在线服务允许用户从无关连的网站或服务使用身份登录到他们的站点。例如,一些网站允许用户使用与社交网络站点相关联的用户身份对他们的身份进行认证。例如,社交网络站点和/或其他身份提供者,例如可以通过用户名和口令,并且有时通过另外的安全信息(例如,安全问题、图像、文件等)来登记用户。此外,不与社交网络站点关连的网站可以向用户提供使用社交网络身份登录到他们的网站的选项。将认识到,尽管这里可能引用了社交网络站点等,但是这些仅是身份提供者等的示例,并且包括所附权利要求的范围的应用并非旨在限于所提及的具体示例。在该示例中,网站可能正在运行来自社交网络站点的应用,和/或可以在用户选择登录选项时联系社交网络站点。例如,社交网络站点可以提供将呈现在用户的设备上的登录用户接口,并且用户可以在凭证中输入他们的日志。在该示例中,社交网络站点对用户进行认证并且(假设认证成功)与网站通信以使网站了解用户被认证。然而,为了使该类型的用户认证在诸如未在浏览器中运行的应用中工作,关于用户的基于云的身份服务提供者需要在用户的设备上(例如,在浏览器中)运行,和/或关于用户的基于云的身份服务提供者的应用需要能够由希望对用户进行认证的应用调用。因此,公开了一种或多种技术和/或系统,其中用户可以使用基于云的身份登录到他们的设备(例如,手持计算机、智能电话、便携式设备、膝上型计算机、桌面型计算机等),基于云的身份还可用于登录到多个网站或应用。作为示例,当支持基于云的身份的应用(例如,基于设备的应用、web应用、浏览器/网站等)在设备上运行时,该应用可以向设备的操作系统要求身份令牌。在该示例中,如果用户同意访问该身份令牌,则例如,应用随后可以将该身份令牌发送到其服务器,该服务器随后可以使令牌生效,验证用户的身份并且随后返回相关数据。这样,用户在设备上执行最初的登录业务之后不需要执行第二次登录业务,并且身份服务可以不需要在设备的后台运行以对用户进行认证。在用于使用操作系统对应用的用户进行认证的一个实施例中,用户使用关于用户的基于云的身份(例如,由用户使用的用于访问在线服务的基于云的身份),通过诸如驻留在设备上的操作系统进行认证。此外,如果由操作系统对用户进行认证,则在向操作系统请求时,将关于用户的基于云的身份的认证令牌提供给应用。此外,对于应用使用认证令牌对用户进行认证,其中该应用支持使用用户的基于云的ID。为了实现前述和相关目的,以下描述和附图阐述了特定的说明性方面和实施形式。这些仅指示了可以使用一个或多个方面的各种形式中的若干形式。当结合附图考虑时,根据以下详细描述,本公开的其他方面、优点和新颖特征 将变得明显。


图I图示了用于使用在线身份对在线服务的用户进行认证的现有技术的实施例。图2是图示了用于使用操作系统对应用的用户进行认证的示例性方法的流程图。图3是图示了其中可以实施这里描述的一种或多种技术的一个或多个部分的一个实施例的流程图。图4是图示了其中可以实施这里描述的一种或多种技术的一个或多个部分的一个实施例的流程图。图5是图示了用于使用操作系统对应用的用户进行认证的示例性系统的部件图。图6是图示了其中可以实施这里描述的一个或多个系统的一个实施例的部件图。图7是包括被配置为实施这里阐述的一个或多个方案的处理器可执行指令的示例性计算机可读介质的图示。图8图示了其中可以实施这里阐述的一个或多个方案的示例性计算环境。
具体实施例方式现将参照附图描述要求保护的主题内容,其中相同的附图标记用于通篇指示相同的元件。在以下描述中,出于说明的目的,阐述了许多特定细节以便提供要求保护的主题内容的全面的理解。然而,不言自明,要求保护的主题内容可以在没有这些特定细节的情况下实践。在其他实例中,结构和设备以框图的形式示出以便帮助描述要求保护的主题内容。图I图示了用于使用在线身份对在线服务的用户进行认证的现有技术的实施例100。例如,用户可以具有与诸如“fabrikam. com”的第一基于web的服务的在线关联,第一基于web的服务可以包括社交联网站点、电子邮件服务提供者、在线服务聚集者或者其他基于云的(例如,在线,诸如在互联网、内联网、局域网或广域网等上)服务提供者。在该示例中,与在线服务112的关联可以包括诸如通过创建用户名和相关联的秘密密钥(例如,口令),当登记服务112时提供认证身份114。此外,在线服务112可以要求用户与他们的在线ID 一起包括额外的安全性,诸如一个或多个安全问题、图像或者其他形式的安全性(例如,加密密钥)。在该实施例100中,用户可以导航到另一域102,诸如“contoso. com”并且登录,或者例如作为该站点102上的用户登记。当登录到该站点或者登记时,网站域可以提供网页104,网页104提供用于登录的若干替选方案。作为示例,用户可以利用网站的登录身份106,或者可以使用诸如针对“fabrikam. com”网站112创建的用户身份108的另一在线身份108、110登录。此外,另外的用户身份110可用于登录到例如contoso. com 104。
典型地,当用户选择另一在线身份108、110登录到网站102时,网站可以与诸如服务112的另一身份提供者通信116。在该示例中,contoso. com显示按钮(例如,108、110),其允许用户选择用于登录到站点102的另一在线身份。用户可以选择fabrikam. com在线身份108,并且网站102将与fabrikam. com通信116以提供例如登录凭证。在一个实施例中,fabrikam应用可以在contoso. com上运行,和/或典型的fabrikam. com登录屏幕114可以被调用并且提供给用户,其中用户可以输入他们的fabrikam. com身份凭证。一旦用户被fabrikam. com认证,则fabrikam. com网站可以与contoso. com网站102通信116,指不例如用户被认证并且可以允许用户登录到contoso. com。可以设计一种方法,其供用户例如通过用户的基于云的身份(例如,来自fabrikam. com)登录到他们的设备,并且随后使用该认证自动地登录到其他应用和/或网站。作为示例,不同于通过调用fabrikam. com认证并且 随后与在线网站通信以对用户进行认证来登录到contoso. com,用户设备的操作系统可以为用户提供认证以登录到应用和/或网站。在用户使用例如某种基于云的身份登录到设备之后,操作系统在被要求对用户进行认证时,可以仅针对网站和/或应用来识别用户。图2是用于使用操作系统对应用的用户进行认证的示例性方法200的流程图。示例性方法200开始于202并且在204处包括使用用户的基于云的身份通过操作系统(OS)对用户进行认证。例如,用户可以具有包括用户的认证信息的一个或多个基于云的身份(例如,用于通过一个或多个网站、电子邮件服务、在线服务、社交站点、web内容聚集站点等对用户进行认证的身份),使得用户可以被安全地认证。通常,基于云的身份利用用户身份和相关联的秘密共享密钥(例如,口令)对用户进行认证。可以使用其他认证技术,和/或可以使用额外的安全措施,诸如安全问题、图像、人类交互证明(HIP)等。在206处,应用向OS请求用户认证。例如,用户使用的设备可以包括OS,其中诸如当用户登录到该设备时,用户通过OS进行认证。在该示例中,当用户使设备开机时,可以提示他们通过他们的基于云的身份进行认证。此外,当用户尝试访问设备上的应用(例如,驻留在设备上的应用,或者在线应用或服务)时,应用可以向设备上的OS请求用户的认证(例如,不同于与提供用户的基于云的身份的在线服务通信)。在208处,将认证令牌提供给应用,其中认证令牌指示用户的基于云的身份。认证令牌可以包括基于软件的安全令牌,其可用于程序性地证实用户的身份。认证令牌可以用作例如向应用提供用户认证的安全密钥,而不必输入用户的身份和口令。例如,OS可以在应用请求时提供认证令牌,其中令牌是本地生成(例如,在用户设备上生成)的或者远程生成(例如,由与用户身份相关联的基于云的服务生成)的。在一个实施例中,令牌可以仅被生成供应用使用,或者可以是对多个请求的应用提供认证的更通用的令牌。在210处,应用使用认证令牌针对应用对用户进行认证。例如,一旦用户使用他们的基于云的身份(例如,fabrikam. com登录凭证)登录到他们的设备,则用户可以自动地(例如,程序性地)通过用户访问的应用(例如,基于设备的应用、网站、在线服务、基于web的应用等)对用户进行认证。在该示例中,当用户尝试访问应用时,指示用户的基于云的身份的认证令牌可以被提供给应用,并且用户可以访问应用而不必输入关于应用的额外的认证凭证。此外,在该示例中,应用没有必要与基于云的身份提供者(例如,“Fabrikam”)通信以请求对用户的认证。
在使用认证令牌针对应用对用户进行认证之后,示例性方法200结束于212处。图3是图示了其中可以实施这里描述的一种或多种技术的一个或多个部分的一个实施例300的流程图。在302处,用户通过应用设置对与用户相关联的基于云的身份的支持。在一个实施例中,用户可以通过关于应用的基于互联网的服务登记他们的基于云的身份。例如,第一网站(例如,contoso. com)可以供用户利用来自一个或多个第二网站(例如,fabrikam. com)的身份来登录到第一网站。这样,在该示例中,用户可以能够登记他们的来自第二网站的身份用于第一网站认证。在304处,在示例实施例300中,用户使用用户的基于云的身份登录到他们的设备。通常,当用户使设备开机时,操作系统要求用户提 供身份以与用户相关联和/或用于用户认证。在一个实施例中,可以利用强认证协议使用户登录到设备。例如,强认证可以包括通过提供与用户身份相关联的诸如用户名和共享秘密(或者例如数个共享秘密)的至少两个元素进行的双重认证(或者例如多重认证)。作为另一示例,强认证可以包括某种加密密钥共享,或者其他挑战-响应认证方案。在该实施例中,用户诸如从fabrikam. com通过他们的基于云的身份(例如,包括用户名和口令认证)登录到设备。在306处,可以使用与用户的基于云的身份相关联的基于云的身份服务对用户进行认证。在一个实施例中,操作系统可以为设备的用户提供登录用户接口(UI),并且OS可以与基于云的身份服务通信以使用例如输入到Π中的信息针对基于云的身份对用户进行认证。在一个实施例中,用户认证可以包括如上文所述的强认证,诸如与基于云的身份相关联的用户名和口令(例如,来自fabrikam. com)。作为示例,用户可以通过强认证信息登录到客户端设备,登录信息可以被传递到基于云的身份服务,基于云的身份服务可以对用户进行认证,并且基于云的身份服务可以向OS指示针对输入身份对用户进行了认证。此外,在一个实施例中,在用户已通过基于云的身份登录之后,可以例如在用户设备上运行的浏览器中更新一个或多个浏览器cookie。例如,更新的浏览器cookie可以指示用户现在登录到fabrikam. com。这样使用一个或多个cookie可以提供关于自动的认证例如并不总是必须依赖于进行认证请求以从OS取得认证令牌的应用的指示,并且可以仅使用更新的浏览器cookie识别用户通过基于云的身份服务登录。在308处,在用户认证之后(例如,通过基于云的身份服务),可以生成用户的基于云的身份的认证令牌。例如,当OS接收到登录到设备的用户针对他们的基于云的身份被认证的确认时,OS可以使得生成认证令牌。在一个实施例中,认证令牌可由在OS中运行的程序生成。在另一实施例中,认证令牌可由基于云的身份生成并且由设备上的OS取得。在一个实施例中,将用户的基于云的身份登记到关于应用的基于互联网的服务可以包括关于应用的基于互联网的服务与用户的基于云的身份所关联的基于云的身份服务通信。例如,用户可以通过提供关于第二网站的登录凭证向第一网站请求认证,并且第一网站可以与第二网站通信以请求用户认证。此外,在该示例中,如果通过第二网站对用户进行认证,则第二网站可以通过用户被认证的指示进行响应。在一个实施例中,通过关于应用的基于互联网的服务的登记可以例如仅执行一次,并且用户可以使用用户的基于云的身份保持通过关于应用的基于互联网的服务登记(例如,一旦用户登记,则他们以后不需要重新登记)。
图4是图示了其中可以实施这里描述的一种或多种技术的一个或多个部分的一个实施例400的流程图。在402处,用户激活设备上的应用,其中用户可以使用他们的基于云的身份预先登录到设备。激活设备上的应用可以包括例如,打开驻留在设备上的程序(例如,启动媒体播放器,其中播放器的程序的至少一部分本地存储在客户端设备上);打开web浏览器程序并且导航到网站;从网站启动基于web的应用(web应用)(例如,或者从链接到服务于web应用的远程服务器的设备的桌面启动web应用);或者从用户设备激活某种形式的程序。在404处,用户激活的应用可以诸如使用用户的基于云的ID,与OS就用户认证进行协商。在一个实施例中,应用可以确定,和/或O S可以识别例如,应用不支持用户的基于云的身份和/或用户尚未授权应用使用用户的基于云的身份。在该实施例中,例如可以不向应用提供认证令牌,除非如上文所述设置对用户的ID的支持(例如,图3的302)。作为示例,如果在协商期间发现应用不支持ID,则可以显示对话框UI,其引导用户设置与应用一起使用的基于云的ID。在一个实施例中,协商可以包括识别应用对用户ID的支持(例如,用户已设置支持),以及应用要求OS进行用户认证。在406处,在应用请求访问用户的ID之后,OS可以诸如在Π对话框中要求用户许可以与应用共享他们的基于云的ID。这样,例如,仅用户授权的那些应用可以访问用户的认证令牌。例如,恶意用户和/或程序可能希望访问用户ID和相关联的信息,以便诸如执行恶意动作。在该示例中,用户提供的明确许可可以减轻恶意攻击。在408处,用户可以诸如通过选择许可Π对话框中的“是”按钮来给予应用访问用户的基于云的ID的许可。在410处,如果用户授权访问用户的基于云的身份,则可以向应用提供认证令牌。在一个实施例中,可以诸如由OS生成认证令牌或者诸如在应用请求之后从基于云的ID服务取得认证令牌。例如,尽管OS可以存储当OS对用户进行认证时生成的授权令牌,但是替选地,可以仅在应用请求用户认证时创建该令牌。此外,可以仅在应用支持用户的基于云的ID的情况下提供认证令牌。在另一实施例中,来自应用的授权令牌请求可以包括应用向操作系统要求登录到包括应用的客户端设备的用户的身份。例如,不同于请求特定用户的认证许可,应用可以仅希望对已登录到设备的用户进行认证。在该示例中,用户可以登录到设备,并且设备OS可以对用户进行认证。当应用被激活时,应用可以例如仅向OS要求登录的用户的ID,由此不与用户交互。在该实施例中,操作系统可以通过用户的基于云的身份进行响应,并且应用可以使用用户的基于云的身份针对应用对用户进行授权。在412处,在用户认证之后可以从基于云的身份服务取得用户相关信息。例如,用户相关信息可以包括关于用户的识别信息以及可用于验证消息的完整性的元数据,验证诸如通过使用与应用的在线存在相关联的秘密密钥,以确定消息是否已被篡改。在该示例中,一旦用户被认证,则应用可以定期地或者连续地与链接到应用的远程服务器(例如,应用提供者)通信,并且用户的识别信息和元数据可以用作减轻恶意攻击的秘密密钥的一部分。作为另一示例,可以提供其他用户相关信息,其可以有助于应用提供改进的用户体验,诸如偏好、使用历史、地址、使用/存储的媒体、联系人、喜爱的网站、电子邮件信息、日历等。替选地,例如,当用户通过OS进行认证时可以从基于云的ID服务取得用户相关信息,并且OS可以向应用提供该信息(例如,如果用户给予许可)。在414处,应用可以使用认证令牌对用户进行认证。例如,应用可以具有与OS的信任关系,并且认证令牌可以包括用户实际上就是其所宣称的用户的OS的表示。此外,例如,由于应用出于认证目的已被设置为支持用户的基于云的ID,因此认证令牌可以包括用户的基于云的ID已被OS认证的表示。在一个实施例中,在接受应用的认证令牌之后用户可以访问应用。可以设计一种系统,其中用 户可以登录到例如诸如膝上型电脑、智能电话、手持计算机、桌面型电脑等的设备。用户可以使用用户先前设置的基于云的身份来登录到设备,并且设备的操作系统可以通过该ID对用户进行认证。操作系统可以与用户的基于云的ID的服务提供者通信以在设备上对用户进行认证,并且当应用要求用户的凭证时,例如,操作系统可以向应用提供用户的基于云的ID用于针对应用的认证。图5是图示了用于使用操作系统552对应用558的用户进行认证的示例性系统500的部件图。基于计算机的处理器502被配置为处理系统数据,并且可操作地与用户认证部件504耦连。用户认证部件504使用与用户550相关联的基于云的身份554通过操作系统552对用户550进行认证。例如,用户可以具有通过基于云的ID服务(例如,在社交网络、电子邮件服务或者某种其他在线服务上)登记的基于云的身份(ID)。在该示例中,基于云的ID服务可以已完成对用户进行认证所需的操作,因此,基于云的身份554可由用户使用,以通过设备上的OS 552对用户进行认证(例如,当他们登录到设备时)。认证令牌提供部件506可操作地与用户认证部件504和操作系统552耦连。在向操作系统552请求时认证令牌提供部件506向应用558提供认证令牌556 (其中请求源自应用558)。认证令牌556基于用户的基于云的身份554并且用于针对应用558对用户进行认证。例如,如果用户的在线ID 554针对操作系统552被认证部件504认证,则认证令牌提供部件506可以使用认证令牌556使应用558 了解用户被认证。在该示例中,当应用向操作系统552请求用户550的认证时,认证令牌556可以提供所请求的认证。图6是图示了其中可以实施这里描述的一个或多个系统的一个实施例600的部件图。在该示例中,提供了图5的扩展并且因此为了简化可以不再重复参照图5描述的元件、部件等的描述。基于云的身份服务通信部件610可以与用户650的基于云的身份所关联的基于云的身份服务660通信(例如,提供和/或维持用户的ID)。基于云的身份服务通信部件610可以针对基于云的身份对用户进行认证,和/或可以在用户650的认证之后从基于云的身份服务660取得用户相关信息。例如,当用户650通过他们的基于云的ID 654登录到设备时,用户认证部件504可以利用基于云的身份服务通信部件610通过与ID 654相关联的基于云的身份服务660对ID进行认证,并且还可以例如从基于云的身份服务660取得诸如身份信息的用户相关信息。当用户认证部件504对用户650进行认证时,认证令牌生成部件612可以生成与用户的基于云的身份654相关联的认证令牌656。用户登录部件614可以取得关于操作系统652的用户登录证书,其可用于针对操作系统652对用户的基于云的身份654进行认证。例如,当用户使包括操作系统652的设备开机时,可以提供登录对话用户接口(UI)用于用户登录(例如,通过与他们的在线ID相关联的用户名和口令)。在该示例中,用户登录部件614可以取得登录信息(例如,并且可以提供登录Π)并且将其传递到用户认证部件504。
用户认证部件504可以包括在由用户650操作的客户端设备616中并且可以被配置为至少部分地基于用户登录到客户端设备616来获得用户的基于云的身份654。例如,客户端设备616可以包括使用户能够诸如使用用户登录部件614提供的登录UI、通过他们的基于云的ID 654登录到设备的部件,并且可以由设备上的用户认证部件504对基于云的ID 654进行认证。这样,例如,驻留在设备616上(例如,或者由设备616远程访问)的应用658可以本地使用OS 652进行的认证以对用户进行认证用于访问应用,同时不必要求用户第二次登录。又一实施例涉及包括被配置为实施这里呈现的一种或 多种技术的处理器可执行指令的计算机可读介质。在图7中图示了可以以这些方式设计的示例性计算机可读介质,其中实施方式700包括其上编码有计算机可读数据706的计算机可读介质708(例如,CD-R、DVD-R或者硬盘驱动器的盘片)。该计算机可读数据706进而包括一组计算机指令704,其被配置为根据这里阐述的一个或多个原理进行操作。在一个这样的实施例702中,处理器可执行指令704可以被配置为执行方法,诸如例如图2的示例性方法200中的至少一些。在另一这样的实施例中,处理器可执行指令704可以被配置为实施系统,诸如例如图5的示例性系统500的至少一些。本领域普通技术人员可以设计许多这样的计算机可读介质,其被配置为根据这里呈现的技术进行操作。尽管以针对结构特征和/或方法动作特定的语言描述了主题内容,但是将理解,所附权利要求中限定的主题内容不一定限于上述特定特征或动作。相反,上述特定特征和动作被公开作为实施权利要求的示例形式。如本申请中使用的,术语“部件”、“模块”、“系统”、“接口”等通常旨在指示计算机相关实体,即硬件、硬件和软件的组合、软件或者执行中的软件。例如,部件可以是,但不限于,在处理器上运行的进程、处理器、对象、可执行程序、执行线程、程序和/或计算机。作为说明,在控制器上运行的应用和控制器可以是部件。一个或多个部件可以驻留在进程和/或执行线程内,并且部件可以位于一个计算机上和/或分布在两个或更多个计算机之间。此外,要求保护的主题内容可以被实施为方法、装置或者制造物品,其使用标准的编程和/或工程技术以产生软件、固件、硬件或者其任何组合以控制计算机实施所公开的主题内容。这里使用的术语“制造物品”旨在涵盖可以从任何计算机可读设备、载体或介质访问的计算机程序。当然,本领域技术人员将认识到在不偏离要求保护的主题内容的范围或精神的情况下,可以对该配置进行许多修改。图8和下面的讨论提供了适用于实施这里阐述的一个或多个方案的实施例的计算环境的简明的一般描述。图8的操作环境仅是适用的操作环境的一个示例,并非旨在建议关于操作环境的使用或功能范围的任何限制。示例计算设备包括,但不限于,个人计算机、服务器计算机、手持型或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等)、多处理器系统、消费者电子装置、微型计算机、大型计算机、包括任何上述系统或设备的分布式计算环境等等。尽管不需要,但是在“计算机可读指令”由一个或多个计算设备执行的一般背景下描述了实施例。计算机可读指令可以经由计算机可读介质(下文讨论)分发。计算机可读指令可以被实施为程序模块,诸如函数、对象、应用编程接口(API)、数据结构等,其执行特定任务或者实施特定的抽象数据类型。典型地,在各种环境中计算机可读指令的功能可以按照需要组合或者分发。图8图示了包括被配置为实施这里提供的一个或多个实施例的计算设备812的系统810的示例。在一个配置中,计算设备812包括至少一个处理单元816和存储器818。根据计算设备的具体配置和类型,存储器818可以是易失性的(诸如例如RAM)、非易失性的(诸如例如ROM、闪速存储器等)或者此两者的某种组合。该配置在图8中由虚线814图示。在其他实施例中,设备812可以包括额外 的特征和/或功能。例如,设备812还可以包括额外的存储设备(例如,可移除和/或不可移除),其包括,但不限于,磁存储设备、光存储设备等。这些额外的存储设备在图8中由存储设备820图示。在一个实施例中,用于实施这里提供的一个或多个实施例的计算机可读指令可以位于存储设备820中。存储设备820还可以存储其他计算机可读指令以实施操作系统、应用程序等。计算机可读指令可以被加载在存储器818中用于由例如处理单元816执行。这里使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据的信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质。存储器818和存储设备820是计算机存储介质的示例。计算机存储介质包括,但不限于,RAM、ROM、EEPR0M、闪速存储器或其他存储器技术,CD-ROM、数字多用途光盘(DVD )或其他光存储、盒式磁带、磁带、磁盘存储或其他磁存储设备,或者可用于存储所需信息并且可由设备812访问的任何其他介质。任何这样的计算机存储介质可以是设备812的一部分。设备812还可以包括通信连接826,其允许设备812与其他设备通信。通信连接826可以包括,但不限于,调制解调器、网络接口卡(NIC)、集成网络接口、射频发射器/接收器、红外端口、USB连接或者用于将计算设备812连接到其他计算设备的其他接口。通信连接826可以包括有线连接或者无线连接。通信连接826可以传送和/或接收通信介质。术语“计算机可读介质”可以包括通信介质。通信介质典型地将计算机可读指令或者其他数据具体化为诸如载波的“调制数据信号”或者其他传输机制并且包括任何信息递送介质。术语“调制数据信号”可以包括具有以使得将信息编码在信号中的方式设置或改变的一个或多个其特性的信号。设备812可以包括输入设备824,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备和/或任何其他输入设备。在设备812中还可以包括输出设备822,诸如一个或多个显不器、扬声器、打印机和/或任何其他输出设备。输入设备824和输出设备822可以经由有线连接、无线连接或者它们的任何组合连接到设备812。在一个实施例中,来自另一计算设备的输入设备或者输出设备可以用作计算设备812的输入设备824或输出设备822。计算设备812的部件可以通过诸如总线的各种互连来连接。这些互连可以包括外围部件互连(PCI),诸如PCI快速、通用串行总线(USB)、火线(IEEE 1394)、光总线结构等。在另一实施例中,计算设备812的部件可以通过网络互连。例如,存储器818可以包括位于由网络互连的不同的物理位置的多个物理存储器单元。本领域技术人员将认识到,用于存储计算机可读指令的存储设备可以跨越网络分布。例如,可经由网络828访问的计算设备830可以存储用于实施这里提供的一个或多个实施例的计算机可读指令。计算设备812可以访问计算设备830并且下载一部分或所有计算机可读指令用于执行。替选地,计算设备812可以按照需要下载计算机可读指令的片段,或者一些指令可以在计算设备812处执行并且一些指令可以在计算设备830处执行。这里提供了实施例的各种操作。在一个实施例中,所描述的一个或多个操作可以构成存储在一个或多个计算机可读介质上的计算机可读指令,其在由计算设备执行时将使计算设备执行所描述的操作。描述一些或所有操作的顺序不应被解释为暗示这些操作有必要依赖于顺序。本领域技术人员将认识到具有这里描述的益处的替选顺序。此外,将理解,在这里提供的每个实施例中不一定出现所有的操作。此外,这里使用的词“示例性”意味着用 作示例、实例或图示。这里被描述为“示例性”的任何方面或设计不一定被解释为较之其他方面或设计是有利的。相反,词“示例性”的使用旨在以具体的方式呈现概念。如本申请中使用的术语“或者”旨在意指包括性的“或者”而非排斥性的“或者”。就是说,除非另外说明或者根据上下文而显见,否则“X使用A或者B”旨在意指任何自然的包括性的置换。就是说,如果X使用A ;X使用B ;或者X使用A和B两者,则在任何前述实例下满足“X使用A或者B”。此外,A和B中的至少一个等通常意指A或者B或者A和B两者。此外,除非另外说明或者根据上下文而显见指示单数形式,否则如本申请和所附权利要求中使用的冠词“一个”通常可以被解释为意指“一个或多个”。再者,A和B中的至少一个等通常意指A或者B或者A和B两者。再者,尽管参照一个或多个实施方式示出和描述了本公开,但是基于本说明书和附图的阅读和理解,本领域技术人员将想到等同的变更和修改。本公开包括所有这些修改和变更并且仅由所附权利要求的范围限定。特别地对于上述部件(例如,元件、资源等)执行的各种功能,用于描述这些部件的术语旨在对应于(除非另外指示)执行所描述的部件的指定功能的任何部件(例如,功能上等同),即便在结构上并不等同于执行这里说明的本公开的示例性实施方式中的功能的所公开的结构。此外,尽管参照若干个实施方式中的仅一个实施方式公开了本公开的特定特征,但是该特征可以与其他实施方式的一个或多个其他特征组合,因为这可能是所期望的并且对于任何给定的或特定的应用是有利的。此外,对于在具体实施方式
或权利要求中使用的术语“包括(includes)”^具有(having)”、“具有(has)”、“具有(with)”或它们的变体,这些术语旨在按照与术语“包括(comprising)”相似的方式而是包括性的。
权利要求
1.一种用于使用操作系统对应用的用户进行认证的基于计算机的方法(200),包括 使用所述用户的基于云的身份通过所述操作系统对所述用户进行认证(204); 使用基于计算机的处理器,在向所述操作系统请求之后向所述应用提供关于所述用户的基于云的身份的认证令牌(208);以及 使用所述认证令牌针对所述应用对所述用户进行认证(210 )。
2.根据权利要求I所述的方法,通过所述操作系统对所述用户进行认证包括使用强认证协议通过所述操作系统对所述用户进行认证。
3.根据权利要求I所述的方法,通过所述操作系统对所述用户进行认证包括与基于云的身份服务通信以针对所述基于云的身份对所述用户进行认证。
4.根据权利要求I所述的方法,在从所述应用请求访问所述用户的基于云的身份之后,向所述用户请求访问所述用户的基于云的身份。
5.根据权利要求I所述的方法,包括在所述用户的认证之后生成所述认证令牌。
6.根据权利要求I所述的方法,如果所述应用支持所述用户的基于云的身份,则向所述应用提供关于所述用户的基于云的身份的认证令牌。
7.根据权利要求I所述的方法,包括通过关于所述应用的基于互联网的服务登记所述用户的基于云的身份。
8.根据权利要求I所述的方法,所述应用包括以下之一 驻留在所述用户的客户端设备上的浏览器,其导航到请求关于所述用户的认证的网站;以及 至少部分地驻留在所述用户的客户端设备上的应用,其能够与远程服务器通信,并且请求关于所述用户的认证。
9.根据权利要求I所述的方法,对所述用户进行认证包括使用强认证协议使所述用户登录到所述用户的客户端设备。
10.根据权利要求I所述的方法,包括从所述应用接收到的对授权令牌的请求,包括 所述应用向所述操作系统要求登录到包括所述应用的客户端设备的用户的身份; 所述操作系统通过所述用户的基于云的身份进行响应;以及 所述应用使用所述用户的基于云的身份针对所述应用对所述用户进行授权。
11.一种用于使用操作系统对应用的用户进行认证的系统(500),包括 基于计算机的处理器(502),被配置为处理关于所述系统的数据; 用户认证部件(504),能够操作地与所述处理器耦接,被配置为使用与所述用户相关联的基于云的身份通过所述操作系统对所述用户进行认证;以及 认证令牌提供部件(506),能够操作地与所述用户认证部件和操作系统耦接,被配置为在向所述操作系统请求之后,向所述应用提供基于所述用户的基于云的身份的认证令牌用于针对所述应用对所述用户进行认证。
12.根据权利要求11所述的系统,包括基于云的身份服务通信部件,其被配置为和与所述用户的基于云的身份相关联基于云的身份服务通信,,以执行以下中的ー个或多个 针对所述基于云的身份对所述用户进行认证;以及 在所述用户的认证之后从所述基于云的身份服务取得用户相关信息。
13.根据权利要求11所述的系统,包括认证令牌生成部件,其被配置为在所述用户认证部件进行所述用户的认证之后生成与所述用户的基于云的身份相关联的所述认证令牌。
14.根据权利要求11所述的系统,包括用户登录部件,其被配置为取得关于所述操作系统的用户登录凭证,用于针对所述操作系统对所述用户的基于云的身份进行认证。
15.根据权利要求11所述的系统,所述用户认证部件包括在由所述用户操作的客户端设备中并且被配置为至少部分地基于用户登录所述客户端设备来获得所述用户的基于云的身份。
全文摘要
公开了用于使用操作系统对应用的用户进行认证的一种或多种技术和/或系统。用户可以诸如在开机时使用登记到在线身份服务的基于云的ID登录到他们的设备。可以使用关于用户的基于云的身份,通过用户的设备上的操作系统对用户进行认证,其中操作系统可以联系在线身份服务以对用户进行认证。当用户激活设备上的应用时,应用可以向操作系统请求用户认证,并且向应用提供关于用户的基于云的身份的认证令牌。应用随后使用认证令牌针对应用对用户进行认证,只要应用支持用户的基于云的ID的使用。通过该方式,不需要后继的手动用户登录操作。
文档编号H04L29/06GK102685202SQ201210054749
公开日2012年9月19日 申请日期2012年3月5日 优先权日2011年3月3日
发明者C.帕克, E.弗莱施曼, O.V.奥巴桑霍, S.富尔克纳, 金泽敬二 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1