CN117178518A - 针对安全计算资源增强单点登录流程 - Google Patents
针对安全计算资源增强单点登录流程 Download PDFInfo
- Publication number
- CN117178518A CN117178518A CN202280029299.6A CN202280029299A CN117178518A CN 117178518 A CN117178518 A CN 117178518A CN 202280029299 A CN202280029299 A CN 202280029299A CN 117178518 A CN117178518 A CN 117178518A
- Authority
- CN
- China
- Prior art keywords
- token
- certificate
- computing resource
- secure computing
- identity provider
- 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.)
- Pending
Links
- 230000002708 enhancing effect Effects 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 130
- 230000004044 response Effects 0.000 claims description 21
- 238000012546 transfer Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 5
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 33
- 230000008569 process Effects 0.000 abstract description 29
- 238000004891 communication Methods 0.000 description 29
- 230000006855 networking Effects 0.000 description 17
- 239000002609 medium Substances 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 239000003795 chemical substances by application Substances 0.000 description 9
- 210000003811 finger Anatomy 0.000 description 7
- 238000005259 measurement Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 239000007787 solid Substances 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 239000000446 fuel Substances 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000003032 molecular docking Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000272878 Apodiformes Species 0.000 description 1
- 241001444063 Aronia Species 0.000 description 1
- 244000247747 Coptis groenlandica Species 0.000 description 1
- 235000002991 Coptis groenlandica Nutrition 0.000 description 1
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 1
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 239000004165 Methyl ester of fatty acids Substances 0.000 description 1
- 244000046146 Pueraria lobata Species 0.000 description 1
- 235000010575 Pueraria lobata Nutrition 0.000 description 1
- 235000017848 Rubus fruticosus Nutrition 0.000 description 1
- 241000414697 Tegra Species 0.000 description 1
- 244000078534 Vaccinium myrtillus Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000021029 blackberry Nutrition 0.000 description 1
- OJIJEKBXJYRIBZ-UHFFFAOYSA-N cadmium nickel Chemical compound [Ni].[Cd] OJIJEKBXJYRIBZ-UHFFFAOYSA-N 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- VJYFKVYYMZPMAB-UHFFFAOYSA-N ethoprophos Chemical compound CCCSP(=O)(OCC)SCCC VJYFKVYYMZPMAB-UHFFFAOYSA-N 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 229910052744 lithium Inorganic materials 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910052987 metal hydride Inorganic materials 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- PXHVJJICTQNCMI-UHFFFAOYSA-N nickel Substances [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 1
- -1 nickel metal hydrides Chemical class 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 210000003371 toe Anatomy 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 239000006163 transport media Substances 0.000 description 1
Classifications
-
- 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
-
- 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/33—User authentication using certificates
-
- 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/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
Abstract
本文公开的技术为诸如虚拟机或托管应用的安全计算资源提供了增强的单点登录流程。在一些配置中,该技术在系统的特定计算实体处处理不同类型的安全数据,例如凭证、令牌、证书和参考对象,以提供用于提供从客户端计算设备对安全计算资源的访问的单点登录流程。在一个说明性示例中,从特定计算资源处的令牌和声明生成选择类型的安全数据,诸如证书,该特定计算资源诸如在虚拟机上操作的代理。在另一示例中,可以在虚拟机处存储和验证证书的签名版本。通过在这样的特定计算资源处生成证书,计算资源可以使用安全的单点登录流程来验证人的凭证,而不需要此人多次提供凭证。
Description
背景技术
有许多不同类型的认证系统可以使用人的电子凭证来授予对不同系统或不同等级的分布式计算系统的访问权限。在某些情况下,认证系统使用仅一个凭证集即可授予对虚拟机、基于服务器的应用和其他服务的访问权限。尽管在认证系统方面已经有了许多发展,但是仍然存在许多场景,这些场景不允许用户无缝地使用提供对不同系统或不同等级的分布式计算系统的访问的一个凭证集。
在一个说明性示例中,当人使用客户端计算设备来访问在服务器上运行的虚拟机时,可能要求用户执行多个手动步骤以在平台的多个等级上提供凭证。首先,可能需要用户登录客户端设备,该客户端设备可能需要用户提供他们的凭证,例如,标识符和密码、智能卡等。然后,一旦用户登录到客户端设备,用户可能必须再次手动输入他们的凭证以访问由服务器提供的服务,诸如虚拟机和应用服务。这种要求导致需要冗余的手动输入,这除了使系统面临更大的安全风险之外,还会极大地阻碍服务的采用率。
在一些现有系统中,令牌可以用于授予对计算系统的多个组件的访问。在这样的系统中,当用户提供凭证集(本文称为“凭证”)时,生成令牌。令牌可用于允许访问计算设备的应用和其他资源。也可以复制令牌以授予操作系统的较低等级的访问权限。尽管现有系统具有灵活性,但令牌不能提供对分布式计算系统的所有方面的访问,例如在远程服务器上执行的虚拟机。因此,要求用户在尝试访问此类资源时重新输入他们的凭证,可能会对用户体验产生负面影响。
关于这些和其他技术挑战,本文提出了本公开。
发明内容
本文公开的技术为诸如虚拟机或托管应用的安全计算资源提供了增强的单点登录流程。在一些配置中,该技术在系统的特定计算实体处处理不同类型的安全数据,例如凭证、令牌、证书和参考对象,以提供用于提供从客户端计算设备对安全计算资源的访问的单点登录流程。在一个说明性示例中,从特定计算资源处的令牌和声明生成选择类型的安全数据,诸如证书,该特定计算资源诸如在虚拟机上操作的代理。在另一示例中,可以在虚拟机处存储和验证证书的签名版本。通过在这样的特定计算资源处生成证书,计算资源可以使用安全的单点登录流程来验证人的凭证,而不需要此人多次提供凭证。
在一个说明性示例中,当在身份提供器处接收到凭证时,系统可以生成令牌。该令牌和声明可以被传送到特定计算资源,诸如虚拟机,其中该虚拟机上的代理处理该令牌以生成证书。响应于检测到一个或多个标准,可以向证书授权机构传送证书,其中可以对证书进行签名。然后,可以向代理传送签名证书,该代理将签名证书路由到计算资源,其中代理可以将签名证书处理成安全对象。然后,可以将安全对象插入到客户端计算设备与计算资源之间的连接中,以允许从客户端计算设备对计算资源的安全访问。
通过阅读下面的具体实施方式和回顾关联附图,除了上文明确描述的特征和技术优势将是清楚的。提供本发明内容是为了以简化形式介绍一组概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容不是为了确定所要求保护的主题的关键或必要特征,也不是为了帮助确定所要求保护的主题的范围。术语“技术”例如可以指(多个)系统、(多个)方法、计算机可读指令、(多个)模块、算法、硬件逻辑和/或(多个)操作,如上所述的上下文和贯穿本文档所允许的。
附图说明
参考附图描述具体实施方式。在附图中,附图标记的最左边的(多个)数字标识附图标记首次出现的附图。不同附图中相同的附图标记表示相似或相同的项目。对多个项目中的各个项目进行的引用可以使用带有字母序列中的字母的附图标记来引用每个单独项目。对这些项目的通用引用可以使用不带字母序列的特定附图标记。
图1是用于认证系统的安全计算资源的单点登录流程的系统的框图。
图2A示出了在认证系统的单点登录流程的过程的第一状态下用于安全计算资源的单点登录流程的系统的各方面。
图2B示出了在认证系统的单点登录流程的过程的第二状态下用于安全计算资源的单点登录流程的系统的各方面。
图2C示出了在认证系统的单点登录流程的过程的第三状态下用于安全计算资源的单点登录流程的系统的各方面。
图2D示出了在认证系统的单点登录流程的过程的第四状态下用于安全计算资源的单点登录流程的系统的各方面。
图2E示出了在认证系统的单点登录流程的过程的第五状态下用于安全计算资源的单点登录流程的系统的各方面。
图3A示出了在认证系统的单点登录流程的过程的第一状态下使用安全计算资源的参考对象的单点登录流程的系统的各方面。
图3B示出了在认证系统的单点登录流程的过程的第二状态下使用安全计算资源的参考对象的单点登录流程的系统的各方面。
图3C示出了在认证系统的单点登录流程的过程的第三状态下使用安全计算资源的参考对象的单点登录流程的系统的各方面。
图3D示出了在认证系统的单点登录流程的过程的第四状态下使用安全计算资源的参考对象的单点登录流程的系统的各方面。
图3E示出了在认证系统的单点登录流程的过程的第五状态下使用安全计算资源的参考对象的单点登录流程的系统的各方面。
图3F示出了在认证系统的单点登录流程的过程的第六状态下使用安全计算资源的参考对象的单点登录流程的系统的各方面。
图4是示出用于启用本文公开的技术的例程的各方面的流程图。
图5是计算机架构图,其示出了用于能够实现本文呈现的技术和科技的各方面的计算系统的说明性计算机硬件和软件架构。
图6是示出能够实现本文呈现的技术和科技的各方面的分布式计算环境的图示。
图7是示出能够实现本文呈现的技术和科技的各方面的计算设备的计算设备架构的计算机架构图。
具体实施方式
所公开的技术通过提供对诸如虚拟机、远程虚拟机或托管应用的安全计算资源的单点登录流程访问来改进认证系统的效率、安全性和功能性。本文公开的技术在系统的特定计算实体处处理不同类型的安全数据,例如凭证、令牌、证书和参考对象,以提供用于提供从客户端计算设备对安全计算资源的访问的单点登录流程。所公开的技术解决了与某些认证系统相关联的几个技术问题。例如,所公开的技术解决了令牌不能提供对分布式计算系统的所有方面的访问的问题,分布式计算系统诸如在远程服务器上执行的虚拟机。如下面更详细地描述的,所公开的技术还可以通过使用单点登录流程认证来减少获得对资源的访问所需的手动用户输入(即,黑客表面机会)的数量来提高安全性。所公开的技术还可以通过仅必须从用户接收单个用户名和密码输入以获得对远程虚拟机的访问来节省计算资源,例如处理周期、存储器资源和联网资源。
传统上,存在认证系统,其中用户可能必须多次输入凭证以获得对与认证系统相关联的资源的访问。例如,用户必须输入用户名和密码才能访问认证系统。然后,用户还必须重新输入用户名和密码才能访问与认证系统相关联的某些资源。传统方法通过要求用户多次输入凭证来获得对资源的访问而导致认证系统的低效。传统方法还通过增加获得对资源的访问所需的用户输入(即黑客表面机会)的数量来增加认证系统的安全风险。传统方法还通过要求用户多次输入凭证以获得对资源的访问来降低认证系统的功能。
本文公开的单点登录流程特征提供了通过提供对安全计算资源的单点登录流程访问来改进认证系统的效率、安全性和功能性的数个益处(例如,技术效果)。所公开的技术通过仅必须从用户接收单个用户名和密码输入以获得对安全计算资源的访问来节省认证系统的计算资源,例如处理周期、存储器资源和联网资源。所公开的技术还通过减少获得对资源的访问所需的用户输入(即,黑客表面机会)的数目来提高认证系统的安全性。所公开的技术还通过自动化与对安全计算资源的令牌访问相关联的用户来提高认证系统的效率和安全性。图1至图7示出了具有单点登录流程特征的认证系统,并描绘了认证系统的单点登录流程的各种操作状态。
现在参考图1,下面示出并且描述用于认证系统特征的安全计算资源的单点登录流程的各方面。图1示出了包括基础设施101和服务103的系统100,用于在安全计算资源124(诸如,虚拟机124A或托管应用124B)与客户端设备102之间提供单点登录过程。客户端设备102也可以被称为“客户端”或“客户端设备”。
通常,客户端设备102可以包括计算设备。计算设备的示例包括服务器计算机、移动电话、PDA、智能电话、台式计算机、上网本计算机、平板计算机和/或膝上型计算机。客户端设备102可以包括代理,其中该代理允许客户端设备102通过网络连接标识远程计算机、虚拟机或计算设备。该代理还允许客户端设备102在网络连接上标识计算设备上的应用。
基础设施101可以包括网关111、代理112和数据库113。通常,网关111可以包括远程桌面网关,其使用安全套接字层协议经由远程桌面协议向服务器提供安全连接。通常,代理112可以包括远程桌面代理。远程桌面代理是允许客户端设备102访问各种类型的服务器托管的桌面和应用的软件。通常,数据库113可以包括用户信息,例如用户配置数据。例如,当用户想要访问安全计算资源124时,他们可以在配置阶段处提供信息。用户可以指示他们偏好的特定身份提供器或证书授权机构。在这样的过程中,数据库113可以存储这些偏好以及每个偏好资源的网络地址和客户端的地址信息。
服务103可以包括基础设施即服务(IaaS)。通常,IaaS可以包括在线服务,这些服务提供高级API,用于取消引用底层网络基础架构的各种低等级细节,如物理计算资源、位置、数据分区、扩展、安全、备份等。管理程序(诸如,Xen、Oracle VirtualBox、Oracle VM、KVM、VMware ESX/ESXi或Hyper-V、LXD)将虚拟机作为访客运行。云操作系统中的管理程序池可以支持大量的虚拟机,并且能够根据客户的不同需求扩展和缩减服务。
服务103可以包括安全计算资源124,其可以是虚拟机124A、应用124B或用于处理或存储数据的其他计算资源。虚拟机124A可以包括在安全环境中执行的操作系统的实例,该安全环境与在其他安全环境中执行的其他操作系统实例分开。应用124B可以包括在服务上执行的应用,诸如日历应用、文字处理应用等。
服务103可以包括身份提供器121。通常,身份提供器121可以包括活动目录联合服务服务器(ADFS)。ADFS可以为用户提供对某些系统和位于跨组织边界的某些应用的单点登录访问权限。ADFS可以使用联合身份来链接跨多个身份管理系统的用户。
服务103可以包括对证书授权机构123的访问。可以本地或远程访问证书授权机构123。通常,证书授权机构123是发布数字证书的实体。签名证书157是数字证书的示例。数字证书证明证书中信息的有效性。例如,该信息可以是凭证151的用户名或凭证151的用户名和密码、或任何其他类型的凭证。数字证书还可以通过证书的命名主体来证明公钥的所有权。这允许其他依赖方依赖签名或关于与经认证的公钥相对应的私钥的断言。证书授权机构123充当由证书的主体、所有者和依赖于证书的一方所信任的受信第三方。
如图2A所示,在单点登录过程的第一阶段,在身份提供器121处从客户端设备102接收凭证集151。来自客户端设备102的凭证151被传送到身份提供器121。通常,凭证151向身份提供器121标识客户端设备102的用户。凭证151可以包括用户名和密码。
第一阶段还可以包括响应于确定凭证集151满足一个或多个标准,生成指示凭证集151的有效性的令牌152,令牌152限定用于与凭证集151相关联的用户的单点登录流程的声明153。在实现中,身份提供器121可以生成与凭证151相关联的令牌152和声明153。声明153被包括在令牌152内。令牌152可以是在基于令牌的认证中使用的字母数字串。例如,用户可以使用用户名和密码认证一次,然后接收令牌152作为回报。然后,在向某些资源认证时,可以使用接收到的令牌152来代表用户。
声明153可以提供关于凭证151的信息。例如,声明153可以包括凭证151的用户名或用户名和密码。声明153还可以通知身份提供器121,令牌152在先前通信期间已经登录到身份提供器121或者已经与身份提供器121进行了通信。声明153还可以通知身份提供器121,因为令牌152在过去已经登录到身份提供器121或者已经与身份提供器121通信,所以可以将令牌152交换为登录证书。证书155也可以被称为登录证书。
现在参考图2B,在单点登录过程的第二阶段,向客户端设备102传送令牌152给,其中客户端设备102被配置为将令牌152与请求154进行通信,以发起用于访问服务103的安全计算资源124的单点登录流程。在实现中,令牌152和声明153被传送到客户端设备102。到客户端设备102的通信还可以包括传送与令牌152相关联的所标识的资源。
现在参考图2C,在单点登录过程的第三阶段,在代理112处接收来自客户端设备102的访问服务103的安全计算资源124的请求154,其中请求154包括限定单点登录流程的声明153的令牌152。在一些实现中,客户端设备102通过代理112做出请求154以访问与令牌152相关联的安全计算资源124。在一些实现中,接收请求154还可以发起接收预定位置,以将发起获得证书155签名的请求发送到该位置。例如,身份提供器121的URL可以被提供为发送请求以发起获得证书155签名的位置。预定位置可以由用户、内部源或外部源提供。
第三阶段还可以响应于确定请求154包括由身份提供器121生成的令牌152和声明153,使安全计算资源124从令牌152生成证书155,其中安全计算资源124被配置为向身份提供器121传送证书155和令牌152。在一些实现中,通过代理112的请求154可以使安全计算资源124基于声明153来生成证书155。声明可以提供证书155的实体。证书155可以提供关于实体的标识信息。例如,证书155可以提供该实体是来自凭证151的用户名或用户名和密码的信息。证书155的生成可以使证书155、令牌152和声明153被传送到身份提供器121。身份提供器121可以由客户预先确定。身份提供器121还可以注册身份提供器121以能够基于令牌152代表用户ID请求签名证书。
现在参考图2D,在单点登录过程的第四阶段,使身份提供器121验证令牌152并且向证书授权机构123发送证书155以从证书155生成签名证书157,其中证书授权机构123包括由用户提供的用于签署证书155的安全数据。在实现中,身份提供器121验证令牌152。在令牌152成功验证后,证书155被传送到证书授权机构123。证书授权机构123验证证书155并且生成签名证书157。签名证书157被传送到安全计算资源124。
现在参考图2E,在单点登录过程的第五阶段,向安全计算资源124发送签名证书157,其中签名证书157使客户端设备102能够通过连接202访问安全计算资源124,而无需客户端设备102重新提交用于访问安全计算资源124的凭证集151。在实现中,签名证书157被插入到连接202中。连接202使得能够在安全计算资源124与客户端设备102之间进行通信。例如,连接202可以是安全计算资源124与客户端设备102之间的安全加密连接。将签名证书157插入到连接202中使得客户端设备102能够通过连接202访问安全计算资源124,而不需要客户端设备102重新提交用于访问安全计算资源124的凭证151。
现在参考用于认证系统的安全计算资源的单点登录流程的各方面的备选实施例,下面示出并且描述特征。图3A至图3F示出了可以在多租户系统中使用的单点登录流程的实施例,在这种情况下,可以使用参考对象来建立连接。
如图3A所示,在单点登录过程的第一阶段,在身份提供器121处从客户端设备102接收凭证集151。来自客户端设备102的凭证151被传送到身份提供器121。凭证151向身份提供器121标识客户端设备102的用户。凭证151可以包括用户名和密码。
第一阶段还可以包括响应于确定所述凭证集151满足一个或多个标准,生成指示所述凭证集151的有效性的令牌152,其限定用于与凭证集151相关联的用户的单点登录流程的声明153。在实现中,身份提供器121可以生成与凭证151相关联的令牌152和声明153。声明153被包括在令牌152内。令牌152可以是在基于令牌的认证中使用的字母数字串。例如,用户可以使用用户名和密码认证一次,然后接收令牌152作为回报。然后,在向某些资源认证时,可以使用接收到的令牌152来代表用户。
声明153可以提供关于凭证151的信息。例如,声明153可以包括用户名或凭证151的用户名和密码。声明153还可以通知身份提供器121,令牌152在先前通信期间已经登录到身份提供器121或者已经与身份提供器121进行了通信。声明153还可以通知身份提供器121,因为令牌152在过去已经登录到身份提供器121或者已经与身份提供器121通信,所以可以将令牌152交换为登录证书。证书155也可以被称为登录证书。
现在参考图3B,在单点登录过程的第二阶段,向客户端设备102传送令牌152,其中客户端设备102被配置为将令牌152与请求154进行通信,以发起用于访问服务103的安全计算资源124的单点登录流程。在实现中,令牌152和声明153被传送到客户端设备102。到客户端设备102的通信还可以包括传送与令牌152相关联的所标识的资源。
现在参考图3C,在单点登录过程的第三阶段中,在代理112处接收来自客户端设备102的访问服务103的安全计算资源124的请求154,其中请求154包括限定单点登录流程的声明153的令牌152。在一些实现中,客户端设备102通过代理112做出请求154以访问与令牌152相关联的安全计算资源124。在一些实现中,接收请求154还可以发起接收预定位置,以将发起获得签名证书155的请求发送到该位置。例如,身份提供器121的URL可以被提供为发送请求以发起获得证书155签名的位置。预定位置可以由用户、内部源或外部源提供。
第三阶段还可以响应于确定请求154包括由身份提供器121生成的令牌152和声明153,使安全计算资源124从令牌152生成证书155,其中安全计算资源124被配置为向代理112传送证书155。在实现中,通过代理112的请求154使安全计算资源124基于声明153来生成证书155。声明可以提供证书155的实体。证书155可以提供关于实体的标识信息。例如,证书155可以提供该实体是来自凭证151的用户名或用户名和密码的信息。
在实现中,证书155的生成使证书155、令牌152和声明153被传送回代理112。当系统支持多租户云(未示出)时,可以使用通过代理112的通信。多租户云是一种云计算架构,其允许客户在公共云或私有云中共享计算资源。每个租户的数据都是隔离的,对其他租户保持不可见。
现在参考图3D,在单点登录过程的第四阶段,使代理112向身份提供器121发送证书155,使身份提供器121验证令牌152并且向证书授权机构123发送证书155,以从证书155生成签名证书157,其中证书授权机构123包括由用户提供的用于签署证书155的安全数据。在实现中,代理112向身份提供器121传送证书155、令牌152和声明153。身份提供器121可以由客户预先确定。身份提供器121还可以注册身份提供器121以能够基于令牌152代表用户ID请求签名证书。
在实现中,身份提供器121验证令牌152。在令牌152成功验证后,证书155被传送到证书授权机构123。证书授权机构123验证证书155并且生成签名证书157。签名证书157被传送到安全计算资源124。
第四阶段还可以包括使签名证书157传送到安全计算资源124,使安全计算资源124生成被配置为提供对安全计算资源124的访问的参考对象158。在接收到签名证书157后,安全计算资源124基于签名证书157来生成参考对象158。参考对象158是签名证书157的标识符。在一些实现中,参考对象158可以包括签名证书157的序列号。参考对象158用于定位安全计算资源124的签名证书157。
现在参考图3E,在单点登录过程的第五阶段,使参考对象158与网关111的通信。在一种实现中,参考对象158被传送到网关111。
现在参考图3F,在单点登录过程的第六阶段,其中网关111被配置为将参考对象158插入到客户端设备102和安全计算资源124之间的连接202中,允许访问安全计算资源124,而不需要用户提供用于访问安全计算资源124的凭证集151,其中,插入参考对象158使得将参考对象158传送到安全计算资源124以验证参考对象158。连接202是安全计算资源124与客户端设备102之间的通信。例如,连接202可以是使用https上的远程桌面协议的安全加密连接。
网关111可以在客户端设备102与安全计算资源124之间建立连接202。参考对象158被插入到连接202中。将参考对象158插入到连接202中使得客户端设备102能够使用参考对象158通过连接202访问安全计算资源124,而无需客户端设备102重新提交用于访问安全计算资源124的凭证151。
现在转到图4,下面示出并且描述用于提供对安全计算资源的单点登录流程访问的例程400的各方面。应当理解,本文公开的方法的操作不以任何特定顺序呈现,并且以(多个)备选顺序执行一些或全部操作是可能的并且是预期的。为便于描述和说明,已按演示顺序介绍了这些操作。可以同时添加、省略和/或执行操作而不脱离所附权利要求的范围。
还应当理解,所示方法可以在任何时间结束,并且不需要全部执行。该方法的一些或所有操作和/或实质上等同的操作可以通过执行包括在如下限定的计算机存储介质上的计算机可读指令来执行。在本说明书和权利要求书中使用的术语“计算机可读指令”及其变体本文被广泛使用,以包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等。计算机可读指令可以在各种系统配置上实现,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持计算设备、基于微处理器的可编程消费电子产品、其组合等。
因此,应当理解,本文描述的逻辑操作被实现为(1)作为在计算系统上运行的计算机实现的动作或程序模块的序列和/或(2)作为计算系统内的互连的机器逻辑电路或电路模块。实现是取决于计算系统的性能和其他要求的选择问题。因此,本文描述的逻辑操作被不同地称为状态、操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以在软件、固件、专用数字逻辑及其任意组合中实现。
例如,例程400的操作本文被描述为至少部分地由运行本文公开的特征的模块来实现,其可以是动态链接库(DLL)、静态链接库、由应用编程接口(API)产生的功能、编译的程序、解释的程序、脚本或任何其他可执行指令集。数据可以存储在一个或多个存储器组件中的数据结构中。可以通过寻址对数据结构的链接或引用来从数据结构中取回数据。
尽管下面的图示参考了附图的组件,但是应当理解,例程400的操作也可以以许多其他方式来实现。例如,例程400可以至少部分地由另一远程计算机的处理器或本地电路来实现。此外,例程400的一个或多个操作备选地或附加地至少部分地由单独工作或与其他软件模块结合工作的芯片组来实现。在下面描述的示例中,计算系统的一个或多个模块可以接收和/或处理本文公开的数据。适用于提供本文公开的技术的任何服务、电路或应用都可以在本文描述的操作中使用。
参考图4,例程400开始于操作402处,其中身份提供器121生成令牌152,其限定来自凭证151的单点登录流程的声明153。操作402可以涉及在身份提供器121处从客户端设备102接收凭证集151。身份提供器121响应于确定凭证集151满足一个或多个标准而生成指示凭证集151的有效性的令牌152。令牌152限定用于与凭证集151相关联的用户的单点登录流程的声明153。
在实现中,身份提供器121可以生成与凭证151相关联的令牌152和声明153。声明153被包括在令牌152内。令牌152可以是在基于令牌的认证中使用的字母数字串。
接下来,在操作404处,其中虚拟机124A从在虚拟机124A处的令牌152生成证书155。操作404可以涉及确定包括由身份提供器121生成的令牌152和声明153的请求154使得虚拟机124A从令牌152生成证书155。
在实现中,通过代理112的请求154使虚拟机124A基于声明153生成证书155。声明153可以提供证书155的实体。证书155可以提供关于实体的标识信息。例如,证书155可以提供该实体是来自凭证151的用户名或用户名和密码的信息。
接下来,在操作406处,其中证书授权机构123响应于连接到虚拟机124A的请求来签署证书155。操作406可以涉及响应于连接到虚拟机124A的请求,使代理112向身份提供器121发送证书155,使身份提供器121验证令牌152,并且向证书授权机构123发送证书155,以从证书155生成签名证书157。
在实现中,身份提供器121验证令牌152。在令牌152成功验证后,证书155被传送到证书授权机构123。证书授权机构123验证证书155并且生成签名证书157。签名证书157被传送到虚拟机124A。
接下来,在操作408处,其中虚拟机124A从签名证书157生成参考对象158。操作408可以涉及使虚拟机124A生成被配置为提供对虚拟机124A的访问的参考对象158。在接收到签名证书157后,虚拟机124A基于签名证书157来生成参考对象158。参考对象158是签名证书157的标识符。
在一些实现中,参考对象158可以包括签名证书157的序列号。参考对象158用于定位虚拟机124A的签名证书157。
接下来,在操作410,其中使用连接202,使用参考对象158以允许使用单点登录流程访问虚拟机124A。操作410可以涉及使参考对象158与网关111通信。
在实现中,参考对象158被传送到网关111。网关111被配置为将参考对象158插入到客户端设备102和虚拟机124A之间的连接202中,允许访问虚拟机124A,而不需要用户提供用于访问虚拟机124A的凭证集151。参考对象158的插入使得参考对象158与用于验证参考对象158的虚拟机124A通信。连接202是虚拟机124A和客户端设备102之间的通信。例如,连接202可以是使用https上的远程桌面协议的安全加密连接。
图5示出了能够执行本文描述的程序组件的计算机的示例性计算机架构500的细节。因此,图5中所示的计算机架构500示出了服务器计算机、移动电话、PDA、智能电话、台式计算机、上网本计算机、平板计算机和/或膝上型计算机的架构。计算机架构500可用于执行本文呈现的软件组件的任何方面。
图5所示的计算机架构500包括中央处理单元502(“CPU”)、系统存储器504(包括随机存取存储器506(“RAM”)和只读存储器(“ROM”)508)、以及将存储器504耦合到CPU 502的系统总线510。基本输入/输出系统存储在ROM 508中,其包含诸如在启动期间帮助在计算机架构500内的元素之间传输信息的基本例程。计算机架构500还包括用于存储操作系统507、其他数据和一个或多个应用的大容量存储设备512。大容量存储设备512还可以存储其他项,例如数据库113。
大容量存储设备512通过连接到总线510的大容量存储控制器(未示出)连接到CPU502。大容量存储设备512及其相关联的计算机可读介质为计算机架构500提供非易失性存储。尽管本文包含的对计算机可读介质的描述指的是诸如固态驱动器、硬盘或CD-ROM驱动器之类的大容量存储设备,但是本领域的技术人员应当理解,计算机可读介质可以是可由计算机架构500访问的任何可用计算机存储介质或通信介质。
通信介质包括计算机可读指令、数据结构、程序模块或调制数据信号中的其他数据,例如载波或其他传输机制,并且包括任何传送介质。术语“调制数据信号”是指其一个或多个特性以编码信号中的信息的方式改变或设置的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质,以及诸如声学、RF、红外和其他无线介质的无线介质。上述任何项的组合也应包括在计算机可读介质的范围内。
作为示例而非限制,一个或多个计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。例如,计算机介质包括但不限于RAM、ROM、EPROM、EEPROM、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(DVD)、HD-DVD、蓝光或其他光存储、盒式磁带、磁带、磁盘存储或其他磁存储设备、或可用于存储所需信息并可由计算机架构800访问的任何其他介质。为了权利要求的目的,短语“非瞬态计算机存储介质”、“计算机存储介质”、“计算机可读存储介质”及其变体不包括波、信号和/或其他瞬态和/或无形通信介质本身。
根据各种配置,计算机架构500可以使用通过网络556和/或另一网络(未示出)到远程计算机的逻辑连接在联网环境中操作。计算机架构500可以通过连接到总线510的网络接口单元514连接到网络556。应当理解,网络接口单元514还可以用于连接到其他类型的网络和远程计算机系统。计算机架构500还可以包括输入/输出控制器516,用于接收和处理来自多个其他设备的输入,包括键盘、鼠标或电子指示笔(图5中未示出)。类似地,输入/输出控制器516可以向显示屏、打印机或其他类型的输出设备(图5中也未示出)提供输出。
应当理解,本文描述的软件组件在被加载到CPU 502中并且被执行时,可以将CPU502和整个计算机架构500从通用计算系统转换为定制以促进本文呈现的功能的专用计算系统。CPU 502可以由任意数目的晶体管或其他离散电路元素构成,其可以单独地或共同地呈现任意数目的状态。更具体地,响应于包含在本文公开的软件模块内的可执行指令,CPU502可以作为有限状态机来操作。这些计算机可执行指令可以通过指定CPU 502如何在状态之间转换来转换CPU 502,从而转换构成CPU 502的晶体管或其他离散硬件元件。
对本文呈现的软件模块进行编码还可以改变本文呈现的计算机可读介质的物理结构。在本说明书的不同实现中,物理结构的具体转换可以取决于各种因素。这些因素的示例可以包括但不限于用于实现计算机可读介质的技术、计算机可读介质的特征是主存储还是辅助存储等。例如,如果计算机可读介质被实现为基于半导体的存储器,则可以通过变换半导体存储器的物理状态将本文公开的软件编码在计算机可读介质上。例如,软件可以转换构成半导体存储器的晶体管、电容器或其他分立电路元件的状态。该软件还可以转换这些组件的物理状态,以便在其上存储数据。
作为另一示例,本文公开的计算机可读介质可以使用磁或光技术来实现。在这样的实现中,当软件被编码在其中时,本文呈现的软件可以改变磁或光介质的物理状态。这些变换可以包括改变给定磁介质内的特定位置的磁特性。这些变换还可以包括改变给定光学介质内的特定位置的物理特征或特性,以改变那些位置的光学特性。物理介质的其他变换也是可能的而不背离本描述的范围和精神,前述示例仅为便于该讨论而提供。
鉴于以上,应当理解,为了存储和执行本文呈现的软件组件,在计算机架构500中发生许多类型的物理变换。还应当理解,计算机架构500可以包括其他类型的计算设备,包括手持计算机、嵌入式计算机系统、个人数字助理和本领域技术人员公知的其他类型的计算设备。还可以预期,计算机架构500可以不包括图5中所示的所有组件,可以包括图5中未明确示出的其他组件,或者可以利用与图5中所示完全不同的架构。
图6描绘了能够执行本文描述的软件组件的说明性分布式计算环境600。因此,图6中所示的分布式计算环境600可用于执行本文呈现的软件组件的任何方面。例如,分布式计算环境600可用于执行本文描述的软件组件的各方面。
根据各种实现,分布式计算环境600包括在网络604上操作、与网络604通信或作为网络604的部分操作的计算环境602。网络604可以是或可以包括以上参考图5描述的网络556。网络604还可以包括各种接入网络。一个或多个客户端设备606A至606N(以下统称和/或通称为“客户端606”,并且本文也称为计算设备)可以经由网络604和/或其他连接(图5中未示出)与计算环境602通信。在一个所示的配置中,客户端606包括计算设备606A,诸如膝上型计算机、台式计算机或其他计算设备;板式或平板计算设备(“平板计算设备”)606B;移动计算设备606C,诸如移动电话、智能电话或其他移动计算设备;服务器计算机606D;和/或其他设备606N。应当理解,任何数目的客户端606可以与计算环境602通信。本文参考图5和图6图示和描述了客户端606的两个示例计算架构。应当理解,本文图示和描述的客户端606和计算架构是说明性的,并且不应被解释为以任何方式受到限制。
在所示配置中,计算环境602包括应用服务器608、数据存储设备610和一个或多个网络接口612。根据各种实现,应用服务器608的功能可以由作为网络604的部分执行或与网络604通信的一个或多个服务器计算机来提供。应用服务器608可以托管各种服务、虚拟机、门户和/或其他资源。在所示配置中,应用服务器608托管一个或多个用于托管应用或其他功能的虚拟机614。根据各种实现,虚拟机614托管一个或多个应用和/或软件模块,以实现本文公开的高效测试。应当理解,该配置是说明性的,并且不应被解释为以任何方式进行限制。应用服务器608还托管或提供对一个或多个门户、链接页面、网站和/或其他信息(“网站门户”)616的访问。
根据各种实现,应用服务器608还包括一个或多个邮箱服务618和一个或多个消息收发服务620。邮箱服务618可以包括电子邮件(“email”)服务。邮箱服务618还可以包括各种个人信息管理(“PIM”)和在场服务,包括但不限于日历服务、联系人管理服务、协作服务和/或其他服务。消息收发服务620可以包括但不限于即时消息收发服务、聊天服务、论坛服务和/或其他通信服务。
应用服务器608还可以包括一个或多个社交网络服务622。社交网络服务622可以包括各种社交网络服务,包括但不限于,用于共享或发布状态更新、即时消息、链接、照片、视频和/或其他信息的服务;用于评论或显示对文章、产品、博客或其他资源的兴趣的服务;和/或其他服务。在一些配置中,社交网络服务622由FACEBOOK社交网络服务、LINKEDIN专业网络服务、MYSPACE社交网络服务、FOURSQUARE地理网络服务、YAMMER办公室同事网络服务等提供或包括。在其他配置中,社交网络服务622由可能被或可能不被明确地称为社交网络提供方的其他服务、站点和/或提供方来提供。例如,一些网站允许用户在各种活动和/或上下文期间通过电子邮件、聊天服务和/或其他方式彼此交互,诸如阅读已发表的文章、评论商品或服务、发布、协作、游戏等。这种服务的示例包括但不限于来自华盛顿州雷蒙德市的微软公司的WINDOWS LIVE服务和XBOX LIVE服务。其他服务是可能的并且是预期的。
社交网络服务622还可以包括评论、博客和/或微博服务。这种服务的示例包括但不限于YELP评论服务、KUDZU评论服务、OFFICETALK企业微博服务、TWITTER消息服务、GOOGLE BUZZ服务和/或其他服务。应当理解,以上服务列表不是穷尽的,并且为了简短起见,本文不提及许多附加的和/或备选的社交网络服务622。因此,上面的配置是说明性的,不应被解释为以任何方式受到限制。根据各种实现,社交网络服务622可以托管用于提供本文描述的功能的一个或多个应用和/或软件模块。例如,应用服务器608中的任何一个可以通信或促进本文描述的功能和特征。例如,在电话或任何其他客户端606上运行的社交网络应用、邮件客户端、消息收发客户端或浏览器可以与网络服务622通信并且甚至部分地促进以上参考图6描述的功能。本文描述的任何设备或服务都可以用作补充数据的资源,包括电子邮件服务器、存储服务器等。
如图6所示,应用服务器608还可以托管其他服务、应用、门户和/或其他资源(“其他资源”)624。其他资源624可以包括但不限于文档共享、呈现或任何其他功能。因此,可以理解,计算环境602可以提供本文公开的概念和技术与各种邮箱、消息、社交网络和/或其他服务或资源的集成。
如上所述,计算环境602可以包括数据存储设备610。根据各种实现,数据存储设备610的功能由在网络604上操作或与网络604通信的一个或多个数据库提供。数据存储设备610的功能还可以由被配置为托管计算环境602的数据的一个或多个服务器计算机来提供。数据存储设备610可以包括、托管或提供一个或多个真实或虚拟数据存储626A-626N(以下统称和/或统称为“数据存储”626)。数据存储626被配置为托管由应用服务器608使用或创建的数据和/或其他数据。尽管未在图6中示出,但数据存储626还可以托管或存储网页文档、word文档、演示文档、数据结构、由推荐引擎执行的算法、和/或由任何应用或另一模块使用的其他数据。数据存储626的各方面可以与用于存储文件的服务相关联。
计算环境602可以与网络接口612通信或由网络接口612访问。网络接口612可以包括用于支持两个或更多个计算设备之间的通信的各种类型的网络硬件和软件,这些计算设备包括但不限于计算设备和服务器。应当理解,网络接口612还可以用于连接到其他类型的网络和/或计算机系统。
应当理解,本文描述的分布式计算环境600可以向本文描述的软件元素的任何方面提供任何数目的虚拟计算资源和/或其他分布式计算功能,这些虚拟计算资源和/或其他分布式计算功能可以被配置为执行本文公开的软件组件的任何方面。根据本文公开的概念和技术的各种实现,分布式计算环境600将本文描述的软件功能作为服务提供给计算设备。应当理解,计算设备可以包括真实的或虚拟的机器,包括但不限于服务器计算机、网络服务器、个人计算机、移动计算设备、智能电话和/或其他设备。因此,本文公开的概念和技术的各种配置使得被配置为访问分布式计算环境600的任何设备能够利用本文描述的功能来提供本文公开的技术等方面。在一个特定示例中,如上所述,本文描述的技术可以至少部分地通过与图6的应用服务器608协同工作的web浏览器应用来实现。
现在转到图7,用于计算设备的说明性计算设备架构700,该计算设备能够执行本文描述的各种软件组件以启用本文公开的技术。计算设备架构700适用于部分由于外形因素、无线连接和/或电池供电操作而促进移动计算的计算设备。在一些配置中,计算设备包括但不限于移动电话、平板设备、平板设备、便携式视频游戏设备等。计算设备架构700可应用于图1和图6中所示的任何计算设备。此外,计算设备架构700的各方面可应用于传统台式计算机、便携式计算机(例如,电话、膝上型计算机、笔记本、超便携计算机和上网本)、服务器计算机和诸如本文参考图1和图6描述的其他计算机系统。例如,下面公开的单点触摸和多点触摸方面可以应用于使用触摸屏或诸如触摸式跟踪板或触摸式鼠标之类的某些其他触摸式设备的台式计算机。
图7中所示的计算设备架构700包括处理器702、存储器组件704、网络连接组件706、传感器组件708、输入/输出组件710和电源组件712。在所示配置中,处理器702与存储器组件704、网络连接组件706、传感器组件708、输入/输出(“I/O”)组件710和电源组件712通信。尽管图12中所示的各个组件之间没有显示连接,但是这些组件可以交互以执行设备功能。在一些配置中,这些组件被布置成经由一条或多条总线(未示出)进行通信。
处理器702包括被配置为处理数据、执行一个或多个应用的计算机可执行指令、以及与计算设备架构700的其他组件通信以便执行本文描述的各种功能的中央处理单元(“CPU”)。处理器702可用于执行本文呈现的软件组件的各方面,尤其是至少部分地利用触摸式输入的那些软件组件。
在一些配置中,处理器702包括被配置为加速由CPU执行的操作的图形处理单元(“GPU”),这些操作包括但不限于通过执行通用科学和/或工程计算应用以及诸如高分辨率视频(例如,720P、1080P和更高分辨率)、视频游戏、三维(“3D”)建模应用等图形密集型计算应用所执行的操作。在一些配置中,处理器702被配置为与离散GPU(未示出)通信。在任何情况下,可以根据协同处理CPU/GPU计算模型来配置CPU和GPU,其中应用的顺序部分在CPU上执行,而计算密集型部分由GPU加速。
在一些配置中,处理器702与下文描述的一个或多个其他组件一起是片上系统(“SoC”)或包括在其中。例如,SoC可以包括处理器702、GPU、网络连接组件706中的一个或多个以及传感器组件708中的一个或多个。在一些配置中,处理器702部分地利用封装上封装(“PoP”)集成电路封装技术来制造。处理器702可以是单核或多核处理器。
处理器702可以根据ARM架构来创建,该ARM架构可从英国剑桥的ARM HOLDINGS获得许可。备选地,处理器702可以根据x86架构来创建,例如可从加州山景城的INTEL公司和其他公司获得。在一些配置中,处理器702是可从加州圣地亚哥的QUALCOMM获得的SNAPDRAGON SOC、可从加利福尼亚州圣克拉拉的NVIDIA获得的TEGRA SoC、可从韩国首尔的SAMSUNG获得的HUMMINGBIRD SoC、可从德克萨斯州达拉斯的德州仪器公司获得的开放式多媒体应用平台(“OMAP”)SoC、上述任何SoC的定制版本、或专有SoC。
存储器组件704包括随机存取存储器(“RAM”)714、只读存储器(“ROM”)716、集成存储存储器(“集成存储设备”)718和可移除存储存储器(“可移除存储设备”)720。在一些配置中,RAM 714或其部分、ROM 716或其部分、和/或RAM 714和ROM 716的某种组合集成在处理器702中。在一些配置中,ROM 716被配置为存储固件、操作系统或其部分(例如,操作系统内核)和/或引导加载器,以从集成存储设备718和/或可移除存储设备720加载操作系统内核。
集成存储设备718可以包括固态存储器、硬盘或固态存储器和硬盘的组合。集成存储设备718可以焊接或以其他方式连接到逻辑板,在该逻辑板上还可以连接处理器702和本文描述的其他组件。因此,集成存储设备718被集成在计算设备中。集成存储设备718被配置为存储操作系统或其部分、应用、数据和本文描述的其他软件组件。
可移除存储设备720可以包括固态存储器、硬盘或固态存储器和硬盘的组合。在一些配置中,提供可移除存储设备720来代替集成存储设备718。在其他配置中,可移除存储设备720被设置为附加的可选存储设备。在一些配置中,可移除存储设备720与集成存储设备718在逻辑上组合,使得总可用存储装置作为总组合存储容量可用。在一些配置中,向用户显示集成存储设备718和可移除存储设备720的总组合容量,而不是集成存储设备718和可移除存储设备720的单独存储容量。
可移除存储设备720被配置为插入到可移除存储存储器插槽(未示出)或其他机构中,可移除存储设备720通过其插入并固定,以便于可移除存储设备720可以通过其与计算设备的其他组件(例如处理器702)通信的连接。可移除存储设备720可以以各种存储卡格式实现,包括但不限于PC卡、紧凑型闪存卡、记忆棒、安全数字(“SD”)、迷你SD、微型SD、通用集成电路卡(“UICC”)(例如,用户标识模块(“SIM”)或通用SIM(“USIM”))、专有格式等。
可以理解,存储器组件704中的一个或多个可以存储操作系统。根据各种配置,操作系统包括但不限于来自华盛顿州雷蒙德的微软公司的WINDOWS MOBILE OS、来自微软公司的WINDOWS PHONE OS、来自微软公司的WINDOWS、来自加利福尼亚州帕洛阿尔托的惠普公司的PALM WEBOS、来自加拿大安大略省滑铁卢的Research in Motion Limited的BLACKBERRY OS、来自加利福尼亚州库比蒂诺的苹果公司的IOS、以及来自加利福尼亚州山景城的谷歌公司的ANDROID OS。预期其他操作系统。
网络连接组件706包括无线广域网组件(“WWAN组件”)722、无线局域网组件(“WLAN组件”)724和无线个人区域网组件(“WPAN组件”)726。网络连接组件706促进去往和来自网络756或另一网络的通信,另一网络可以是WWAN、WLAN或WPAN。尽管仅示出了网络756,但网络连接组件706可以促进与包括图6的网络656在内的多个网络的同时通信。例如,网络连接组件706可以经由WWAN、WLAN或WPAN中的一个或多个来促进与多个网络的同时通信。
网络756可以是或可以包括WWAN,例如利用一个或多个移动电信技术经由WWAN组件722向利用计算设备架构700的计算设备提供语音和/或数据服务的移动电信网络。移动电信技术可以包括但不限于全球移动通信系统(“GSM”)、码分多址(“CDMA”)ONE、CDMA7000、通用移动电信系统(“UMTS”)、长期演进(“LTE”)和微波接入的全球互操作性(“WiMAX”)。此外,网络756可以利用各种信道接入方法(其可以被前述标准使用也可以不被使用),包括但不限于时分多址(“TDMA”)、频分多址(“FDMA”)、CDMA、宽带CDMA(“W-CDMA”)、正交频分多路复用(“OFDM”)、空分多址(“SDMA”)等。数据通信可以使用通用分组无线业务(“GPRS”)、增强型全球演进数据速率(“EDGE”)、包括高速下行链路分组接入(“HSDPA”)、增强型上行链路(“EUL”)或以其他方式称为高速上行链路分组接入(“HSUPA”)、演进HSPA(“HSPA+”)、LTE以及各种其他当前和未来无线数据接入标准来提供。网络756可以被配置为利用上述技术的任何组合来提供语音和/或数据通信。网络756可以被配置为或适合于根据未来一代技术提供语音和/或数据通信。
在一些配置中,WWAN组件722被配置为提供到网络756的双多模式连接。例如,WWAN组件722可以被配置为提供到网络756的连接,其中网络756经由GSM和UMTS技术或经由技术的某种其他组合来提供服务。备选地,可以利用多个WWAN组件722来执行这样的功能,和/或提供附加功能以支持其他非兼容技术(即,不能由单个WWAN组件支持)。WWAN组件722可以促进到多个网络(例如,UMTS网络和LTE网络)的类似连接。
网络756可以是根据一个或多个电气和电子工程师协会(“IEEE”)802.11标准操作的WLAN,诸如IEEE 802.11a、802.11b、802.11g、802.11n和/或未来的802.11标准(本文统称为WI-FI)。预期802.11标准草案。在一些配置中,利用一个或多个无线WI-FI接入点来实现WLAN。在一些配置中,一个或多个无线WI-FI接入点是另一计算设备,该另一计算设备连接到用作WI-FI热点的WWAN。WLAN组件724被配置为经由WI-FI接入点连接到网络756。这种连接可以通过各种加密技术来保护,包括但不限于WI-FI保护接入(“WPA”)、WPA2、有线等效保密(“WEP”)等。
网络756可以是根据红外数据协会(“IrDA”)、蓝牙、无线通用串行总线(“USB”)、Z-Wave、ZIGBEE或一些其他短距离无线技术操作的WPAN。在一些配置中,WPAN组件726被配置为便于经由WPAN与诸如外围设备、计算机或其他计算设备的其他设备进行通信。
传感器组件708包括磁力计728、环境光传感器730、接近度传感器732、加速度计734、陀螺仪736和全球定位系统传感器(“GPS传感器”)738。预期诸如但不限于温度传感器或冲击检测传感器的其他传感器也可以结合在计算设备架构700中。
磁力计728被配置为测量磁场的强度和方向。在一些配置中,磁力计728向存储在存储器组件704中的一个组件中的指南针应用提供测量,以便在包括北、南、东和西的基本方向的参考系中向用户提供准确的方向。可以将类似的测量提供给包括指南针组件的导航应用。磁力计728获得的测量的其他用途也是预期的。
环境光传感器730被配置为测量环境光。在一些配置中,环境光传感器730向存储在存储器组件704中的一个组件中的应用提供测量,以便自动调整显示器的亮度(如下所述)以补偿弱光和强光环境。还预期由环境光传感器730获得的测量的其他用途。
接近度传感器732被配置为在不直接接触的情况下检测计算设备附近的物体或东西的存在。在一些配置中,接近度传感器732检测用户身体(例如,用户面部)的存在,并且将该信息提供给存储在存储器组件704中的一个组件内的应用,该应用利用接近信息来启用或禁用计算设备的某些功能。例如,电话应用可以响应于接收到邻近信息而自动禁用触摸屏(如下所述),使得用户的面部在呼叫期间不会无意地结束呼叫或启用/禁用电话应用内的其他功能。预期由接近度传感器732检测到的接近度的其他用途。
加速度计734被配置为测量适当的加速度。在一些配置中,来自加速度计734的输出由应用用作控制应用的某些功能的输入机制。例如,应用可以是视频游戏,其中角色、其部分或对象响应于经由加速计734接收的输入而被移动或以其他方式操纵。在一些配置中,来自加速度计734的输出被提供给应用,以用于在横向和纵向模式之间切换、计算坐标加速度或检测跌落。预期加速度计734的其他用途。
陀螺仪736被配置为测量和保持定向。在一些配置中,来自陀螺仪736的输出由应用用作控制应用的某些功能的输入机制。例如,陀螺仪736可以用于准确标识视频游戏应用或某些其他应用的3D环境内的运动。在一些配置中,应用利用来自陀螺仪736和加速度计734的输出来增强对应用的某些功能的控制。预期陀螺仪736的其他用途。
GPS传感器738被配置为接收来自GPS卫星的信号以用于计算位置。由GPS传感器738计算的位置可以由需要位置信息或受益于位置信息的任何应用使用。例如,由GPS传感器738计算的位置可以与导航应用一起使用,以提供从该位置到目的地的方向或从目的地到该位置的方向。此外,GPS传感器738可以用于向外部基于位置的服务(例如,E911服务)提供位置信息。GPS传感器738可以利用网络连接组件706中的一个或多个来获得经由WI-FI、WIMAX和/或蜂窝三角测量技术生成的位置信息,以帮助GPS传感器738获得位置定位。GPS传感器738还可用于辅助GPS(“A-GPS”)系统。GPS传感器738还可以与诸如处理器702的其他组件一起操作,以生成用于计算设备700的定位数据。
I/O组件710包括显示器740、触摸屏742、数据I/O接口组件(“数据I/O”)744、音频I/O接口组件(“音频I/O”)746、视频I/O接口组件(“视频I/O”)748和相机750。在一些配置中,显示器740和触摸屏742被组合。在一些配置中,数据I/O组件744、音频I/O组件746和视频I/O组件748中的两个或多个被组合。I/O组件710可以包括被配置为支持下面描述的各种接口的分立处理器,或者可以包括内置到处理器702中的处理功能。
显示器740是被配置为以视觉形式呈现信息的输出设备。具体地,显示器740可以呈现图形用户界面(“GUI”)元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息收发数据、因特网内容、设备状态、时间、日期、日历数据、偏好、地图信息、位置信息以及能够以可视形式呈现的任何其他信息。在一些配置中,显示器740是使用任何有源或无源矩阵技术和任何背光技术(如果使用的话)的液晶显示器(“LCD”)。在一些配置中,显示器740是有机发光二极管(“OLED”)显示器。预期其他类型的显示器。
触摸屏742,本文也被称为“触摸使能屏”,是被配置为检测触摸的存在和位置的输入设备。触摸屏742可以是阻性触摸屏、电容式触摸屏、表面声波触摸屏、红外触摸屏、光学成像触摸屏、色散信号触摸屏、声脉冲标识触摸屏,或者可以利用任何其他触摸屏技术。在一些配置中,触摸屏742被合并在显示器740的顶部作为透明层,以使用户能够使用一个或多个触摸来与显示器740上呈现的对象或其他信息交互。在其他配置中,触摸屏742是合并在不包括显示器740的计算设备的表面上的触摸板。例如,计算设备可以具有合并在显示器740顶部的触摸屏和与显示器740相对的表面上的触摸板。
在一些配置中,触摸屏742是单触摸触摸屏。在其他配置中,触摸屏742是多触摸触摸屏。在一些配置中,触摸屏742被配置为检测离散触摸、单次触摸手势和/或多触摸手势。为了方便,这些在本文统称为手势。现在将描述几个手势。应当理解,这些手势是说明性的,并不旨在限制所附权利要求的范围。此外,所描述的手势、附加手势和/或备选手势可以在与触摸屏742一起使用的软件中实现。因此,开发者可以创建特定于特定应用程序的手势。
在一些配置中,触摸屏742支持轻击手势,其中用户一旦在显示器740上呈现的项目上轻击触摸屏742。轻击手势可以用于各种原因,包括但不限于,打开或启动用户轻击的任何东西。在一些配置中,触摸屏742支持双击手势,其中用户在显示器740上呈现的项目上轻击触摸屏742两次。双击手势可以用于各种原因,包括但不限于分阶段放大或缩小。在一些配置中,触摸屏742支持轻击并且保持手势,其中用户轻击触摸屏742并且在至少预定时间内保持联系。轻击和保持手势可以用于各种原因,包括但不限于打开上下文特定菜单。
在一些配置中,触摸屏742支持平移手势,其中用户将手指放在触摸屏742上并且在触摸屏742上移动手指的同时保持与触摸屏742的接触。平移手势可以用于各种原因,包括但不限于以受控的速度在屏幕、图像或菜单中移动。还预期多指平移手势。在一些配置中,触摸屏742支持轻拂手势,其中用户在用户希望屏幕移动的方向上滑动手指。轻拂手势可以用于各种原因,包括但不限于在菜单或页面中水平或垂直滚动。在一些配置中,触摸屏742支持收紧和拉伸手势,其中用户在触摸屏742上用两个手指(例如,拇指和食指)进行收紧动作或将两个手指分开。收缩和拉伸手势可以用于各种原因,包括但不限于逐渐放大或缩小网站、地图或图片。
尽管参考使用一个或多个手指来执行手势来描述上述手势,但是可以使用诸如脚趾的其他附件或诸如指示笔的对象来与触摸屏742交互。因此,上述手势应该被理解为说明性的,而不应该被解释为以任何方式限制。
数据I/O接口组件744被配置为便于向计算设备输入数据以及从计算设备输出数据。在一些配置中,数据I/O接口组件744包括连接器,其被配置为提供计算设备和计算机系统之间的有线连接,例如用于同步操作目的。连接器可以是专有连接器或标准化连接器,例如USB、微型USB、迷你USB等。在一些配置中,连接器是用于将计算设备与诸如对接站、音频设备(例如,数字音乐播放器)或视频设备之类的另一设备对接的对接连接器。
音频I/O接口组件746被配置为向计算设备提供音频输入和/或输出能力。在一些配置中,音频I/O接口组件746包括被配置为采集音频信号的麦克风。在一些配置中,音频I/O接口组件746包括被配置为为耳机或其他外部扬声器提供连接的耳机插孔。在一些配置中,音频I/O接口组件746包括用于输出音频信号的扬声器。在一些配置中,音频I/O接口组件746包括光学音频电缆输出。
视频I/O接口组件748被配置为向计算设备提供视频输入和/或输出能力。在一些配置中,视频I/O接口组件748包括视频连接器,其被配置为从另一设备(例如,诸如DVD或BLURAY播放器的视频媒体播放器)接收视频作为输入,或者将视频作为输出发送到另一设备(例如,监视器、电视或一些其他外部显示器)。在一些配置中,视频I/O接口组件748包括用于输入/输出视频内容的高清晰度多媒体接口(“HDMI”)、迷你HDMI、微型HDMI、DisplayPort或专有连接器。在一些配置中,视频I/O接口组件748或其部分与音频I/O接口组件746或其部分组合。
相机750可以被配置为捕捉静止图像和/或视频。相机750可以利用电荷耦合器件(“CCD”)或互补金属氧化物半导体(“CMOS”)图像传感器来捕获图像。在一些配置中,相机750包括闪光灯以帮助在低光环境中拍照。相机750的设置可以实现为硬件或软件按钮。
尽管未示出,但计算设备架构700中也可以包括一个或多个硬件按钮。硬件按钮可用于控制计算设备的某些操作方面。硬件按钮可以是专用按钮或多用途按钮。硬件按钮可以是机械的,也可以是基于传感器的。
所示的电源组件712包括一个或多个电池752,其可以连接到电池电量计754。电池752可以是可充电的或一次性的。可充电电池类型包括但不限于锂聚合物、锂离子、镍镉和镍金属氢化物。电池752中的每一个可以由一个或多个电池制成。
电池电量计754可以被配置为测量电池参数,例如电流、电压和温度。在一些配置中,电池电量计754被配置为测量电池的放电率、温度、寿命和其他因素的影响,以在一定误差百分比内预测剩余寿命。在一些配置中,电池电量计754向应用提供测量,该应用被配置为利用测量来向用户呈现有用的电源管理数据。电源管理数据可以包括电池使用百分比、电池剩余百分比、电池状况、剩余时间、剩余容量(例如,以瓦时为单位)、电流消耗和电压中的一个或多个。
电源组件712还可以包括电源连接器,该电源连接器可以与前述I/O组件710中的一个或多个组件组合。电源组件712可以通过I/O组件与外部电力系统或充电设备相接口。
以下条款是对本公开的补充。
示例条款1.一种用于在计算系统上执行的方法,方法包括:在身份提供器处从客户端设备接收凭证集;响应于确定凭证集满足一个或多个标准,生成指示凭证集的有效性的令牌,令牌限定对与凭证集相关联的用户的单点登录流程的声明;向客户端设备传送令牌,其中客户端设备被配置为传送具有发起用于访问服务的安全计算资源的单点登录流程的请求的令牌;在代理处从客户端设备接收访问服务的安全计算资源的请求,其中请求包括限定单点登录流程的声明的令牌;响应于确定请求包括由身份提供器生成的令牌和声明,使安全计算资源从令牌生成证书,其中安全计算资源被配置为向身份提供器传送证书和令牌;使身份提供器验证令牌并且向证书授权机构发送证书,以从证书生成签名证书,其中证书授权机构包括由用户提供的用于签署证书的安全数据;以及向安全计算资源发送签名证书,其中签名证书使得客户端设备能够通过连接访问安全计算资源,而不要求客户端设备重新提交用于访问安全计算资源的凭证集。
示例条款2.根据条款1的方法,其中在身份提供器处,从客户端设备接收凭证集,使凭证集登录到身份提供器,从而使令牌被生成,其中当令牌返回身份提供器时,身份提供器发起将令牌交换为证书。
示例条款3.根据条款1的方法,其中安全计算资源是远程虚拟机、虚拟机、容器或数据存储库。
示例条款4.根据条款1的方法,其中令牌被发送到向与凭证相关联的用户注册的安全计算资源。
示例条款5.根据条款1的方法,其中通过将令牌从代理传送到安全计算资源,使安全计算资源从令牌生成证书,其中令牌在安全计算资源处的接收引起证书在安全计算资源处的生成。
示例条款6.根据条款5的方法,其中证书包括来自凭证的用户名和密码,其中证书授权机构从凭证验证用户名和密码。
示例条款7.根据条款1的方法,其中基于由用户配置安全设置建立的配置文件提供的地址,将证书路由到证书授权机构,配置文件由用户配置安全设置建立。
示例条款8.根据条款1的方法,其中在签名证书使得能够访问安全计算资源之后的预定时间处删除证书和签名证书。
示例条款9.一种用于在计算系统上执行的方法,方法包括:在身份提供器处从客户端设备接收凭证集;响应于确定凭证集满足一个或多个标准,生成指示凭证集的有效性的令牌,令牌限定对与凭证集相关联的用户的单点登录流程的声明;向客户端设备传送令牌,其中客户端设备被配置为传送具有发起用于访问服务的安全计算资源的单点登录流程的请求的令牌;在代理处从客户端设备接收访问服务的安全计算资源的请求,其中请求包括限定单点登录流程的声明的令牌;响应于确定请求包括由身份提供器生成的令牌和声明,使得安全计算资源从令牌生成证书,其中安全计算资源被配置为将证书传送到代理;使代理向身份提供器传送证书,使身份提供器验证令牌,并且向证书授权机构发送证书,以从证书生成签名证书,其中证书授权机构包括由用户提供的用于签署证书的安全数据;引起签名证书向安全计算资源的传送,使安全计算资源生成参考对象,参考对象被配置为提供对安全计算资源的访问;以及引起参考对象向网关的传送,其中网关被配置为将参考对象插入到客户端设备与安全计算资源之间的连接中,使得能够访问安全计算资源,而不要求用户提供用于访问安全计算资源的凭证集,其中参考对象的插入引起参考对象向安全计算资源的传送以用于参考对象的验证。
示例条款10.根据条款9的方法,其中在身份提供器处,从客户端设备接收凭证集,使凭证集登录到身份提供器,从而使令牌被生成,其中当令牌返回身份提供器时,身份提供器发起将令牌交换为证书。
示例条款11.根据条款9的方法,其中安全计算资源是远程虚拟机、虚拟机、容器或数据存储库。
示例条款12.根据条款9的方法,其中令牌被发送到向与凭证相关联的用户注册的安全计算资源。
示例条款13.根据条款9的方法,其中通过将令牌从代理传送到安全计算资源,使安全计算资源从令牌生成证书,其中令牌在安全计算资源处的接收引起证书在安全计算资源处的生成。
示例条款14.根据条款9的方法,其中基于配置文件提供的地址,将证书路由到证书授权机构,配置文件由用户配置安全设置建立。
示例条款15.根据条款9的方法,其中在签名证书允许访问安全计算资源之后的预定时间处删除证书和签名证书。
一种其上具有编码的计算机可执行指令的计算机可读存储介质,计算机可执行指令使系统的一个或多个处理单元:在身份提供器处从客户端设备接收凭证集;响应于确定凭证集满足一个或多个标准,生成指示凭证集的有效性的令牌,令牌限定对与凭证集相关联的用户的单点登录流程的声明;向客户端设备传送令牌,其中客户端设备被配置为传送具有发起用于访问服务的安全计算资源的单点登录流程的请求的令牌;在代理处从客户端设备接收访问服务的安全计算资源的请求,其中请求包括限定单点登录流程的声明的令牌;响应于确定请求包括由身份提供器生成的令牌和声明,使安全计算资源从令牌生成证书,其中安全计算资源被配置为向身份提供器传送证书和令牌;使身份提供器验证令牌,并且向证书授权机构发送证书发送以从证书生成签名证书,其中证书授权机构包括由用户提供的用于签署证书的安全数据;以及向安全计算资源发送签名证书,其中签名证书使得客户端设备能够通过连接访问安全计算资源,而不要求用户重新提交用于访问安全计算资源的凭证集。
示例条款17.根据条款16的计算机可读存储介质,其中在身份提供器处,从客户端设备接收凭证集,使凭证集登录到身份提供器,使令牌被生成,其中当令牌返回身份提供器时,身份提供器发起将令牌交换为证书。
示例条款18.根据条款16的计算机可读存储介质,其中安全计算资源是远程虚拟机、虚拟机、容器或数据存储库。
示例条款19.根据条款16的计算机可读存储介质,其中令牌被发送到向与凭证相关联的用户注册的安全计算资源。
示例条款20.根据条款16的计算机可读存储介质,其中通过将令牌从代理传送到安全计算资源,使安全计算资源从令牌生成证书,其中令牌在安全计算资源处的接收引起证书在安全计算资源处的生成。
最后,尽管已经以特定于结构特征和/或方法动作的语言描述了各种配置,但是应当理解,在所附附图中限定的主题不一定限于所描述的特定特征或动作。相反,公开了特定特征和动作作为实现所要求保护的主题的示例形式。
Claims (15)
1.一种用于在计算系统上执行的方法,所述方法包括:
在身份提供器处从客户端设备接收凭证集;
响应于确定所述凭证集满足一个或多个标准,生成指示所述凭证集的有效性的令牌,所述令牌限定针对与所述凭证集相关联的用户的针对单点登录流程的声明;
向所述客户端设备传送所述令牌,其中所述客户端设备被配置为,传送具有发起用于访问服务的安全计算资源的所述单点登录流程的请求的所述令牌;
在代理处从所述客户端设备接收用于访问所述服务的所述安全计算资源的所述请求,其中所述请求包括限定针对所述单点登录流程的所述声明的所述令牌;
响应于确定所述请求包括由所述身份提供器生成的所述令牌和所述声明,使所述安全计算资源从所述令牌生成证书,其中所述安全计算资源被配置为向所述身份提供器传送所述证书和所述令牌;
使所述身份提供器验证所述令牌,并且向证书授权机构发送所述证书以从所述证书生成签名证书,其中所述证书授权机构包括由所述用户提供的用于签署所述证书的安全数据;以及
向所述安全计算资源发送所述签名证书,其中所述签名证书使得所述客户端设备能够通过连接访问所述安全计算资源,而不要求所述客户端设备重新提交用于访问所述安全计算资源的所述凭证集。
2.根据权利要求1所述的方法,其中在所述身份提供器处,从所述客户端设备接收所述凭证集,使所述凭证集登录到所述身份提供器,使所述令牌被生成,其中当所述令牌返回所述身份提供器时,所述身份提供器发起将所述令牌交换为所述证书。
3.根据权利要求1所述的方法,其中所述安全计算资源是远程虚拟机、虚拟机、容器或数据存储库。
4.根据权利要求1所述的方法,其中所述令牌被发送到向与所述凭证相关联的用户注册的所述安全计算资源。
5.根据权利要求1所述的方法,其中通过将所述令牌从所述代理传送到所述安全计算资源,使所述安全计算资源从所述令牌生成所述证书,其中所述令牌在所述安全计算资源处的接收引起所述证书在所述安全计算资源处的所述生成。
6.根据权利要求5所述的方法,其中所述证书包括来自所述凭证的用户名和密码,其中所述证书授权机构从所述凭证验证所述用户名和所述密码。
7.根据权利要求1所述的方法,其中基于由配置文件提供的地址,所述证书被路由到所述证书授权机构,所述配置文件由所述用户配置安全设置建立。
8.根据权利要求1所述的方法,其中在所述签名证书使得能够访问所述安全计算资源之后的预定时间处所述证书和所述签名证书被删除。
9.一种用于在计算系统上执行的方法,所述方法包括:
在身份提供器处从客户端设备接收凭证集;
响应于确定所述凭证集满足一个或多个标准,生成指示所述凭证集的有效性的令牌,所述令牌限定针对与所述凭证集相关联的用户的针对单点登录流程的声明;
向所述客户端设备传送所述令牌,其中所述客户端设备被配置为传送具有发起用于访问服务的安全计算资源的所述单点登录流程的请求的所述令牌;
在代理处从所述客户端设备接收用于访问所述服务的所述安全计算资源的所述请求,其中所述请求包括限定针对所述单点登录流程的所述声明的所述令牌;
响应于确定所述请求包括由所述身份提供器生成的所述令牌和所述声明,使所述安全计算资源从所述令牌生成证书,其中所述安全计算资源被配置为向代理传送所述证书;
使所述代理向身份提供器发送所述证书,使所述身份提供器验证所述令牌,并且向证书授权机构发送所述证书,以从所述证书生成签名证书,其中所述证书授权机构包括由所述用户提供的用于签署所述证书的安全数据;
引起所述签名证书向所述安全计算资源的传送,使所述安全计算资源生成参考对象,所述参考对象被配置为提供对所述安全计算资源的访问;以及
引起所述参考对象向网关的传送,其中所述网关被配置为,将所述参考对象插入到所述客户端设备与所述安全计算资源之间的连接中,使得能够访问所述安全计算资源,而不要求所述用户提供用于访问所述安全计算资源的所述凭证集,其中所述参考对象的插入引起所述参考对象向所述安全计算资源的传送以用于所述参考对象的验证。
10.根据权利要求9所述的方法,其中在所述身份提供器处从所述客户端设备接收所述凭证集,使所述凭证集登录到所述身份提供器,使所述令牌被生成,其中当所述令牌返回所述身份提供器时,所述身份提供器发起将所述令牌交换为所述证书。
11.根据权利要求9所述的方法,其中所述安全计算资源是远程虚拟机、虚拟机、容器或数据存储库。
12.根据权利要求9所述的方法,其中所述令牌被发送到向与所述凭证相关联的用户注册的所述安全计算资源。
13.根据权利要求9所述的方法,其中通过将所述令牌从所述代理传送到所述安全计算资源,使所述安全计算资源从所述令牌生成所述证书,其中所述令牌在所述安全计算资源处的接收引起所述证书在所述安全计算资源处的所述生成。
14.根据权利要求9所述的方法,其中基于由配置文件提供的地址,所述证书被路由到所述证书授权机构,所述配置文件由所述用户配置安全设置建立。
15.根据权利要求9所述的方法,其中在所述签名证书使得能够访问所述安全计算资源之后的预定时间处所述证书和所述签名证书被删除。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/239,354 | 2021-04-23 | ||
US17/239,354 US11983261B2 (en) | 2021-04-23 | Enhance single sign-on flow for secure computing resources | |
PCT/US2022/026038 WO2022226368A1 (en) | 2021-04-23 | 2022-04-22 | Enhance single sign-on flow for secure computing resources |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117178518A true CN117178518A (zh) | 2023-12-05 |
Family
ID=81654618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280029299.6A Pending CN117178518A (zh) | 2021-04-23 | 2022-04-22 | 针对安全计算资源增强单点登录流程 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4327515A1 (zh) |
CN (1) | CN117178518A (zh) |
WO (1) | WO2022226368A1 (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782768B2 (en) * | 2012-06-15 | 2014-07-15 | Vmware, Inc. | Systems and methods for accessing a virtual desktop |
US20180324172A1 (en) * | 2015-02-01 | 2018-11-08 | Mahesh Unnikrishnan | Single sign-on for remote applications |
-
2022
- 2022-04-22 EP EP22723864.9A patent/EP4327515A1/en active Pending
- 2022-04-22 CN CN202280029299.6A patent/CN117178518A/zh active Pending
- 2022-04-22 WO PCT/US2022/026038 patent/WO2022226368A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20220342976A1 (en) | 2022-10-27 |
WO2022226368A1 (en) | 2022-10-27 |
EP4327515A1 (en) | 2024-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112771831B (zh) | 用于反向代理解决方案中的单点登入认证的随机数处置器 | |
CN108292332B (zh) | 利用第三方数据和元数据来扩展联合图 | |
US20210120412A1 (en) | Zero-touch provisioning of internet of things devices | |
US20200287915A1 (en) | Automated generation and deployment of honey tokens in provisioned resources on a remote computer resource platform | |
US10922388B2 (en) | Session control for client-side applications in proxy solutions | |
US11956239B2 (en) | Identity misconfiguration detection for role-based access control | |
US11159568B2 (en) | Account management using account activity usage restrictions | |
WO2022146553A1 (en) | Interim connections for providing secure communication of content between devices | |
US10891385B2 (en) | Encryption at rest for cloud-resourced virtual machines | |
US20180034795A1 (en) | Simplified Configuration of Computing Devices for Use with Multiple Network Services | |
US11100243B2 (en) | Selective persistence of data utilized by software containers | |
US11539828B2 (en) | User interface process flow for posting content on a display device | |
US11983261B2 (en) | Enhance single sign-on flow for secure computing resources | |
US20220342976A1 (en) | Enhance single sign-on flow for secure computing resources | |
US20230239286A1 (en) | Dynamic attachment of secure properties to machine identity with digital certificates | |
US20230239163A1 (en) | Establishing pki chain of trust in air gapped cloud | |
US20230239164A1 (en) | Embedding intermediate certificate in digital certificate | |
US11531730B2 (en) | Manipulation of a persistent display of shared content |
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 |