CN104737175B - 计算机实施的方法及系统、计算机可读媒体 - Google Patents
计算机实施的方法及系统、计算机可读媒体 Download PDFInfo
- Publication number
- CN104737175B CN104737175B CN201380045380.4A CN201380045380A CN104737175B CN 104737175 B CN104737175 B CN 104737175B CN 201380045380 A CN201380045380 A CN 201380045380A CN 104737175 B CN104737175 B CN 104737175B
- Authority
- CN
- China
- Prior art keywords
- user
- browser
- web application
- proprietary
- application
- 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
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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
-
- 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/44—Program or device authentication
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6254—Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
向网络应用程序暴露浏览器应用程序编程界面以使用由浏览器存储的用户专有身份信息验证用户的身份。将与所述用户相关联的密码信息从所述浏览器应用程序编程界面传输到所述网络应用程序。如果所述网络应用程序使用所述密码信息经由所述浏览器应用程序编程界面验证所述用户的身份,那么通过所述网络应用程序将用户专有内容提供到所述用户。
Description
相关申请案的交叉参考
本申请案主张2012年7月20日申请的标题为“浏览器身份的方法及系统(METHODAND SYSTEM FOR BROWSER IDENTITY)”的第13/554,492号美国非临时专利申请案的优先权且为其接续案,所述申请案的揭示内容的全文以引用方式并入本文中。
技术领域
本发明大体上涉及网络浏览器技术,且特定来说涉及网络浏览器的身份机制。
背景技术
网络浏览器可保存身份并向服务器认证身份。但是,不存在用于跨不同网络应用程序提供共同身份的系统。每次用户访问不同网络应用程序、网络服务或网站时,用户可能必须分开登录。事实证明,用户很难记住不同用户名及密码且必须登录许多次。
此外,当前身份解决方案可依赖于服务器到服务器技术,而不具有来自网络浏览器的任何帮助。当前身份解决方案还可能实施起来复杂且可导致糟糕的用户体验。例如,当前解决方案可要求相对较复杂的服务器侧代码,且使认证用户界面难以获得如用户名、电子邮件、照片或用户专有头像的信息。此外,小型文本文件使用时间是短的,且退出中心帐户(例如电子邮件帐户)可能使在其它网络应用程序上的会话无效,其可证明用户的反直觉。因此,需要用于解决当前技术缺点及用于提供其它新颖的且创新的特征的系统及方法。
发明内容
根据一个一般方面,向网络应用程序暴露浏览器应用程序编程界面以使用由浏览器存储的用户专有身份信息验证用户的识别。将与用户相关联的密码信息从浏览器应用程序编程界面传输到网络应用程序。如果网络应用程序使用密码信息经由浏览器应用程序编程界面验证用户的识别,那么通过网络应用程序将用户专有内容提供到用户。
在附图及下文描述中陈述一或多个实施方案的细节。从具体实施方式、附图说明及权利要求书,其它特征将显而易见。
附图说明
图1A为实例性网络浏览器的框图。
图1B为说明实例性网络应用程序的用户界面的图。
图2为说明涉及网络应用程序的实例性通知窗口的用户界面的图。
图3为涉及网络应用程序或扩展的清单文件的实例。
图4为浏览器身份系统的实例的示意框图。
图5A为根据参考图1到4所描述的实施方案的用于利用浏览器身份的实例性过程的流程图。
图5B为浏览器与网络应用程序之间的密码信息交换的实例的框图。
图6展示可用于实施本文所描述的技术的计算机装置及移动计算机装置的实例。
各个图式中的相同参考符号标示相同元件。
具体实施方式
本文所描述的系统及方法实施涉及某个网络浏览器或担任操作系统的网络浏览器的身份以供安装的网络应用程序使用。在用户同意下,网络浏览器可生成每个(用户,起源)对的唯一加密密钥对。公用密钥可变成起源(即,网络应用程序)的用户身份。密钥对可在客户端之间同步,使得每次用户希望在不同客户端处使用不同网络应用程序时,用户无需输入新认证证书(浏览器登录可能除外)。
图1A说明可显示包含标签105、107及109的用户界面103的实例性网络浏览器应用程序101。在一个实施方案中,标签105可显示网络应用程序111、113、115及117的可选择图标。本文所描述的系统及方法可用于保存及提供可例如使用网络应用程序(例如,网络应用程序111)实施的安全浏览器用户身份,所述网络应用程序保存游戏高分且想要知道哪个用户输入高分。作为另一实例,所描述系统及方法可供购物相关网络应用程序(例如,网络应用程序113)使用,以避免每次用户使用网络应用程序113购买物品就要求用户登录网络浏览器应用程序101。作为另一实例,博客网站的运营商可使用所描述系统及方法来唯一地识别发布到博客网站的人员。博客网站拥有者无需存储用户名及密码,不喜欢这样做是因为如果博客网站受到攻击,那么用户名及密码可用于破解其它帐户,从而对博客网站拥有者造成不良影响。作为又另一实例,用户身份还可用于网站或网络应用程序115的电子邮件路由。可使用户身份在某种程度上匿名,使得如果用户想要从网站接收电子邮件但不想要网站知道用户的电子邮件地址,那么所描述系统及方法允许在网站不知道用户的实际电子邮件地址的情况下网站将电子邮件发送到用户。
除不想要受到攻击的博客网站运营商、购物网站等外,另一实例性使用案例是通常难以实施身份系统。每个网站的每位开发者必须反复这样做,且用户讨厌在每个网站上反复创建帐户。本文所描述的系统及方法为开发者及用户两者节省精力且省去麻烦。
用户可具有每个应用程序的身份,且每个网络应用程序(例如网络应用程序111、113、115及117)可具有与其相关联的自身唯一的、伪匿名身份(而非具有在服务器之间共享的用户登录所用的一个中心识别符(ID)),使得在网络应用程序之间不存在共享。因而,用户无须具有与用户名/密码组合所确定的且与多个不同应用程序相关联的相同身份。所述种用户名/密码组合身份造成问题,因为一旦一个身份受到危害,那么黑客通常可使用相同的用户名/密码组合访问许多不同的用户帐户,因为人们通常将与电子邮件相同的密码用于许多其它理财或购物网站。作为又另一实例,浏览器的自动填写能力可自动填入用户的电子邮件地址、登录名或密码,但如果具有此信息的网站中的一者受到攻击,那么黑客可能在各种网站上利用相同信息。因此,本文所描述的方法及系统对在线的用户身份及用户信息提供额外安全性。
此外,本文所描述的方法及系统为用户提供便利,同时维持在线用户身份安全。例如,用户可包含存储在客户端装置上的信息的用户专有身份高速缓冲存储器中的某些支付信息,使得如果用户选择同意使用可信的网络应用程序每月订阅在线电视观看,那么浏览器可自动授权网络应用程序(在用户同意下)经由浏览器对用户帐户收取月订阅费,而不要求用户将复杂支付信息重新输入例如到复杂信用卡授权帐户或银行路由帐户中。
由客户端装置执行的网络浏览器(例如网络浏览器应用程序101)可从远程服务器(例如,托管网站的远程服务器)接收代码(例如,HTML代码)且可为客户端装置用户在客户端装置上执行接收代码。
在各个实施方案中,网络浏览器应用程序101可包含一或多个网络应用程序(例如,网络应用程序111、113、115及117)或与其相关联。因而,“网络应用程序”可经配置用于用户的单个任务或多个任务。在此实施方案中,网络应用程序可经配置以由网络浏览器执行或解译。此等同包含机器可执行代码的本机应用程序且经配置以由处理器直接执行或经由客户端装置的操作系统执行,而网络应用程序可能无法在没有网络浏览器的协助下执行或显示。因此,网络应用程序可在具有专用用户界面的浏览器内运行,且可提供比独立网站更丰富及具交互性但没有桌面应用程序那么繁琐及麻烦的功能性及体验。网络应用程序的实例包含在浏览器内运行的游戏、照片编辑器及视频播放器。
网络应用程序可为“托管式应用程序”或“打包式应用程序”。托管式应用程序可包含自身包含网页的网站的至少一部分,还包含可尤其与网络应用程序或网络应用程序用户相关以允许网络应用程序为用户执行一些特定功能性的一些元数据。打包式应用程序可被视为其代码为捆绑式代码的网络应用程序,使得用户可下载网络应用程序的所有内容以供浏览器执行。打包式网络应用程序可无需具有对为用户执行其功能性的网络访问权,且相反可由浏览器本地地在计算装置上成功执行而无需访问网络。打包式网络应用程序可选择使用API,从而允许打包式应用程序变更浏览器运转或表现的方式。
在各个实施方案中,网络浏览器可包含一或多个浏览器扩展或经配置以与其交互。在此背景下,“浏览器扩展”可包含一起打包或分组为可定义整体的一或多个网页,且经配置以将功能扩展到网络浏览器。因此,扩展还将额外功能性提供到浏览器,但一般来说,与应用程序不同,存在很少或不存在用于由扩展提供的功能的用户界面组件。实际上,网络扩展扩展浏览器的功能性且在其中观看网站。例如,网络扩展可通过将新按钮添加到地址栏(例如始终存在的货币换算器)而扩展浏览器的功能性。此类按钮还可应用于当前观看的网站—例如,点击货币换算器按钮可将向用户呈现的网站上的所有价格换算成用户选择的货币。在另一实例中,扩展可经安装,使得在用户使光标悬浮在由浏览器执行的网页上的缩略图图像上时,显示大尺寸版本的图像,直到用户移动光标远离图像为止。在另一实例中,而且扩展可经安装以在每个网页中的每个链接附近嵌入“将此以邮件发送”按钮。与网络应用程序相比,扩展穿过网站及网络应用程序。扩展通常实际上跨越所有网页(但一些扩展是网站专有的)。网络应用程序不以此方式与其它应用程序组合。相反,网络应用程序运行独立网站,比如任何正规网站。
网络浏览器扩展及应用程序可经下载以安装于在客户端计算装置上运行的浏览器中并供其执行。网络浏览器扩展及应用程序可要求登录信息。在多个扩展或应用程序在使用中时,对于每个网络应用程序用户可在不同时间重新输入此登录信息或身份信息。与某些实施例一致的系统及方法协助将用户专有身份信息提供到所安装的网络应用程序(例如,使用加密密钥对),使得每次用户访问网络应用程序时,用户无需重新输入此信息。在与同步能力组合时,一旦网络应用程序经安装且使用密钥对进行识别,那么用户可从任何机器登录到浏览器及利用网络应用程序而无需重新输入网络应用程序的证书。
图1B为说明实例性网络应用程序的用户界面。在网络浏览器的标签102中实施网络应用程序。在图1B中所展示的实例中,用户已将网络浏览器的标签102导航到数字市场或网店。数字市场或网店可为在因特网上可通过浏览器应用程序访问的位置,用户可从其下载应用程序,例如集成为浏览器应用程序的部分的网络应用程序及浏览器扩展。
在图1B中,用户已将标签102导航到网店104且更具体来说导航到显示关于可安装地图的网络应用程序106的信息的网店的网页。在此实例性用户界面100中,浏览器应用程序在描述字段108中包含可安装网络应用程序的描述。描述字段108可提供关于特定网络应用程序的功能性及能力的信息。在一个实施方案中,将浏览器应用程序导航到市场内的特定网络应用程序可被视为请求将应用程序安装在其中正在运行浏览器应用程序的装置上的浏览器中。例如,图1B中所说明的到特定网页的用户导航可指示将地图网络应用程序106安装在其中正在运行此浏览器的装置上的浏览器应用程序中的请求。然而,在一些实施方案中,实际上可不安装网络应用程序,直到从用户接收到确认为止。
图1B还说明包含与此网络应用程序相关联的至少一个权限的通知字段110。通知字段110识别至少一个权限,其指示可供网络应用程序使用的所声明权限。在此实例中,地图网络应用程序106指示此特定应用程序可访问应用程序用户的物理位置的所声明权限。通知字段110将可在安装在浏览器应用程序中后即刻使用此应用程序的显式权限通知提供到用户。通过在安装应用程序时提供权限通知,用户可通过选择继续安装应用程序而隐式地或显式地授予此类权限批准。例如,安装按钮112的选择指示对安装网络应用程序的确认,其中所述确认包含授予权限。在选择安装按钮112之后,将网络应用程序安装在浏览器应用程序中以实现供网络应用程序使用的所授予权限。
权限可为网络应用程序或扩展应用程序期望访问用户专有身份信息(例如,姓名、电子邮件地址、照片、头像、位置、年龄、支付信息等)、装置侧信息、客户端相关信息、或服务器侧信息(例如与用户或装置相关联的信息)的声明。虽然上述实例说明单个权限,但多个权限可被声明,且被用户授予为应用程序的安装过程的部分。以此方式,网络应用程序及扩展应用程序的开发者声明所期望的权限且联合所声明权限作为网络应用程序的部分。此通知用户在受用户控制的客户端装置的浏览器应用程序中的使用中应用程序的使用时间期间可能被请求访问特定信息。
在一个示范性实施方案中,浏览器应用程序102经配置以强制执行与所述应用程序相关联的权限。以此方式,浏览器应用程序提供用于将应用程序仅约束或限制于由开发者声明且仅在安装时授予的权限。以此方式,对浏览器应用程序功能性以及客户端装置侧信息及其它信息的访问可被限于已由用户在安装时显式地批准的所声明权限。
在一个示范性实施方案中,单个所声明权限可表示一个以上权限的合计。例如,“您所在的物理位置”的所声明权限表示网络应用程序可访问涉及用户物理位置的装置侧信息,包含地理位置信息。此单个权限还可表示特定风险程度且可与其它位置相关信息捆绑在一起。以此方式,表示多种相似类型的所声明权限的单个权限可捆绑到单个群组中,使得用户无需回答干扰其正常工作流程的复杂安全问题。用户可只要作出前期信任评估,其可在稍后任何时间被撤销。例如,如果用户不再期望对应用程序授予权限,那么用户可只要卸载应用程序。其它选项可包含选择性地撤销个别权限,包含表示合计权限的权限。如果用户在不卸载应用程序的情况下撤销权限,那么应用程序的一些或所有功能性可降低。例如,如果用户撤销访问用户专有身份信息(例如头像)的应用程序权限,那么网络应用程序可不再显示用户头像。
在浏览器应用程序中操作的网页可被要求在其可执行相对较无害的任务(例如展示通知、使用剪贴板、或访问永久存储装置)之前向用户询问权限。每次网页想要执行此类任务中的一者时,其可中断并提示用户授予权限。此对用户来说可是烦人的且降低用户对每次请求访问桌面或桌面通知时遭遇的随机网页的体验。如上文所论述,浏览器应用程序中安装的网络应用程序或扩展应用程序可在安装时授予应用程序所需或所期望及所声明的所有权限。可联合应用程序及安装应用程序的用户在本地或远程地存储所授予权限。随后,因为已存储权限,所以每次用户希望开始及运行网络应用程序时,用户无需重新授予权限。
开发者可将许多不同类型的权限声明为将安装于在客户端装置上运行的浏览器内并在其内执行的应用程序的部分。例如,权限可包含访问用户书签的网络应用程序权限、访问用户网络浏览历史的网络应用程序权限、访问或确定用户地理位置的网络应用程序权限、访问浏览器的打开标签的URL或浏览器的打开标签中的信息的网络应用程序权限、使用客户端装置上的无限本地存储资源的网络应用程序权限、复制及粘贴来自客户端装置的信息的网络应用程序权限、访问执行网络应用程序的客户端装置上的本地文件的权限、确定网络应用程序的闲置时间的权限、在客户端装置上运行本机代码的网络应用程序权限、在客户端装置上运行本机代码的网络应用程序权限、访问或存储用户密码信息的网络应用程序权限、访问客户端装置的本地硬件的网络应用程序权限。硬件访问权限可包含对信息及/或装置自身的访问,包含外围访问、电源状态、电池状态、及其它相似硬件装置及相关信息访问。
所声明权限的其它实例包含快捷菜单权限、小型文本文件权限及管理权限。匹配图案指定托管权限。如果扩展应用程序或网络应用程序想要与在网页上运行的代码交互,那么可使用匹配图案。许多扩展能力(例如跨起源XML HttpRequest)以编程方式注入内容脚本,且小型文本文件API需要托管权限。
在一些实施方案中,与浏览器相关应用程序编程界面(API)介接的应用程序或扩展可使用特定API所需的权限。例如,API可要求使用对浏览器应用程序的历史的访问权。如果历史权限被声明且与应用程序相关联,那么在安装之后,网络应用程序可访问浏览器历史而无需再次请求权限且无需进一步提示用户。
如果网络应用程序或扩展应用程序使用浏览器应用程序书签及书签模块,那么可使用书签权限,其中可定位涉及浏览器应用程序的书签。如果应用程序或扩展预期使用地理位置API而不向用户提示权限,那么可使用地理位置权限。例如,地理位置权限可涉及所提议的超文本标记语言(HTML)1地理位置API。通知权限可涉及所提议的HTML5通知API而无需使用或请求例如HTML5可期望的权限。如果需要访问涉及浏览器应用程序的其它标签或窗口,那么可由应用程序或扩展使用标签权限。
无限存储网络存储权限可供网络应用程序或扩展用于提供无限配额以用于存储客户端数据,例如数据库及本地存储文件。以此方式,可由网络应用程序利用任何所需或所期望的存储空间。在未授予此权限的情况下,应用程序或扩展可限于本地存储的特定大小,例如五兆字节的本地存储。
跨起源XML HttpRequest权限可用于使网络应用程序或扩展应用程序能够请求访问其起源外的远程服务器。例如,跨起源权限值可为完全有资格的主页名称,例如“http://www.google.com/”或“http://www.gmail.com/”。在另一实例中,跨起源权限值可为匹配图案,例如“code.google.com/chrome/…/xhr.html”或“http://*.google.com/”或“http://*/”。“http://*/”的匹配图案允许对所有可到达域的HTTP访问。如果应用程序期望对给定主页或主页集的安全HTTP访问及不安全HTTP访问两者,那么可在清单文件中分开声明那些权限。
在一个示范性实施方案中,图1中所说明的用户界面100可仅为经呈现以使用户能够确认应用程序的安装且提供通知字段110中所列的权限的隐式许可的网页。在其它实施方案中,安装按钮112的选择可提示用户将复查及选择的额外确认及通知。
图2为说明涉及网络应用程序的实例性通知窗口的用户界面的图。如用户界面200中所展示,通知窗口202可提示用户确认所期望的网络应用程序的安装。在此实例中,向用户提示将地图网络应用程序106安装在浏览器应用程序102中的最后确认。通知窗口202可包含权限字段204,其列举供安装的网络应用程序使用的所请求及所期望的权限。在此实例中,通知窗口202在权限字段204中包含一个以上权限。例如,在权限字段204中列举“您所在的物理位置”权限及“身份”权限。身份权限可包含用户已将其包含在浏览器身份简档中的所有用户专有身份信息,例如(例如,姓名、照片、年龄、位置、头像、电子邮件地址、支付信息等)。然而,在一些实施方案中,可使用其它权限以使得网络应用程序对身份权限的访问仅是部分的,例如,基于访问控制列表(例如,“姓名身份”权限可用于仅对用户登录名授予访问权,“理财身份”权限可用于对用户信用卡授予访问权)。在其它实施方案中,总身份权限可用于包含用户已将其包含在浏览器简档中的任何或所有身份信息。
在一些情况下,可不同于由与需要特定访问的API相关联的名称所列而重新标记对信息的访问。例如,API可指定对地理位置权限的访问,但通知窗口可改述地理位置信息以使其更友善且更可理解并将其改述为“您所在的物理位置”以使用户明白应用程序将访问浏览器应用程序及其操作装置(可假设伴随用户)的物理位置。以此方式,在安装时向用户揭示全部内容。如果用户不期望允许对此信息的访问,那么用户可只要取消安装且对权限的访问将被网络应用程序拒绝。在一些实施方案中,用户可选择性地允许某些访问,同时拒绝其它访问。例如,用户可允许对某些用户专有身份信息(例如,姓名、电子邮件地址)的网络应用程序访问,但不允许对其它信息(年龄、位置)的网络应用程序访问。
在接收安装网络应用程序的确认之后,可将网络应用程序安装在浏览器应用程序中且可启用所声明权限。例如,在用户选择安装按钮206时,由浏览器应用程序102接收安装网络应用程序的确认,其中所述确认可包含授予权限字段204中所列的权限。权限字段204还可包含与网络应用程序相关联的元数据中包含的其它信息(例如,评价、评级、已下载应用程序的用户的数目、安全问题、警告等)。
图3为涉及网络应用程序或扩展的清单文件的实例。清单文件300可包含指定涉及应用程序的信息的一或多个字段。字段中的一者可包含权限字段302。在权限字段302中,开发者指定可供应用程序使用的所声明权限。在此实例中,所声明权限包含无限存储权限304、通知306及身份权限308。如果未声明权限,那么清单文件300可省略权限字段。在其它实例中,可在权限字段302中声明多个权限。清单文件300与应用程序相关联且为在市场中加载的指令的部分。列举所声明权限的通知窗口202及/或通知字段110可读取清单文件300及权限字段以便填入这些窗口。
网络应用程序开发者可在用户容许下利用身份权限308来访问网络应用程序的某些身份信息(例如登录用户识别符、头像,或在一些实施方案中,理财支付信息(例如信用卡卡号)或其它用户专有信息)。这样做,网络应用程序开发者可避免用户在首次或每次使用网络应用程序时就要求用户重新输入信用卡信息或登录信息。如果开发者在网络应用程序中采用身份权限308,那么例如在用户安装网络应用程序时网络浏览器可通知用户网络应用程序将可访问用户身份信息的至少一部分,例如如上文参考图1B及图2所描述。
为采用身份权限308,网络应用程序开发者可采用签名证实过程,如下文结合图5A及5B更详细描述。结合安全机制(例如如图5B中所描述的签名证实)的客户端侧API可供网络应用程序用于获得用户身份详情,如姓名、电子邮件、头像等。例如,网络应用程序可在清单文件中包含“身份”权限(如图3中所描述),且可进行JAVASCRIPT API调用以访问用户身份信息。在一些实施方案中,HTTP响应标头可能够从远程服务器发送这些用户身份详情,只要用户已向网络应用程序授予适当权限。
在一些实施方案中,用户身份信息可为与下列项相关联的数据:网络浏览器的用户帐户、电子邮件程序的用户账户、日历程序的用户帐户或可用于网络浏览器、电子邮件程序、日历程序、网络应用程序集等的单一签名系统。
在一些情况下,网络应用程序开发者可期望添加额外权限以便访问最初在安装应用程序时声明的其它装置侧信息。此可作为网络应用程序或扩展的更新的部分发生,且可通过其中从浏览器应用程序下载网络应用程序或扩展的网店来实现。
浏览器应用程序102可经配置以约束与一或多个安装的网络应用程序相关联的一或多个权限。例如,如果特定权限确实太具风险或可提供对恶意软件的访问,那么其可能更受限制且所有现有的扩展应用程序及网络应用程序可在更新浏览器时自动受限。例如,在释放之后,如果决定对特定文件的访问不可用或太危险,那么权限可变更以要求终端用户显式地作出选择以使网络应用程序或扩展应用程序能够使用所述特征。
在一个示范性实施方案中,任选权限可供开发者使用且在清单中声明。此允许开发者列举不一定是正常使用网络应用程序所要的权限集。当开发者决定可能使用这些权限中的一者时,可按需提示所述权限,接着将所述权限添加到对扩展或网络应用程序授予的权限的列表。此可导致优于所要权限中的一些的下列额外益处。例如,如果扩展想要使用仅可能用于一小组高级用户的更危险特征,那么高级用户可使权限任选,因此不迫使所有用户对所述扩展授予对用户可能不信任的潜在危险能力的访问权。任选权限还可列举在清单中且因而被标记。在安装时,任选权限可不出现在通知窗口中,因为其是任选的。在请求访问时安装应用程序之后,任选权限仅可按需请求访问。在请求访问时,给予用户授予或拒绝任选权限的选择。如果用户拒绝权限,那么所述权限可不访问所期望的装置相关信息。如果用户授予权限,那么扩展或应用程序可访问所期望的信息。如果存在一个以上版本的网络应用程序或扩展应用程序,那么开发者可使用一个版本而非其它版本中的特征。任选权限可经使用以在一个版本中包含其它版本中不包含的特征。通过将其列举为任选权限,仅可向具有所述特征的浏览器的用户呈现所述权限,因此允许开发者体验新特征而不造成问题或打断现有的用户。
在某些实施方案中,扩展可提供身份服务以使得用户专有身份信息可结合浏览器存储且接着自动提供到具有访问所述用户专有身份信息的权限的网络应用程序。以此方式,用户可对网络应用程序授予访问此用户专有身份信息的权限一次且接着在未来使用所述网络应用程序时可无需手动提供此身份信息或授权此身份信息的提供。因此,用户可存储用户专有身份信息且接着允许所述信息供已被授予访问所述信息的权限的某些网络应用程序使用,但不允许所述信息供不具有访问用户专有身份信息的显式权限的其它网站或网络应用程序使用。以此方式,用户可有利地利用网络应用程序的混合信任模型,因为用户可能不想要与其访问的任何随机网站共享用户专有身份信息,但可发现其有利于能够轻易将此信息提供到安装的网络应用程序。在某些实施方案中,用户可将此信息提供到更可信任的所有网络应用程序,因为所述网络应用程序已经由特定数字市场或网店(例如,从可信公司提供)安装,已供其它用户成功使用及评价,或网店运营商一定程度上已进行验证。
图4为浏览器身份系统的实例的示意框图。使用系统400,用户专有身份信息可联合浏览器存储且递送到具有访问身份信息的权限的选定网络应用程序,使得选定网络应用程序可向用户提供网络应用程序的用户专有体验。在各个实施方案中,系统400可包含客户端计算装置(例如,桌上型计算机、笔记本式计算机、上网本、平板计算机、智能电话等)402A、402B、402C。客户端计算装置402A可包含一或多个处理器404及一或多个存储器406。客户端计算装置402A可执行操作系统408及可显示用户界面窗口412的应用程序410。客户端计算装置402A可包含安装引擎420,其可从服务器接收在客户端装置402A上运行的网络应用程序的代码且可将所述代码安装在所述客户端装置上以使得可由所述装置执行所述应用程序。
在一个实施方案中,客户端计算装置402A可运行操作系统408或致使操作系统408执行应用程序410或窗口412。例如,出于说明目的,窗口412被称为网络浏览器。然而,应了解,上述内容仅是一个说明性实例,所揭示的标的物不限于所述实例。在各个实施方案中,此窗口412可包含多个窗格或标签414A、414B、414C。窗口412可为包含用户界面的视觉区域。在客户端装置402A中使用的图形用户界面(GUI)中,窗口412可为布置在被称为桌面的GUI平面上的二维对象。窗口412可包含其它图形对象,例如,菜单栏、工具栏、控制栏、图标及通常其中可显示文档、图像、文件夹内容或其它主要对象的工作区域。工作区域可能够仅保留一个主要对象(即,在单文档界面中)或一个以上主要对象(在多文档界面中)。在一些应用程序(具体来说是网络浏览器)中,多个文档可显示在个别标签414A、414B及414C中。这些标签414A、414B及414C可一次显示一个,且可经由通常驻留在个别窗口的内容上方的标签栏选择。即,一个选定标签414A为“前向的”且在窗口412中向用户显示信息或内容,而其它标签414B、414C的内容为“隐藏的”。
客户端计算装置402A、402B及402C可从可通过网络490连接到客户端装置402的一或多个服务器计算装置430、442、450及470接收在线内容。客户端计算装置402A、402B及402C中的每一者可通过本地因特网服务提供者492连接到网络490。所接收的在线内容可经处理并显示在窗口412中(例如,在窗口412的标签414中)。
在一些实施方案中,客户端计算装置402A、402B及402C中的一或多者可经配置以使得网络浏览器(例如应用程序410)操作为客户端装置的操作系统,且客户端计算装置可不包含其它应用程序。在此实施方案中,应用程序410可操作为网络的分页式窗口管理器或后门,而非操作为标准浏览器应用程序。分页式窗口管理器中的标签(例如,标签414A)可类似于桌面应用程序的标题栏而操作。包含标签的帧(例如窗口412)可用作用于管理应用程序群组的便利机制。在一些实施方案中,可存在不托管浏览器工具栏的其它标签类型。分页式窗口管理器用户界面可通过将网络应用程序及标准网页组合成最小标签带而使用尽可能少的屏幕空间。虽然现有的操作系统可在两个单独带中具有网络标签及本机应用程序,但分页式窗口管理器可组合这些网络标签及本机应用程序,从而给予对来自一带的每样事物的访问权。
客户端计算装置402A可与将网络应用程序及扩展的市场提供到客户端计算装置402A、402B、402C的网络应用程序及扩展市场服务器450通信。市场服务器450可包含一或多个处理器452及一或多个存储器454。市场服务器450可执行操作系统456以及各种应用程序及服务以对客户端计算装置提供功能性。例如,在一个实施方案中,市场服务器450可包含网络应用程序及扩展458的数据库的储存库,且网络应用程序及扩展可从储存库供应或下载到客户端计算装置。在另一实施方案中,网络应用程序及扩展可存储在经定位成远离市场服务器的储存库中且从所述储存库供应到客户端计算装置。例如,网络应用程序及扩展可从由网络应用程序及扩展的开发者操作及控制的个别储存库存储并供应到客户端计算装置,且市场服务器450的网络应用程序及扩展储存库458可仅提供对由开发者操作的个别储存库的参考。
在从市场服务器450下载网络应用程序或扩展(例如,可离线运行(即,在本地、在使用客户端装置402A的情况下、在不访问网络490的情况下)的打包式网络应用程序)时,客户端装置402A、安装器引擎420可接收所下载的网络应用程序或扩展并安装其以在客户端装置上执行。例如,安装器引擎420可使用浏览器扩展应用程序编程界面(API)以集成网络应用程序与浏览器,使得可在浏览器应用程序410内无缝地启动网络应用程序。可在线运行的托管式网络应用程序(例如,可由执行应用程序及通过网络490将内容供应到客户端装置402A以向用户呈现的在线服务器托管)还可通过对客户端装置上的本地资源授予托管式网络应用程序的增加的权限而与浏览器安装在一起。例如,安装托管式应用程序可包含对客户端装置402A上的无限本地存储或访问存储在客户端装置402A上的用户浏览历史、书签等授予托管式应用程序权限。此类权限可存储为托管式网络应用程序的安装过程的部分,使得每次使用托管式网络应用程序时用户无需重新授予这些权限。
系统400可包含开发者客户端442,开发者可使用其开发应用程序或扩展或其它网络应用程序及扩展以对市场服务器450进行更新以便在市场服务器中呈现。开发者客户端442可包含一或多个处理器443、用于存储数据(例如可执行指令及/或内容)的一或多个存储器445、操作系统444及可由开发者执行以执行各种任务(例如开发网络应用程序及扩展以在市场中呈现、从市场服务器450接收支付等)的一或多个应用程序446等。
如图4中所展示,系统400可包含可存储及维持用户专有信息的一或多个服务器430。服务器430可包含向用户提供各种服务及/或功能性的一或多个处理器432、一或多个存储器434、操作系统436及一或多个应用程序438。在一个实施方案中,应用程序438可提供例如电子邮件服务、日历服务、博客托管服务、在线支付服务、内容存储及管理服务(例如,用于存储及管理文档、照片等)的服务。用户可通过登录到与服务相关联的单个帐户而访问这些各种服务。例如,用户可通过登录到单个帐户而访问多个应用程序的功能性。
在一些实施方案中,用户可通过登录到与不同服务相关联的多个不同帐户而访问各种服务。例如,用户可登录到与下列帐户相关联的帐户:用户的在线电子邮件帐户(例如,Microsoft Hotmail、Yahoo mail、Google Gmail等)、用户的在线社交网络帐户(例如,Facebook、twitter等)、用户的在线照片帐户(例如,Snapfish、Shutterfly、Picasa等)、内容网站(例如,新闻网站、游戏网站、娱乐网站等)的帐户等。同步服务器470可确保来自计算装置(例如,装置402A、402B或402C)的本地数据跨所有用户装置或用于使用户登录到用户帐户的所有装置同步。此外,密码通常存储在本地,但可跨使用同步服务器470的装置同步。此外,同步服务器470可跨不同装置、所有安装的网络应用程序、浏览器扩展、浏览器书签、设置、简档、浏览器历史、主题、插件、本地权限、用户专有身份信息(如下文参考高速缓冲存储器418更详细描述)及与网络应用程序及浏览器扩展相关联的用户数据同步。例如,如果计算装置402A的用户从计算装置402B访问用户帐户(例如,经由网络浏览器),那么同步服务器470可将与(例如,用户选择同步的)网络应用程序及浏览器扩展相关联的设置及数据从用户帐户复制到计算装置402B。对一个计算装置上的设置的变更可从其它计算机(例如,如果用户已启用同步特征)自动复制(例如,经由同步服务器470)。同步数据可在其于计算装置402A、402B与同步服务器470之间行进时进行加密以保持信息安全及确保用户隐私。此外,在计算装置402A、402B及同步服务器470上可使用加密密钥对密码进行加密。
客户端计算装置402A还可在高速缓冲存储器418中包含用户专有身份信息的高速缓冲存储。用户专有身份信息可包含与浏览器应用程序210的用户相关联的信息,例如,用户名、用户的电子邮件地址、头像、用户使用的在线别名、用户的年龄或出生日期、用户的邮寄地址、用户的住址、用户的收货地址、用户的电话号码、与用户相关联的信用卡信息、用户的朋友或联系人、用户浏览的网站历史、用户进行的购物及/或下载(例如,在数字市场中可用的网络应用程序及/或扩展)等。存储在高速缓冲存储器418中的用户专有身份信息可供用户选择性地进行存储,且用户可控制存储在高速缓冲存储器418中的特定信息。
存储在高速缓冲存储器418中的用户专有身份信息可供浏览器410访问,且在用户授权时浏览器可将所述信息提供到在所述浏览器中运行的一或多个网络应用程序。用户专有身份信息可仅在用户将登录信息成功提供到浏览器410时可供所述浏览器访问。例如,用户可被要求将用户名及密码输入到由浏览器提供的用户界面以便浏览器访问他或她的身份信息。
高速缓冲存储器418可为在浏览器会话期间存储用户专有身份信息的易失性存储器。身份信息可按安全方式永久存储在非易失性存储器内且接着在用户成功登录到浏览器时加载到高速缓冲存储器418中。
在另一实施方案中,用户专有身份信息可永久存储在在线服务器430的存储器装置(例如,存储器434)中。接着,在用户登录到与由在线服务器430提供的服务相关联的帐户时,用户专有身份信息可在用户容许下从在线服务器430下载到客户端装置402A的高速缓冲存储器418,以供浏览器410使用。身份信息可使用安全加密技术进行下载以在下载时保护所述信息。
浏览器410可与不同用户的用户专有身份信息相关联或可与单个用户的不同身份信息相关联。例如,不同用户可通过由浏览器提供的用户界面而提供登录信息,使得浏览器可检索及高速缓冲不同用户的不同用户专有身份信息。在另一实施方案中,单个用户可维持具有不同身份信息的不同身份简档,其中的每个身份信息与不同浏览器登录帐户相关。或者或此外,相同客户端装置的各种用户(例如,使用相同桌上型计算机的夫妻)可创建及维持具有不同身份信息的不同身份简档,其中的每个身份信息与不同浏览器登录帐户相关联。
用户下载并安装在客户端装置402A内的网络应用程序可包含允许网络应用程序从执行所述应用程序的浏览器接收用户专有身份信息的权限。此权限可在本文中被称为“身份权限”。因此,在用户下载并安装包含身份权限的网络应用程序时,用户可授权网络应用程序从浏览器接收用户专有身份信息。由浏览器提供到网络应用程序的特定身份信息可取决于网络应用程序及身份权限的性质。在一个实施方案中,可存在从客户端浏览器410抽拉标准用户专有身份信息的集合(例如,姓名及电子邮件地址)的单个身份权限。在另一实施方案中,可指定不同级别的身份权限,其中不同级别对应于应从浏览器抽拉到网络应用程序的不同种类或数量的身份信息。例如,“购物”身份权限可请求访问例如用户名、信用卡信息、账单地址、邮寄地址等的身份信息。在另一实例中,“用户兴趣”身份权限可请求访问例如用户浏览历史、网络应用程序购买历史、内容文件(例如,公共博客发帖)等的身份信息。在另一实例中,“社交”身份权限可请求访问例如用户的社交网络朋友的姓名、用户联系人、用户日历信息等的身份信息。在另一实例中,“基本”身份信息可请求仅访问例如用户电子邮件地址的基本身份信息。
作为网络应用程序的安装过程的部分,可请求用户授权身份权限。网络应用程序可请求特定用户专有身份信息作为身份权限的部分,或如上文所描述,可被称为由一或多个通用标记符标记的所请求特定信息,举例来说,例如“购物信息”、“用户兴趣信息”、“社交信息”或“基本信息”。在用户授予权限作为安装过程的部分之后,网络应用程序可接着继续被授予访问此信息的权限,除非用户撤销此权限或直到用户撤销此权限为止。接着,每次在用户登录到浏览器410时在浏览器应用程序410内启动网络应用程序时,可由浏览器向网络应用程序自动提供用户专有身份信息,而用户除启动网络应用程序外无须采取任何步骤来提供此信息。以此方式,用户可容易允许特定的选定网络应用程序访问并利用用户身份信息而不允许其它网络应用程序或网站访问用户身份信息。
网络应用程序可按各种方式使用用户专有身份信息。例如,网络应用程序可通过网络应用程序将用户专有内容提供到用户,其中用户专有内容是基于由浏览器提供到网络应用程序的用户专有身份信息。用户专有内容可为基于用户兴趣、人口统计数据、位置或其它此类用户专有身份信息具体选择的内容。
在特定实例中,用户可下载并安装Marvel Comics的网络应用程序,使得用户可访问并读取由Marvel Comics提供的内容。作为网络应用程序的安装的部分,可请求与用户相关联的身份信息。例如,网络应用程序可请求知晓用户的电子邮件地址及浏览历史。在授予此权限并启动网络应用程序之后,网络应用程序可利用所述身份信息将用户专有内容提供到用户。
例如,网络应用程序可比较用户的电子邮件地址与同Marvel Comics相关联的其它数据库中所列的电子邮件地址,其可指示用户先前已向Marvel Comics(例如,在与域名www.marvel.com相关联的网站)注册帐户及用户先前已从Marvel Comics浏览、查看、下载、或购买某些内容。接着,网络应用程序可通过先前已从Marvel Comics浏览、查看、下载、或购买所述内容的相同电子邮件地址使网络应用程序的用户与用户的简档自动相关联,且因此可基于用户与同Marvel Comics相关联的其它特性的先前交互而通过网络应用程序向用户推荐或提供内容。在另一实施方案中,网络应用程序可以检索并解析用户浏览历史以确定用户兴趣,且接着可基于用户确定的兴趣提供或推荐通过网络应用程序可得到的内容。例如,所推荐的内容可包含用户的浏览历史指示对浪漫主题感兴趣的浪漫喜剧,且所推荐的内容可包含用户的浏览历史指示对冒险主题感兴趣的冒险喜剧。
浏览器410可被多个用户共享,且每个用户可具有不同的用户专有身份信息。因此,在不同用户登录到浏览器410并在所述浏览器内启动Marvel Comics网络应用程序时,所述应用程序可基于由网络应用程序从不同用户中的每一者的浏览器抽拉的身份信息将不同用户专有内容提供到不同用户中的每一者。网络应用程序可例如通过对浏览器进行API调用而抽拉用户专有身份信息,以从高速缓冲存储器418抽拉内容。
对安装在浏览器内的网络应用程序授予身份权限可在将多个网络应用程序安装在用户浏览器中时向用户提供更佳的用户体验。如下文参考图5A及5B更详细描述,在安装每个网络应用程序期间,用户可授权网络应用程序对指定的用户专有身份信息的使用,且随着启动并使用不同网络应用程序,可由每个网络应用程序从浏览器自动抽拉相关身份信息,而用户除启动网络应用程序外无须采取任何额外步骤(例如,登录、输入密码等)。
可选择性地提供由在客户端装置上运行的应用程序410提供到市场服务器450的信息(例如,关于用户浏览历史等)。换句话来说,此信息可从客户端计算装置402A提供到服务器450,只要所述客户端装置的用户对此信息从所述客户端到所述服务器的传输特定授权即可。
图5A说明根据上文参考图1到4所描述的实施方案的用于利用浏览器身份的实例性过程500的流程图。过程500可在用户将网络应用程序安装在浏览器(例如如图4中所展示的浏览器410)中时开始(502)。在一些实施方案中,在502之前,网络应用程序可声明其需要身份信息。
浏览器通知用户网络应用程序可例如使用通知窗口(例如图2中所展示的通知窗口202)访问用户身份或身份信息(504)。在用户启动网络应用程序(506)时,浏览器确定其是否具有网络应用程序的密钥(508)。如果是(508,是),那么过程继续到512。如果否(508,否),那么浏览器可生成网络应用程序的新密钥对(510)。浏览器可例如使用非对称密钥算法技术来创建公用加密密钥及私用加密密钥而生成密钥对(例如,公用密钥及私用密钥)。浏览器可在浏览器内生成密钥对并存储与浏览器相关联的私用密钥,使得网络应用程序、网站或其它应用程序不可访问私用密钥。
浏览器可将公用密钥与由私用密钥提供的签名(例如“X-Chrome-User:<pubkey>:<signature(cookies)>”)发送到网络应用程序,且网络应用程序确定其是否辨识公用密钥(512)。如果网络应用程序辨识公用密钥(512,是),那么网络应用程序使用公用密钥验证签名(514)。
此签名证实过程可供开发者用于合并到网络应用程序中。此外,开发者无需为用户认证创建额外提示。
如果网络应用程序未辨识公用密钥(512,否),那么网络应用程序可例如使用自动提示(例如弹出窗口)创建新用户帐户(516)。接着,网络应用程序可认证用户(518),且过程可结束。在一些实施方案中,例如在518之后,网络应用程序可请求并显示额外身份信息,例如姓名、照片等。
在过程500允许网络应用程序经由浏览器身份认证用户之后,网络应用程序可例如通过询问客户端侧浏览器API的对象而显示详情,如姓名、头像、照片、电子邮件地址、或其它用户专有身份信息。在一些实施方案中,网络应用程序可通过将时间戳记包含在小型文本文件中而防止受到重放攻击。浏览器还可控制认证用户界面,以便改进用户体验。
私用密钥不会泄漏,因为其从不离开浏览器,因此对在线用户身份提供安全性。此外,本文所描述的方法及系统也针对离线网络应用程序良好地工作。
图5B为浏览器与网络应用程序之间的加密信息交换的实例的框图。图5B包含浏览器520,其包含加密密钥生成器521、浏览器API 530、及网络应用程序540及550。加密密钥生成器521可生成与浏览器520的特定用户相关联的密钥对522,包含公用密钥524及私用密钥526。多个用户可与浏览器520相关联,但通常每次仅一个用户可登录到浏览器520。私用密钥526从不离开浏览器520且不提供到网络应用程序540或550或其它网站,因此对在线用户身份提供安全性。然而,使用用户公用密钥524进行加密的消息可在用户同意下提供到网络应用程序540及550或其它网站,因此不需要每次用户希望使用浏览器520访问不同网络应用程序时用户都要重新输入个人身份信息(例如,姓名、登录名、或甚至理财信息)。
浏览器520还可存储与特定网站或网络应用程序相关联的至少一个公用密钥528。例如,公用密钥528可为安装在浏览器520中的网络应用程序540的公用密钥。
如果网站或网络应用程序540想要验证特定用户的身份,那么网络应用程序540可例如使用API 530挑战浏览器520以验证用户身份。例如,网络应用程序540可使用先前已由浏览器520提供的用户公用密钥,以对特定消息进行加密,例如文本532。网络应用程序540可挑战浏览器520以对消息进行解密以便找到文本532。如果浏览器520可在对消息进行解密后找到文本532(例如,使用私用密钥526),那么浏览器520可向网络应用程序540证明所述浏览器具有特定用户的私用密钥526。网络应用程序540与浏览器520之间的通信可通过浏览器API 530或通过其它技术来完成。
图6展示可结合本文所描述的技术使用的通用计算机装置600及通用移动计算机装置650的实例。计算装置600希望表示各种形式的数字计算机,例如膝上型计算机、桌上型计算机、工作站、个人数字助理、服务器、刀片式服务器、主机及其它适当计算机。计算装置650希望表示各种形式的移动装置,例如个人数字助理、蜂窝电话、智能电话及其它相似计算装置。本文所展示的组件、其连接及关系及其功能打算仅是示范性的,且不打算限制本文献中所描述及/或所主张的发明的实施方案。
计算装置600包含处理器602、存储器604、存储装置606、连接到存储器604及高速扩展端口610的高速接口608,及连接到低速总线614及存储装置606的低速接口612。组件602、604、606、608、610及612中的每一者使用各种总线互连,且可在适当时安装在共同母板上或以其它方式安装。处理器602可处理用于在计算装置600内执行的指令,包含存储在存储器604中或存储在存储装置606上以显示外部输入/输出装置(例如耦合到高速接口608的显示器616)上的GUI的图形信息的指令。在其它实施方案中,可在适当时使用多个处理器及/或多个总线连同多个存储器及多种类型的存储器。此外,多个计算装置600可与提供必需操作的部分的每个装置连接(例如,作为服务器组、刀片式服务器群组或多处理器系统)。
存储器604将信息存储在计算装置600内。在一个实施方案中,存储器604为易失性存储器单元。在另一实施方案中,存储器604为非易失性存储器单元。存储器604还可为另一形式的计算机可读媒体,例如磁盘或光盘。
存储装置606能够为计算装置600提供大量存储。在一个实施方案中,存储装置606可为或包含计算机可读媒体,例如软盘装置、硬盘装置、光盘装置或磁带装置、快闪存储器或其它相似固态存储器装置、或装置阵列,包含存储区域网络或其它配置中的装置。计算机程序产品可在信息载体中有形地体现。计算机程序产品还可包含在被执行时执行例如上文所描述的一或多种方法的指令。信息载体为计算机或机器可读媒体,例如存储器604、存储装置606或处理器602上的存储器。
高速控制器608管理计算装置600的带宽密集型操作,而低速控制器612管理较低带宽密集型操作。此功能分配仅是示范性的。在一个实施方案中,高速控制器608耦合到存储器604、显示器616(例如,通过图形处理器或加速器)及高速扩展端口610,其可接受各种扩展卡(未展示)。在所述实施方案中,低速控制器612耦合到存储装置606及低速扩展端口614。可包含各种通信端口(例如,USB、蓝芽、以太网、无线以太网)的低速扩展端口可例如通过网络适配器耦合到一或多个输入/输出装置,例如键盘、指向装置、扫描仪或联网装置,例如交换机或路由器。
计算装置600可按如图中所展示的多种不同形式实施。例如,其可实施为标准服务器620或可按此类服务器群组形式实施多倍。其还可实施为机架服务器系统624的部分。此外,其可按个人计算机(例如膝上型计算机622)形式实施。或者,来自计算装置600的组件可与移动装置(未展示)(例如装置650)中的其它组件组合。此类装置中的每一者可包含计算装置600、650中的一或多者,且整个系统可由与彼此通信的多个计算装置600、650构成。
计算装置650包含处理器652、存储器664、输入/输出装置(例如显示器654)、通信接口666及收发器668、及其他组件。装置650还可具备存储装置(例如微硬盘机或其它装置)以提供额外存储。组件650、652、664、654、666及668中的每一者使用各种总线互连,且组件中的多者可在适当时安装在共同母板上或可按任何方式安装。
处理器652可执行计算装置650内的指令,包含存储在存储器664中的指令。处理器可实施为芯片的芯片组,其包含单独的多个模拟和数字处理器。处理器可例如协调装置650的其它组件,例如控制用户界面、由装置650运行的应用程序及由装置650进行的无线通信。
处理器652可通过耦合到显示器654的控制接口658及显示接口656与用户通信。显示器654可为例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器、或其它适当显示技术。显示接口656可包括用于驱动显示器654以向用户呈现图形及其它信息的适当电路。控制接口658可从用户接收命令并转换其以提交到处理器652。此外,可提供外部接口662以与处理器652通信,以便使装置650能够与其它装置近区域通信。外部接口662可在一些实施方案中提供有线通信,或在其它实施方案中提供无线通信,且还可使用多个接口。
存储器664可将信息存储在计算装置650内。存储器664可实施为计算机可读媒体、易失性存储器单元或非易失性存储器单元中的一或多者。扩展存储器674还可经提供并通过扩展接口672(可包含例如SIMM(单列直插存储器模块)卡接口)连接到装置650。此扩展存储器674可为装置650提供额外存储空间,或还可为装置650存储应用程序或其它信息。具体来说,扩展存储器674可包含用于实行或补充上文所描述的过程的指令,且还可包含安全信息。因此,例如,扩展存储器674可提供为装置650的安全模块,且可编程有容许安全使用装置650的指令。此外,可经由SIMM卡提供安全应用程序连同额外信息,例如以不受攻击方式将识别信息放置在SIMM卡上。
存储器可包含例如快闪存储器及/或NVRAM存储器,如上文所论述。在一个实施方案中,计算机程序产品是在信息载体中有形地体现。计算机程序产品包含在被执行时执行例如上文所描述的一种或多种方法的指令。信息载体为计算机或机器可读媒体,例如可例如经由收发器668或外部接口662接收的存储器664、扩展存储器674或处理器652上的存储器。
装置650必要时可通过可包含数字信号处理电路的通信接口666无线通信。通信接口666可在各种模式或协议(例如尤其是GSM语音呼叫、SMS、EMS、或MMS消息接发、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS)下提供通信。此通信可例如通过射频收发器668发生。此外,短距离通信可例如使用蓝牙、WiFi或其它此类收发器(未展示)发生。此外,GPS(全球定位系统)接收器模块670可将可在适当时供在装置650上运行的应用程序使用的额外导航及位置相关无线数据提供到装置650。
装置650还可使用音频编解码器660进行音频通信,其可从用户接收口头信息并将其转换成可用数字信息。音频编解码器660同样可例如在装置650的手持机中例如通过扬声器为用户生成可听声音。此声音可包含来自语言电话呼叫的声音,可包含所记录声音(例如,语音消息、音乐文件等),且还可包含由在装置650上操作的应用程序生成的声音。
计算装置650可按多种不同方式实施,如图中所展示。例如,其可实施为蜂窝电话680。其还可实施为智能电话682、个人数字助理或其它相似移动装置的部分。
本文所描述的系统及技术的各种实施方案可在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件及/或其组合中实现。这些各种实施方案可包含呈可在包含至少一个可编程处理器的可编程系统(其可为专用或通用,经耦合以从存储系统、至少一个输入装置及至少一个输出装置接收数据及指令,以及将数据及指令传输到存储系统、至少一个输入装置及至少一个输出装置)上执行及/或解译的一或多个计算机程序的形式的实施方案。
这些计算机程序(还被称为程序、软件、软件应用程序或代码)包含用于可编程处理器的机器指令,可按高级程序及/或面向对象编程语言、及/或按汇编/机器语言实施。如本文中所使用,术语“机器可读媒体”、“计算机可读媒体”指代用于将机器指令及/或数据提供到可编程处理器(包含接收机器指令作为机器可读信号的机器可读媒体)的任何计算机程序产品、设备及/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD))。术语“机器可读信号”指代用于将机器指令及/或数据提供到可编程处理器的任何信号。
为与用户交互,本文所描述的系统及技术可在具有用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及键盘及指向装置(例如,鼠标或轨迹球)的计算机上实施,用户可通过上述装置将输入提供到计算机。其它种类的装置也可用于与用户交互;例如,提供到用户的反馈可为任何形式的感测反馈(例如,视觉反馈、听觉反馈、或触觉反馈);且来自用户的输入可按任何形式接收,包含声学、语音或触觉输入。
本文所描述的系统及技术可在包含下列组件的计算系统中实施:后端组件(例如,如数据服务器)或中间件组件(例如,应用程序服务器)或前端组件(例如,具有图形用户界面或网络浏览器的客户端计算机,用户可通过其与本文所描述的系统及技术的实施方案交互)、或此类后端组件、中间件组件或前端组件的任何组合。系统组件可通过数字数据通信的任何形式或媒体(例如,通信网络)互连。通信网络的实例包含局域网(“LAN”)、广域网(“WAN”)及因特网。
计算系统可包含客户端及服务器。客户端及服务器通常彼此远离且通过通信网络交互。客户端及服务器的关系是由于在相应计算机上运行且彼此具有客户端-服务器关系的计算机程序而出现。
已描述多个实施例。然而,将了解,在不背离本发明的精神及范围的情况下可作出各种修改。
此外,图中所描绘的逻辑流程不要求所展示特定次序或连续次序来实现所期望结果。此外,可提供其它步骤,或可从所描述流程除去步骤,且其它组件可添加到所描述系统或从所描述系统移除。因此,其它实施例在所附权利要求书的范围内。
Claims (17)
1.一种计算机实施的方法,其包括:
在客户端装置执行浏览器;
在浏览器从用户接收浏览器登录信息;
响应于接收到所述浏览器登录信息,将所述用户登录到与所述客户端装置上执行的浏览器相关联的浏览器登录账户;
响应于将所述用户登录到所述浏览器登录账户,从服务器接收代表所述用户的用户专有身份信息;
通过浏览器在客户端装置上存储用户专有身份信息;
安装网络应用程序用于由所述浏览器执行,其中所述网络应用程序的安装包括向所述网络应用程序授权以访问向所述浏览器提供的并存储在客户端装置上的所述用户专有身份信息;
在浏览器内向浏览器中执行的所述网络应用程序暴露浏览器应用程序编程界面;
在浏览器内将与所述用户相关联的加密信息经由所述浏览器应用程序编程界面传输到所述网络应用程序,所述网络应用程序基于加密信息验证所述用户的身份;及
在所述网络应用程序根据经由所述浏览器应用程序编程界面提供的加密信息验证所述用户的身份之后,基于提供给浏览器并存储在客户端装置上的用户专有身份信息,通过所述网络应用程序将用户专有内容提供到所述用户。
2.根据权利要求1所述的方法,其中所述加密信息包含与所述用户相关联的唯一消息及公用密钥。
3.根据权利要求2所述的方法,其中所述唯一消息不与由所述浏览器执行的其它网络应用程序共享。
4.根据权利要求1所述的方法,其中所述用户专有身份信息包含用户名及电子邮件地址。
5.根据权利要求1所述的方法,其中所述服务器存储所述用户专有身份信息并且远离执行所述浏览器的所述客户端装置,且其中在所述用户登录到帐户后即刻将所述用户专有身份信息提供到所述浏览器。
6.根据权利要求1所述的方法,其进一步包括:
将包含用户名的所述用户的登录信息从第一客户端装置提供到与所述用户相关联的在线帐户;
使所述用户对所述网络应用程序的安装与所述在线帐户相关联;
将包含所述用户名的所述用户的登录信息从受所述用户控制的第二客户端装置提供到与所述用户相关联的所述在线帐户;
在提供所述登录信息后即刻将所述网络应用程序自动安装于在所述第二客户端装置上执行的浏览器内,其中安装所述网络应用程序包含向所述网络应用程序授予访问所述用户专有身份信息的权限,其中由在所述第二客户端装置上执行的所述浏览器在所述第二客户端装置上存储所述用户专有身份信息;
于在所述第二客户端装置上执行的所述浏览器中启动所述网络应用程序;
基于所述用户启动所述网络应用程序,将所述用户专有身份信息的至少一部分从在所述第二客户端装置上执行的所述浏览器自动提供到所述网络应用程序;及
通过在所述第二客户端装置上执行的所述浏览器中启动的所述网络应用程序将用户专有内容提供到所述用户,其中所述用户专有内容是基于提供到所述网络应用程序的所述用户专有身份信息的所述部分。
7.根据权利要求1所述的方法,其进一步包括:
在所述用户批准之后,在所述浏览器内,即刻经由从所述网络应用程序到所述浏览器的应用程序编程界面调用从所述网络应用程序接收对所存储的用户专有身份信息的请求。
8.根据权利要求1所述的方法,其中所述网络应用程序包含清单文件及网站的至少一部分。
9.根据权利要求8所述的方法,其中所述网络应用程序被打包为可安装实体。
10.根据权利要求9所述的方法,其中所述网络应用程序是自含式应用程序且离线操作。
11.根据权利要求1所述的方法,其中在使用所述浏览器时,所述加密信息在所述用户退出另一网络应用程序或另一网站之后仍存留在所述浏览器内。
12.根据权利要求1所述的方法,其进一步包括:
在将所述网络应用程序安装在所述浏览器内之后即刻自动提供弹出窗口以通知所述用户所述网络应用程序将具有对所述用户专有身份信息的至少一部分的访问权。
13.根据权利要求1所述的方法,其中所述用户专有身份信息包含帐户信息。
14.根据权利要求13所述的方法,其中所述帐户信息包含多个信用卡的私用识别符。
15.根据权利要求1所述的方法,其中所述浏览器作为所述客户端装置的操作系统操作。
16.一种含有可由计算装置的处理器执行的指令的非暂时性计算机可读媒体,所述指令在由所述处理器执行时致使所述计算装置:
在客户端装置执行浏览器;
在浏览器从用户接收浏览器登录信息;
响应于接收到所述浏览器登录信息,将所述用户登录到与所述客户端装置上执行的浏览器相关联的浏览器登录账户;
响应于将所述用户登录到所述浏览器登录账户,从不同于所述计算装置的计算机接收代表所述用户的用户专有身份信息;
通过浏览器在客户端装置上存储用户专有身份信息;
安装网络应用程序用于由所述浏览器执行,其中所述网络应用程序的安装包括向所述网络应用程序授权以访问向所述浏览器提供的并存储在客户端装置上的所述用户专有身份信息;
在浏览器内向浏览器中执行的所述网络应用程序暴露浏览器应用程序编程界面;
在浏览器内将与所述用户相关联的加密信息经由所述浏览器应用程序编程界面传输到所述网络应用程序,所述网络应用程序基于加密信息验证所述用户的身份;及
在所述网络应用程序根据经由所述浏览器应用程序编程界面提供的加密信息验证所述用户的身份之后,基于提供给浏览器并存储在客户端装置上的用户专有身份信息,通过所述网络应用程序将用户专有内容提供到所述用户。
17.一种计算机实施的系统,其包含:
存储器;及
处理器,其可操作地耦合到所述存储器且经配置以执行代码以:
执行浏览器;
在所述浏览器上从用户接收浏览器登录信息;
响应于接收到所述浏览器登录信息,将所述用户登录到与所述浏览器相关联的浏览器登录账户;
响应于将所述用户登录到所述浏览器登录账户,从不同于所述系统的计算机接收代表所述用户的用户专有身份信息;
通过所述系统上的浏览器存储用户专有身份信息;
在浏览器内安装网络应用程序,其中所述安装包括向所述网络应用程序授权以访问向所述浏览器提供的并存储在所述系统上的所述用户专有身份信息;
在所述浏览器内向所述浏览器中执行的所述网络应用程序暴露浏览器应用程序编程界面;
在所述浏览器内将与所述用户相关联的加密信息经由所述浏览器应用程序编程界面传输到所述网络应用程序,所述网络应用程序基于加密信息验证所述用户的身份;及
在所述网络应用程序根据经由所述浏览器应用程序编程界面提供的加密信息验证所述用户的身份之后,基于提供给浏览器并存储在所述系统上的用户专有身份信息,通过所述网络应用程序将用户专有内容提供到所述用户。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/554,492 | 2012-07-20 | ||
US13/554,492 US9887965B2 (en) | 2012-07-20 | 2012-07-20 | Method and system for browser identity |
PCT/US2013/044012 WO2014014565A1 (en) | 2012-07-20 | 2013-06-04 | Method and system for browser identity |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104737175A CN104737175A (zh) | 2015-06-24 |
CN104737175B true CN104737175B (zh) | 2018-09-25 |
Family
ID=48670801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380045380.4A Active CN104737175B (zh) | 2012-07-20 | 2013-06-04 | 计算机实施的方法及系统、计算机可读媒体 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9887965B2 (zh) |
EP (1) | EP2875463B1 (zh) |
CN (1) | CN104737175B (zh) |
DE (1) | DE202013012485U1 (zh) |
WO (1) | WO2014014565A1 (zh) |
Families Citing this family (145)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841154B (zh) * | 2012-11-26 | 2019-03-01 | 腾讯科技(北京)有限公司 | 网络媒介信息发布方法、系统和客户端 |
US20140196129A1 (en) * | 2013-01-07 | 2014-07-10 | Prium Inc. | User credential management system and method thereof |
US9491205B2 (en) * | 2013-03-15 | 2016-11-08 | Sorenson Communications, Inc. | Communication systems and related methods for communicating with devices having a plurality of unique identifiers |
US9311054B2 (en) * | 2013-08-30 | 2016-04-12 | Sap Se | Method and system for specifying and enforcing extensibility of software applications |
CN104092715B (zh) * | 2013-11-28 | 2016-10-19 | 腾讯科技(深圳)有限公司 | 一种同步应用程序的方法、服务器及系统 |
KR20150071252A (ko) * | 2013-12-18 | 2015-06-26 | 삼성전자주식회사 | 전자장치에서 화면 구성 제어를 위한 방법 및 장치 |
US9471684B2 (en) * | 2013-12-18 | 2016-10-18 | Verizon Patent And Licensing Inc. | Provision of embedded code for content provider web sites and applications |
US20160380992A1 (en) * | 2014-02-11 | 2016-12-29 | Google Inc. | Authentication specific data |
US9817646B1 (en) * | 2014-03-17 | 2017-11-14 | Google Llc | Multiplatform and multichannel distribution of web applications across devices |
WO2015180749A1 (en) * | 2014-05-26 | 2015-12-03 | Telecom Italia S.P.A. | System for managing personal data |
JP6344994B2 (ja) * | 2014-06-18 | 2018-06-20 | キヤノン株式会社 | 情報処理端末、制御方法及びプログラム |
US9658996B2 (en) * | 2014-09-10 | 2017-05-23 | Microsoft Technology Licensing, Llc | Mapping account information to server authentication |
CN104503752A (zh) * | 2014-12-17 | 2015-04-08 | 青岛海信电器股份有限公司 | 一种智能设备中控制网页调用系统功能的方法及装置 |
US9904783B2 (en) * | 2015-02-09 | 2018-02-27 | Lenovo (Beijing) Co., Ltd. | Information processing method and electronic device |
US11350254B1 (en) | 2015-05-05 | 2022-05-31 | F5, Inc. | Methods for enforcing compliance policies and devices thereof |
WO2017012120A1 (en) * | 2015-07-23 | 2017-01-26 | Nokia Technologies Oy | Networked communication |
CN105007581B (zh) * | 2015-08-12 | 2018-03-20 | 腾讯科技(深圳)有限公司 | 一种上网认证方法及客户端 |
US10326702B2 (en) * | 2015-09-17 | 2019-06-18 | Facebook, Inc. | Data service levels |
US10498717B2 (en) * | 2015-12-16 | 2019-12-03 | Capital One Services, LLC. | Browser extension for limited-use secure token payment |
US10845950B2 (en) * | 2015-12-17 | 2020-11-24 | Microsoft Technology Licensing, Llc | Web browser extension |
US11757946B1 (en) | 2015-12-22 | 2023-09-12 | F5, Inc. | Methods for analyzing network traffic and enforcing network policies and devices thereof |
US11178150B1 (en) * | 2016-01-20 | 2021-11-16 | F5 Networks, Inc. | Methods for enforcing access control list based on managed application and devices thereof |
US10079817B2 (en) | 2016-02-29 | 2018-09-18 | Dropbox, Inc. | Techniques for invite enforcement and domain capture |
US10083324B1 (en) * | 2016-03-17 | 2018-09-25 | EMC IP Holding Company LLC | Qualified web application security based on multi-layered evaluation of web application hierarchy |
US10444934B2 (en) | 2016-03-18 | 2019-10-15 | Audioeye, Inc. | Modular systems and methods for selectively enabling cloud-based assistive technologies |
US20220164840A1 (en) | 2016-04-01 | 2022-05-26 | OneTrust, LLC | Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design |
US11244367B2 (en) | 2016-04-01 | 2022-02-08 | OneTrust, LLC | Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design |
US11301796B2 (en) | 2016-06-10 | 2022-04-12 | OneTrust, LLC | Data processing systems and methods for customizing privacy training |
US11295316B2 (en) | 2016-06-10 | 2022-04-05 | OneTrust, LLC | Data processing systems for identity validation for consumer rights requests and related methods |
US11416798B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing systems and methods for providing training in a vendor procurement process |
US10783256B2 (en) | 2016-06-10 | 2020-09-22 | OneTrust, LLC | Data processing systems for data transfer risk identification and related methods |
US11343284B2 (en) | 2016-06-10 | 2022-05-24 | OneTrust, LLC | Data processing systems and methods for performing privacy assessments and monitoring of new versions of computer code for privacy compliance |
US11403377B2 (en) | 2016-06-10 | 2022-08-02 | OneTrust, LLC | Privacy management systems and methods |
US10944725B2 (en) | 2016-06-10 | 2021-03-09 | OneTrust, LLC | Data processing systems and methods for using a data model to select a target data asset in a data migration |
US10909265B2 (en) | 2016-06-10 | 2021-02-02 | OneTrust, LLC | Application privacy scanning systems and related methods |
US11336697B2 (en) | 2016-06-10 | 2022-05-17 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11562097B2 (en) | 2016-06-10 | 2023-01-24 | OneTrust, LLC | Data processing systems for central consent repository and related methods |
US11144622B2 (en) | 2016-06-10 | 2021-10-12 | OneTrust, LLC | Privacy management systems and methods |
US11087260B2 (en) | 2016-06-10 | 2021-08-10 | OneTrust, LLC | Data processing systems and methods for customizing privacy training |
US11475136B2 (en) | 2016-06-10 | 2022-10-18 | OneTrust, LLC | Data processing systems for data transfer risk identification and related methods |
US10592648B2 (en) | 2016-06-10 | 2020-03-17 | OneTrust, LLC | Consent receipt management systems and related methods |
US11222142B2 (en) | 2016-06-10 | 2022-01-11 | OneTrust, LLC | Data processing systems for validating authorization for personal data collection, storage, and processing |
US11074367B2 (en) | 2016-06-10 | 2021-07-27 | OneTrust, LLC | Data processing systems for identity validation for consumer rights requests and related methods |
US10510031B2 (en) | 2016-06-10 | 2019-12-17 | OneTrust, LLC | Data processing systems for identifying, assessing, and remediating data processing risks using data modeling techniques |
US10685140B2 (en) | 2016-06-10 | 2020-06-16 | OneTrust, LLC | Consent receipt management systems and related methods |
US11138299B2 (en) | 2016-06-10 | 2021-10-05 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11366786B2 (en) | 2016-06-10 | 2022-06-21 | OneTrust, LLC | Data processing systems for processing data subject access requests |
US11675929B2 (en) | 2016-06-10 | 2023-06-13 | OneTrust, LLC | Data processing consent sharing systems and related methods |
US11134086B2 (en) | 2016-06-10 | 2021-09-28 | OneTrust, LLC | Consent conversion optimization systems and related methods |
US11100444B2 (en) | 2016-06-10 | 2021-08-24 | OneTrust, LLC | Data processing systems and methods for providing training in a vendor procurement process |
US11481710B2 (en) | 2016-06-10 | 2022-10-25 | OneTrust, LLC | Privacy management systems and methods |
US11392720B2 (en) | 2016-06-10 | 2022-07-19 | OneTrust, LLC | Data processing systems for verification of consent and notice processing and related methods |
US11341447B2 (en) | 2016-06-10 | 2022-05-24 | OneTrust, LLC | Privacy management systems and methods |
US11418492B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing systems and methods for using a data model to select a target data asset in a data migration |
US11438386B2 (en) | 2016-06-10 | 2022-09-06 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11146566B2 (en) | 2016-06-10 | 2021-10-12 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US11200341B2 (en) | 2016-06-10 | 2021-12-14 | OneTrust, LLC | Consent receipt management systems and related methods |
US10169609B1 (en) | 2016-06-10 | 2019-01-01 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US11238390B2 (en) | 2016-06-10 | 2022-02-01 | OneTrust, LLC | Privacy management systems and methods |
US11354434B2 (en) | 2016-06-10 | 2022-06-07 | OneTrust, LLC | Data processing systems for verification of consent and notice processing and related methods |
US10467432B2 (en) | 2016-06-10 | 2019-11-05 | OneTrust, LLC | Data processing systems for use in automatically generating, populating, and submitting data subject access requests |
US11222309B2 (en) | 2016-06-10 | 2022-01-11 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US11461500B2 (en) | 2016-06-10 | 2022-10-04 | OneTrust, LLC | Data processing systems for cookie compliance testing with website scanning and related methods |
US11366909B2 (en) | 2016-06-10 | 2022-06-21 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US10607028B2 (en) | 2016-06-10 | 2020-03-31 | OneTrust, LLC | Data processing systems for data testing to confirm data deletion and related methods |
US11151233B2 (en) | 2016-06-10 | 2021-10-19 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11277448B2 (en) | 2016-06-10 | 2022-03-15 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11328092B2 (en) | 2016-06-10 | 2022-05-10 | OneTrust, LLC | Data processing systems for processing and managing data subject access in a distributed environment |
US10909488B2 (en) | 2016-06-10 | 2021-02-02 | OneTrust, LLC | Data processing systems for assessing readiness for responding to privacy-related incidents |
US11636171B2 (en) | 2016-06-10 | 2023-04-25 | OneTrust, LLC | Data processing user interface monitoring systems and related methods |
US11416590B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11210420B2 (en) | 2016-06-10 | 2021-12-28 | OneTrust, LLC | Data subject access request processing systems and related methods |
US10318761B2 (en) | 2016-06-10 | 2019-06-11 | OneTrust, LLC | Data processing systems and methods for auditing data request compliance |
US11416589B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US10678945B2 (en) | 2016-06-10 | 2020-06-09 | OneTrust, LLC | Consent receipt management systems and related methods |
US11625502B2 (en) | 2016-06-10 | 2023-04-11 | OneTrust, LLC | Data processing systems for identifying and modifying processes that are subject to data subject access requests |
US11651106B2 (en) | 2016-06-10 | 2023-05-16 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US11227247B2 (en) | 2016-06-10 | 2022-01-18 | OneTrust, LLC | Data processing systems and methods for bundled privacy policies |
US11157600B2 (en) | 2016-06-10 | 2021-10-26 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US10997318B2 (en) | 2016-06-10 | 2021-05-04 | OneTrust, LLC | Data processing systems for generating and populating a data inventory for processing data access requests |
US11544667B2 (en) | 2016-06-10 | 2023-01-03 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US10284604B2 (en) | 2016-06-10 | 2019-05-07 | OneTrust, LLC | Data processing and scanning systems for generating and populating a data inventory |
US10740487B2 (en) | 2016-06-10 | 2020-08-11 | OneTrust, LLC | Data processing systems and methods for populating and maintaining a centralized database of personal data |
US11416109B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Automated data processing systems and methods for automatically processing data subject access requests using a chatbot |
US11188862B2 (en) | 2016-06-10 | 2021-11-30 | OneTrust, LLC | Privacy management systems and methods |
US11294939B2 (en) | 2016-06-10 | 2022-04-05 | OneTrust, LLC | Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software |
US11727141B2 (en) * | 2016-06-10 | 2023-08-15 | OneTrust, LLC | Data processing systems and methods for synching privacy-related user consent across multiple computing devices |
US10606916B2 (en) | 2016-06-10 | 2020-03-31 | OneTrust, LLC | Data processing user interface monitoring systems and related methods |
US11354435B2 (en) | 2016-06-10 | 2022-06-07 | OneTrust, LLC | Data processing systems for data testing to confirm data deletion and related methods |
US10878127B2 (en) | 2016-06-10 | 2020-12-29 | OneTrust, LLC | Data subject access request processing systems and related methods |
US11410106B2 (en) | 2016-06-10 | 2022-08-09 | OneTrust, LLC | Privacy management systems and methods |
US11228620B2 (en) | 2016-06-10 | 2022-01-18 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11138242B2 (en) | 2016-06-10 | 2021-10-05 | OneTrust, LLC | Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software |
US10839102B2 (en) | 2016-06-10 | 2020-11-17 | OneTrust, LLC | Data processing systems for identifying and modifying processes that are subject to data subject access requests |
US11188615B2 (en) | 2016-06-10 | 2021-11-30 | OneTrust, LLC | Data processing consent capture systems and related methods |
US10282559B2 (en) | 2016-06-10 | 2019-05-07 | OneTrust, LLC | Data processing systems for identifying, assessing, and remediating data processing risks using data modeling techniques |
US10949565B2 (en) | 2016-06-10 | 2021-03-16 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US10846433B2 (en) | 2016-06-10 | 2020-11-24 | OneTrust, LLC | Data processing consent management systems and related methods |
US10896394B2 (en) | 2016-06-10 | 2021-01-19 | OneTrust, LLC | Privacy management systems and methods |
US11222139B2 (en) | 2016-06-10 | 2022-01-11 | OneTrust, LLC | Data processing systems and methods for automatic discovery and assessment of mobile software development kits |
US11586700B2 (en) | 2016-06-10 | 2023-02-21 | OneTrust, LLC | Data processing systems and methods for automatically blocking the use of tracking tools |
US11520928B2 (en) | 2016-06-10 | 2022-12-06 | OneTrust, LLC | Data processing systems for generating personal data receipts and related methods |
US11651104B2 (en) | 2016-06-10 | 2023-05-16 | OneTrust, LLC | Consent receipt management systems and related methods |
GB201613233D0 (en) * | 2016-08-01 | 2016-09-14 | 10Am Ltd | Data protection system and method |
CN106980443A (zh) * | 2017-04-04 | 2017-07-25 | 贾占利 | 手机网站桌面系统及运行方法 |
US10659464B2 (en) * | 2017-05-10 | 2020-05-19 | Microsoft Technology Licensing, Llc | Securely authenticating a bot user |
US11122042B1 (en) | 2017-05-12 | 2021-09-14 | F5 Networks, Inc. | Methods for dynamically managing user access control and devices thereof |
US11343237B1 (en) | 2017-05-12 | 2022-05-24 | F5, Inc. | Methods for managing a federated identity environment using security and access control data and devices thereof |
US10013577B1 (en) | 2017-06-16 | 2018-07-03 | OneTrust, LLC | Data processing systems for identifying whether cookies contain personally identifying information |
CN109427020A (zh) * | 2017-08-21 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 在线签证的处理方法及装置 |
US11188897B2 (en) | 2018-02-13 | 2021-11-30 | Bank Of America Corporation | Multi-tiered digital wallet security |
CN110324292B (zh) * | 2018-03-30 | 2022-01-07 | 富泰华工业(深圳)有限公司 | 身份验证装置、身份验证方法及计算机存储介质 |
US10803202B2 (en) | 2018-09-07 | 2020-10-13 | OneTrust, LLC | Data processing systems for orphaned data identification and deletion and related methods |
US11144675B2 (en) | 2018-09-07 | 2021-10-12 | OneTrust, LLC | Data processing systems and methods for automatically protecting sensitive data within privacy management systems |
US11544409B2 (en) | 2018-09-07 | 2023-01-03 | OneTrust, LLC | Data processing systems and methods for automatically protecting sensitive data within privacy management systems |
PT115304B (pt) * | 2019-02-11 | 2023-12-06 | Mediceus Dados De Saude Sa | Procedimento de login com um clique |
US11190512B2 (en) | 2019-04-17 | 2021-11-30 | Microsoft Technology Licensing, Llc | Integrity attestation of attestation component |
US11392467B2 (en) | 2019-04-17 | 2022-07-19 | Microsoft Technology Licensing, Llc | Failover between decentralized identity stores |
US11429743B2 (en) | 2019-04-29 | 2022-08-30 | Microsoft Technology Licensing, Llc | Localization of DID-related claims and data |
US11381567B2 (en) | 2019-04-29 | 2022-07-05 | Microsoft Technology Licensing, Llc | Execution of an application within a scope of user-granted permission |
US11411959B2 (en) * | 2019-05-03 | 2022-08-09 | Microsoft Technology Licensing, Llc | Execution of application in a container within a scope of user-granted permission |
US11003771B2 (en) | 2019-05-03 | 2021-05-11 | Microsoft Technology Licensing, Llc | Self-help for DID claims |
US11222137B2 (en) | 2019-05-03 | 2022-01-11 | Microsoft Technology Licensing, Llc | Storing and executing an application in a user's personal storage with user granted permission |
CN110806893A (zh) * | 2019-09-27 | 2020-02-18 | 云深互联(北京)科技有限公司 | 浏览器参数配置的控制方法、装置及设备 |
CN111061502B (zh) * | 2019-12-19 | 2023-05-26 | 贵阳货车帮科技有限公司 | 一种安装包获取方法、装置、设备和存储介质 |
US11269971B2 (en) * | 2020-02-10 | 2022-03-08 | International Business Machines Corporation | Providing reading insight on URLs with unfamiliar content |
US11121863B1 (en) * | 2020-03-12 | 2021-09-14 | Oracle International Corporation | Browser login sessions via non-extractable asymmetric keys |
CN111752968B (zh) * | 2020-06-12 | 2021-11-23 | 支付宝(杭州)信息技术有限公司 | 身份档案处理方法、装置、设备及存储介质 |
WO2022011142A1 (en) | 2020-07-08 | 2022-01-13 | OneTrust, LLC | Systems and methods for targeted data discovery |
CN111914583B (zh) * | 2020-07-13 | 2022-07-29 | 杭州海康机器人技术有限公司 | 图形码的识别方法、装置以及设备 |
EP4189569A1 (en) | 2020-07-28 | 2023-06-07 | OneTrust LLC | Systems and methods for automatically blocking the use of tracking tools |
US20230289376A1 (en) | 2020-08-06 | 2023-09-14 | OneTrust, LLC | Data processing systems and methods for automatically redacting unstructured data from a data subject access request |
US11436373B2 (en) | 2020-09-15 | 2022-09-06 | OneTrust, LLC | Data processing systems and methods for detecting tools for the automatic blocking of consent requests |
US11526624B2 (en) | 2020-09-21 | 2022-12-13 | OneTrust, LLC | Data processing systems and methods for automatically detecting target data transfers and target data processing |
WO2022086872A1 (en) * | 2020-10-19 | 2022-04-28 | Audioeye, Inc. | Distributed systems and methods for facilitating website remediation and promoting assistive technologies and detecting compliance issues |
EP4241173A1 (en) | 2020-11-06 | 2023-09-13 | OneTrust LLC | Systems and methods for identifying data processing activities based on data discovery results |
WO2022159901A1 (en) | 2021-01-25 | 2022-07-28 | OneTrust, LLC | Systems and methods for discovery, classification, and indexing of data in a native computing system |
WO2022170047A1 (en) | 2021-02-04 | 2022-08-11 | OneTrust, LLC | Managing custom attributes for domain objects defined within microservices |
WO2022170254A1 (en) | 2021-02-08 | 2022-08-11 | OneTrust, LLC | Data processing systems and methods for anonymizing data samples in classification analysis |
US20240098109A1 (en) | 2021-02-10 | 2024-03-21 | OneTrust, LLC | Systems and methods for mitigating risks of third-party computing system functionality integration into a first-party computing system |
US11775348B2 (en) | 2021-02-17 | 2023-10-03 | OneTrust, LLC | Managing custom workflows for domain objects defined within microservices |
WO2022178219A1 (en) | 2021-02-18 | 2022-08-25 | OneTrust, LLC | Selective redaction of media content |
EP4305539A1 (en) | 2021-03-08 | 2024-01-17 | OneTrust, LLC | Data transfer discovery and analysis systems and related methods |
US11562078B2 (en) | 2021-04-16 | 2023-01-24 | OneTrust, LLC | Assessing and managing computational risk involved with integrating third party computing functionality within a computing system |
US11620142B1 (en) | 2022-06-03 | 2023-04-04 | OneTrust, LLC | Generating and customizing user interfaces for demonstrating functions of interactive user environments |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6948183B1 (en) * | 1998-06-18 | 2005-09-20 | General Instrument Corporation | Dynamic security for digital television receivers |
CN102395952A (zh) * | 2009-04-14 | 2012-03-28 | 高通股份有限公司 | 用于基于兼容性和/或用户偏好自动启用和停用计算装置的应用和窗口小部件的系统和方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6418472B1 (en) * | 1999-01-19 | 2002-07-09 | Intel Corporation | System and method for using internet based caller ID for controlling access to an object stored in a computer |
US8255548B2 (en) * | 2002-06-13 | 2012-08-28 | Salesforce.Com, Inc. | Offline web services API to mirror online web services API |
US7721328B2 (en) * | 2004-10-01 | 2010-05-18 | Salesforce.Com Inc. | Application identity design |
US20080005238A1 (en) * | 2006-06-29 | 2008-01-03 | Microsoft Corporation | Roaming consistent user representation information across devices and applications |
EP2110774A4 (en) * | 2007-02-07 | 2010-08-11 | Nippon Telegraph & Telephone | CLIENT DEVICE, KEY DEVICE, DEVICE FOR PROVIDING A SERVICE, USER AUTHENTICATION SYSTEM, USER AUTHENTICATION PROCESS, PROGRAM AND RECORDING MEDIUM |
CN102272769A (zh) * | 2008-12-30 | 2011-12-07 | 诺基亚西门子通信公司 | 服务访问控制 |
US20130014126A1 (en) * | 2011-07-05 | 2013-01-10 | Microsoft Corporation | Cross-browser communication between devices on a network |
US9357005B2 (en) * | 2012-05-18 | 2016-05-31 | Andrew Milburn | Method and system for synchronized distributed display over multiple client devices |
US9043469B2 (en) * | 2012-06-29 | 2015-05-26 | International Business Machines Corporation | Cache control for web application resources |
US8769651B2 (en) * | 2012-09-19 | 2014-07-01 | Secureauth Corporation | Mobile multifactor single-sign-on authentication |
-
2012
- 2012-07-20 US US13/554,492 patent/US9887965B2/en active Active
-
2013
- 2013-06-04 EP EP13730720.3A patent/EP2875463B1/en active Active
- 2013-06-04 CN CN201380045380.4A patent/CN104737175B/zh active Active
- 2013-06-04 WO PCT/US2013/044012 patent/WO2014014565A1/en active Application Filing
- 2013-06-04 DE DE202013012485.7U patent/DE202013012485U1/de not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6948183B1 (en) * | 1998-06-18 | 2005-09-20 | General Instrument Corporation | Dynamic security for digital television receivers |
CN102395952A (zh) * | 2009-04-14 | 2012-03-28 | 高通股份有限公司 | 用于基于兼容性和/或用户偏好自动启用和停用计算装置的应用和窗口小部件的系统和方法 |
Non-Patent Citations (2)
Title |
---|
Android 101:Using multiple Android devices;Jerry Hildenbrand;《androidcentral http://www.androidcentral.com/android-101-using-multiple-android-devices》;20111208;第2页第1段 * |
Understanding OAuth:What Happens When You Log Into a Site with Google,Twitter,or Facebook;Whitson Gordon;《http://lifehacker.com/5918086/understanding-oauth-what-happens-when-you-log-into-a-site-with-google-twitter-or-facebook》;20120613;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104737175A (zh) | 2015-06-24 |
US20140025949A1 (en) | 2014-01-23 |
US9887965B2 (en) | 2018-02-06 |
EP2875463A1 (en) | 2015-05-27 |
DE202013012485U1 (de) | 2017-01-20 |
WO2014014565A1 (en) | 2014-01-23 |
EP2875463B1 (en) | 2018-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104737175B (zh) | 计算机实施的方法及系统、计算机可读媒体 | |
US11010457B2 (en) | Generation, management, and tracking of digital credentials | |
CN105659558B (zh) | 计算机实现的方法、授权服务器以及计算机可读存储器 | |
CN105659557B (zh) | 用于单点登录的基于网络的接口集成的方法和系统 | |
US10033536B2 (en) | Generation, management, and tracking of digital credentials | |
US20150332596A1 (en) | Integrated learning system | |
CN106164919A (zh) | 有多个登录的基于浏览器的身份 | |
CN107408042A (zh) | 用于移动应用的高效和直观的数据绑定 | |
CN103078894A (zh) | 共享项目帐户选择 | |
CN103067436A (zh) | 组选择加入链接 | |
US20160019087A1 (en) | Methods and systems for providing a customized network | |
JP7165715B2 (ja) | 統合検索のためのサポートを伴う保護されたフィールド上の自動動作検出 | |
CN108604278A (zh) | 具有对共享数据表的支持的自描述配置 | |
CA2869551C (en) | Methods and systems for providing a customized network | |
JP2019053495A (ja) | 生成装置、生成方法及び生成プログラム | |
US20220261446A1 (en) | Customized Navigation Flow | |
US10021082B2 (en) | Integration of form and file services | |
US11941623B2 (en) | Device manager to control data tracking on computing devices | |
JP2020109691A (ja) | 生成装置、生成方法及び生成プログラム | |
US11811524B1 (en) | Methods and systems for user data management | |
Patino | Better Reviews | |
US7734642B2 (en) | Method and system for automating purpose usage selection on web sites | |
CN108632209A (zh) | 用于处理信息的系统、方法和装置 | |
Sandboxing | Deliverable D1. 2 Interaction Patterns and Security Properties | |
VANKO | Web application for sending acquired medical data to volunteers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: American California Applicant after: Google limited liability company Address before: American California Applicant before: Google Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |