一种用户密钥存储方法及服务器与流程

文档序号:12492904阅读:709来源:国知局
一种用户密钥存储方法及服务器与流程

本申请涉及通信技术领域,特别涉及一种用户密钥存储方法。本申请同时还涉及一种服务器。



背景技术:

随着互联网技术的不断发展,人们现在通过互联网能够完成各种自己所需要的事情。在用户通过网络提供或获取服务时,一般都需要在服务提供商或网络运营商注册属于自己的账号,并设置相对应的密码。

在目前生活中,互联网服务多种多样,用户需要注册各类网站,每个网站都要有用户名、密码。网站按重要程度可简单分为以下两种:

(1)高优先级账户,例如银行等金融账户,该类型的账户ID以及密码涉及用户的财产安全,需要用户妥善进行保管;

(2)低优先级账户,例如各种论坛账户,该类型的账户或只注册看一次就不用再管。

为了帮助用户记录繁多的账号密码,现有技术提出了密码管理器以提高用户在页面浏览时的使用体验。具体地,在当用户通过某网站完成注册之后,密码管理器将用户名、密码保存起来,后续在用户需要登录该网站时自动填写用户名、密码,若用户不想自己设置密码,还能在用户需要生成密码时自动生成密码。

作为目前使用率较高的一款密码管理器,Last Pass能够以浏览器扩展的形式使用,当用户登录任何一个网站时会提示保存登录信息,后续用户访问该网站时将会自动填写登录表单,免除记忆账密和手工输入的麻烦。以Last Pass为例,现有技术中的密钥管理系统的架构示意图如图1所示,其后端需要部署 很重的服务用来做用户索引、数据索引以及数据存储。而且需要定义前后端接口。因此开发者要自行开发应用并部署至业务服务器上提供服务,而且开发者需要自己提供用户索引和数据索引服务,若开发者不用云存储的话,需要自己提供数据存储服务。

发明人在实现本发明的过程中发现,对于普通的开发者而言,其并不能负担大量用户的密钥存储所需要的服务器租赁以及架设费用,因此对于该类系统而言,服务器会成为性能瓶颈。而且不同开发者的设计以及开发习惯不同,导致此类系统耦合性高但可复用性差。

由此可见,如何在降低硬件使用成本以及缩短开发周期的前提下实现用户的密钥管理,成为本领域技术人员亟待解决的技术问题。



技术实现要素:

本发明提供了一种用户密钥存储方法,用以在简化开发流程以及减少开发成本的前提下提高用户密钥的管理效率,该方法应用于包括密钥管理服务器、用户终端以及鉴权服务器的密钥管理系统中,包括:

所述密钥管理服务器接收来自于用户终端的密钥存储请求,所述密钥存储请求中携带有临时认证令牌、密钥信息以及用户标识,所述临时认证令牌为用户在登录所述鉴权服务器后由所述鉴权服务器下发至所述用户终端的;

所述密钥管理服务器对所述临时认证令牌进行鉴权;

若所述临时认证令牌鉴权通过,所述密钥管理服务器在自身查询与所述用户对应的密钥存储空间,并将所述用户标识与所述密钥信息对应存储至所述密钥存储空间中。

优选地,所述临时认证令牌具体为所述用户终端在所述用户登录所述鉴权服务器后向所述鉴权服务器请求获取的。

优选地,所述密钥信息至少包括用户账户、用户密码以及网站标识,在 所述密钥管理服务器将所述用户标识与所述密钥信息对应存储至所述密钥存储空间之后,还包括:

当接收到来自于所述用户终端的密钥填写请求时,所述密钥管理服务器确定所述密钥填写请求对应的目标网站标识;

所述密钥管理服务器在所述密钥存储空间中查询与所述目标网站标识对应的用户账户以及用户密码;

所述密钥管理服务器将查询到的用户账户以及用户密码返回至所述用户终端。

优选地,所述密钥存储请求中还携带用户信息以及网站信息,在所述密钥管理服务器将所述用户标识与所述密钥信息对应存储至所述密钥存储空间之后,还包括:

所述密钥管理服务器根据所述用户信息、所述网站信息、所述用户标识以及所述待存储密钥生成用户索引。

优选地,在所述密钥管理服务器将所述用户标识与所述密钥信息对应存储至所述密钥存储空间之后,还包括:

当接收到来自于所述用户中的密钥检索请求时,根据所述密钥检索请求中携带的关键词以及所述用户索引生成搜索结果,并将所述搜索结果返回至所述用户终端。

本发明提供了一种服务器,用以在简化开发流程以及减少开发成本的前提下提高用户密钥的管理效率,该服务器用于作为密钥管理服务器应用于包括所述密钥管理服务器、用户终端以及鉴权服务器的密钥管理系统中,包括:

接收模块,接收来自于用户终端的密钥存储请求,所述密钥存储请求中携带有临时认证令牌、密钥信息以及用户标识,所述临时认证令牌为用户在登录所述鉴权服务器后由所述鉴权服务器下发至所述用户终端的;

鉴权模块,对所述临时认证令牌进行鉴权;

处理模块,在所述临时认证令牌鉴权通过时,查询服务器自身与所述用户对应的密钥存储空间,并将所述用户标识与所述密钥信息对应存储至所述密钥存储空间中。

优选地,所述临时认证令牌具体为所述用户终端在所述用户登录所述鉴权服务器后向所述鉴权服务器请求获取的。

优选地,所述密钥信息至少包括用户账户、用户密码以及网站标识;还包括:

填充模块,在接收到来自于所述用户终端的密钥填写请求时确定所述密钥填写请求对应的目标网站标识,在所述密钥存储空间中查询与所述目标网站标识对应的用户账户以及用户密码,将查询到的用户账户以及用户密码返回至所述用户终端。

优选地,所述密钥存储请求中还携带用户信息以及网站信息,还包括:

生成模块,根据所述用户信息、所述网站信息、所述用户标识以及所述待存储密钥生成用户索引。

优选地,所述生成模块还在接收到来自于所述用户中的密钥检索请求时根据所述密钥检索请求中携带的关键词以及所述用户索引生成搜索结果,并将所述搜索结果返回至所述用户终端。

由此可见,通过应用本申请的技术方案,密钥管理服务器首先接收来自于用户终端的密钥存储请求,并对密钥存储请求中的临时认证令牌进行鉴权,由于临时认证令牌为用户在登录鉴权服务器后由鉴权服务器下发至用户终端,因此若临时认证令牌鉴权通过,密钥管理服务器即可在自身查询与用户对应的密钥存储空间,并将用户标识与密钥信息对应存储至密钥存储空间中。从而无需再在服务器之间设置专用接口实现用户密钥的存储,极大简化了开 发流程以及减少了开发成本,并在保障安全性的同时提高了开发效率。

附图说明

图1为现有技术中密钥管理系统的架构示意图;

图2为本申请提出的一种用户密钥存储方法的流程示意图;

图3为本申请具体实施例所提出的一种用户密钥管理方法的示意图;

图4为本申请提出的一种服务器的结构示意图。

具体实施方式

有鉴于背景技术中所提出的技术问题,本申请提出了一种用户密钥存储方法,如图2所示,该方法包括以下步骤:

S201,所述密钥管理服务器接收来自于用户终端的密钥存储请求,所述密钥存储请求中携带有临时认证令牌、密钥信息以及用户标识,所述临时认证令牌为用户在登录鉴权服务器后由所述鉴权服务器下发至所述用户终端的。

在现有的技术中,用户在利用设有密钥管理工具的终端设备进行密钥存储时,终端设备需要利用专门的API接口与业务服务器进行对接,并且开发者还需要基于业务服务器设置其他的服务器用来存储用户的密钥数据,这无疑极大的增加了密钥管理的开发成本以及开发难度。为此本申请提出了一套仅由密钥管理服务器、用户终端以及鉴权服务器所组成的密钥管理系统。其中用户终端除了向用户提供网站浏览功能之外,搭载前端展示处理的密钥管理工具,其可以为移动终端或者PC终端,与鉴权服务器以及密钥管理服务器之间能够实现不依赖于接口设置的报文通信以及信息存储。通过对服务器的存储和读取的API进行优化,简化了密码管理时的查询、存储、读取等工作,开发者不再需要像以前那样需要对这些通用功能进行开发。

基于以上密钥管理系统,当用户需要存储密钥时,用户将首先通过用户终端登录鉴权服务器,在用户成功登录鉴权服务器之后,用户终端将向鉴权服务器请求临时认证令牌,并将该临时认证令牌与用户标识以及密钥信息一同携带在密钥存储请求中发送至密钥管理服务器。

优选地,技术人员可以将密钥管理服务器布置于目前的网络存储服务平台中,该网络存储服务平台必须在具有存储及读取功能的前提下提供通用的接口。在具体的应用场景中,为了能够便捷、快速地实现本申请的技术方案,该网络存储服务平台可采用能够对外提供海量、安全和高可靠的云存储服务的OSS(Object Storage Service,对象存储)平台。在采用OSS平台上的服务器应用本申请提供的密钥管理方案时,开发人员或者普通用户均可通过自身所使用的移动终端或者是PC终端直接与OSS平台的服务器进行交互,而无需再设置API接口。在此基础上,技术人员也可基于网络存储服务平台的无关性,容量和处理能力的弹性扩展进一步对网络的接口功能以及存储功能进行拓展,这些都属于本申请的保护范围。

S202,所述密钥管理服务器对所述临时认证令牌进行鉴权。

S203,若所述临时认证令牌鉴权通过,所述密钥管理服务器在自身查询与所述用户对应的密钥存储空间,并将所述用户标识与所述密钥信息对应存储至所述密钥存储空间中。

在用户通过互联网进行活动的过程中,大多数情况下用户都是需要在网站填写自己注册的用户名及密码,因此在本申请的一个优选实施例中,密钥信息应至少包括用户账户、用户密码以及网站标识,在密钥管理服务器将所述用户标识与所述密钥信息对应存储至所述密钥存储空间之后,若是接收到来自于所述用户终端的密钥填写请求,所述密钥管理服务器确定所述密钥填写请求对应的目标网站标识,在所述密钥存储空间中查询与所述目标网站标 识对应的用户账户以及用户密码,并将查询到的用户账户以及用户密码返回至所述用户终端,以此实现针对网站的用户名及密码的填写。

需要说明的是,虽然以上过程中仅以网站的用户名密码自动填充为例进行说明,然而当用户使用其他方式(例如APP)进行登陆时,也可在此基础上针对标识进行改变以适应性地进行调整填充,这些都属于本申请的保护范围。

此外,为便于用户针对自己所存储的密码进行管理,密钥存储请求中还可携带用户输入的自身的用户信息以及网站信息,在所述密钥管理服务器将所述用户标识与所述密钥信息对应存储至所述密钥存储空间之后,密钥管理服务器将根据所述用户信息、所述网站信息、所述用户标识以及所述待存储密钥生成用户索引,而在接收到来自于所述用户中的密钥检索请求时,密钥管理服务器即可根据所述密钥检索请求中携带的关键词以及所述用户索引生成搜索结果,并将所述搜索结果返回至所述用户终端。

通过以上方案可以看出,本申请的方案通过利用网络存储服务平台上的密钥管理服务器所提供的云计算中开放的种种服务,取代了传统开发中的工作,省去了中间环节。将用户的请求与响应,直接与云计算中的服务打通,从而提高了现有的密钥管理效率。

为了进一步阐述本发明的技术思想,现结合如图3所示的具体应用场景,对本发明的技术方案进行说明。详细步骤如下:

S301,用户通过自身使用的终端设备(PC设备或是移动终端)登录鉴权服务器;

S302,在安全登录了鉴权服务器之后,该用户在终端设备上打开密钥管理工具(该具体实施例中以Last Pass为例进行说明)。该密钥管理工具具有在线密码管理以及页面过滤的功能,能够记录用户通过终端设备在页面浏览过程中所填充的用户名及密码,同时识别当前浏览页面所需要填充的用户名及 密码。

S303,密钥管理工具从鉴权服务器请求临时令牌token;

S304,在接收到密钥管理工具的临时token请求之后,鉴权服务器需要为该密钥管理工具生成临时token。在该具体实施例中,技术人员可以采用制定安全令牌服务(STS)生成临时token,该安全令牌服务是一项发布、验证和续订安全令牌的Web服务,可以有效地保证临时token的安全性以及有效性。

S305,密钥管理工具在获得临时token后,利用该临时token取得获取访问网络存储服务平台的云服务的权限。开始查找与用户相关的记录信息,并将对应的用户名、密码以及其它数据等写在网络存储服务平台,同时将可以搜索的内容(例如用户名、网络名称等)放在云搜索服务中进行索引;

S306,用户在通过终端设备进行页面浏览的过程中需要进行密码填充时,通过密钥管理工具从网络存储服务平台获取所需的密码并填写至浏览页面,从而进行进一步的访问。

以上步骤在无需开发专用接口以及服务器的前提下,实现了用户在页面浏览过程中进行密码自动存储以及密钥自动填充的功能。然而,在相隔了一段时间未使用某一个账户之后,用户可能会遗忘当时登录该网站所使用的用户名,因此本具体实施例还提供了针对网站或是其他密码填充页面的搜索功能,具体如下:

S307,如果用户需要针对某一个网站或是密码填充页面搜索之前所填充的用户名及密码时,该用户可通过该密钥管理工具发起搜索请求,随后密钥管理工具将根据待搜索的网站或是填充页面的标识向网络存储服务平台请求云搜索服务,网络存储服务平台在接收到密钥管理工具的搜索请求之后,将根据S305中的索引在记录中查询之前用户所存储的与该网站对应的所有用户名以及对应的密钥,并将搜索结果返回至密钥管理工具,后续密钥管理工具将获取到的与该网站对应的用户名、密码展示给用户。

基于与上述方法实施例相同的技术构思,本发明实施例还提供了一种服务器可以应用于上述方法流程中。

如图4所示,为本发明实施例提供的一种服务器的结构示意图,可以包括:

接收模块401,接收来自于用户终端的密钥存储请求,所述密钥存储请求中携带有临时认证令牌、密钥信息以及用户标识,所述临时认证令牌为用户在登录所述鉴权服务器后由所述鉴权服务器下发至所述用户终端的;

鉴权模块402,对所述临时认证令牌进行鉴权;

处理模块403,若所述临时认证令牌鉴权通过,查询服务器自身与所述用户对应的密钥存储空间,并将所述用户标识与所述密钥信息对应存储至所述密钥存储空间中。

其中,所述临时认证令牌具体为所述用户终端在所述用户登录所述鉴权服务器后向所述鉴权服务器请求获取的。

所述密钥信息至少包括用户账户、用户密码以及网站标识;还包括:

填充模块,在接收到来自于所述用户终端的密钥填写请求时确定所述密钥填写请求对应的目标网站标识,在所述密钥存储空间中查询与所述目标网站标识对应的用户账户以及用户密码,将查询到的用户账户以及用户密码返回至所述用户终端。

所述密钥存储请求中还携带用户信息以及网站信息,还包括:

生成模块,根据所述用户信息、所述网站信息、所述用户标识以及所述待存储密钥生成用户索引。

所述生成模块还在接收到来自于所述用户中的密钥检索请求时根据所述密钥检索请求中携带的关键词以及所述用户索引生成搜索结果,并将所述搜索结果返回至所述用户终端。

通过应用本申请的技术方案,密钥管理服务器首先接收来自于用户终端的密钥存储请求,并对密钥存储请求中的临时认证令牌进行鉴权,由于临时认证令牌为用户在登录鉴权服务器后由鉴权服务器下发至用户终端,因此若临时认证令牌鉴权通过,密钥管理服务器即可在自身查询与用户对应的密钥存储空间,并将用户标识与密钥信息对应存储至密钥存储空间中。从而无需再在服务器之间设置专用接口实现用户密钥的存储,极大简化了开发流程以及减少了开发成本,并在保障安全性的同时提高了开发效率。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。

本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。

本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本发明序号仅仅为了描述,不代表实施场景的优劣。

以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1