一种用户账户登录方法、装置、电子设备和存储介质与流程

文档序号:16310503发布日期:2018-12-19 05:15阅读:208来源:国知局
一种用户账户登录方法、装置、电子设备和存储介质与流程

本发明涉及互联网技术领域,特别涉及一种用户账户登录方法、装置、电子设备和存储介质。

背景技术

随着京东业务的高速发展,用户的账户信息安全已经成为重中之重。基于设备信息进行账号登录保护,京东之前采用的方式安装数字证书服务。当用户开启数字证书服务时,会在本地生成唯一的标识信息,后续用户进行登录及其他操作时,会与远程服务器保留的标识信息进行比对,只有在标识信息对比一致的情况下,可以确定用户是在当前已安装数字证书服务的设备上进行的操作,允许用户进行相关的登录及修改操作。

但这种方式存在很大的弊端,首先,数字证书插件的浏览器兼容性比较差,导致很多浏览器上数字证书无法生效,无法达到确保设备安全的目的。其次,当前的数字证书服务依赖第三方的数字证书服务,不仅是付费软件而且可维护性差。



技术实现要素:

有鉴于此,本申请提供一种用户账户登录方法、装置、电子设备和存储介质,能够提高用户账户安全性。

为解决上述技术问题,本申请的技术方案是这样实现的:

一种用户账户登录方法,该方法包括:

服务器端接收到客户端发送的访问页面的访问请求后,根据所述访问请求中的用户代理ua字段、http头信息字段、硬件信息字段、cookie字段中的一个或者几个的组合,计算得到客户端设备唯一标识;

服务器端进行身份登录,检测所述客户端设备唯一标识是否保存在常用设备列表中,如果是,则确认身份登录成功;如果否,则根据支付密码或手机号码进行身份验证,将通过身份验证的客户端设备唯一标识添加到所述常用设备列表中。

一种用户账户登录装置,应用于服务器端,该装置包括:

获取单元,接收到客户端发送的访问页面的访问请求后,根据所述访问请求中的用户代理ua字段、http头信息字段、硬件信息字段、cookie字段中的一个或者几个的组合,计算得到客户端设备唯一标识;

身份登录单元,进行身份登录,检测所述客户端设备唯一标识是否保存在常用设备列表中,如果是,则确认身份登录成功;如果否,则根据支付密码或手机号码进行身份验证,将通过身份验证的客户端设备唯一标识添加到所述常用设备列表中。

由上面的技术方案可知,本发明实施例通过在服务器端获取客户端设备唯一标识,然后进行身份登录,如此,用户可以便捷灵活的对自己的常用设备进行管理,最大程度的降低用户账户跨设备登录账号被盗风险,保护客户的根本利益。

附图说明

图1为本发明实施例中用户账户登录方法的流程示意图。

图2为本申请实施例中应用于上述技术的装置结构示意图。

图3为本申请实施例中电子设备的硬件结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并举实施例,对本发明的技术方案进行详细说明。

本发明的方案不需要依赖第三方的数字证书服务,根据客户端设备唯一标识所具备的设备唯一性,恶意用户是无法模拟出客户端设备唯一标识的,所以通过验证客户端设备唯一标识,一旦出现常用设备列表中该客户端设备唯一标识为空的情况,就进行相应的身份验证流程,从而提供了安全可靠便捷的设备管理流程,最大程度的降低用户账户跨设备登录账号被盗风险,进一步提高用户账户安全性。

实施例一

图1为本发明实施例中用户账户登录方法的流程示意图,具体步骤为:

步骤11、服务器端接收到客户端发送的访问页面的访问请求后,获取访问请求中的用户代理ua字段、http头信息字段、硬件信息字段、cookie字段中的一个或者几个的组合,计算得到客户端设备唯一标识;

其中,由于上述各个字段都与用户个人使用习惯和应用环境有关,当组合在一起时,可以有效地区分用户设备,可以用作区分设备信息的依据。因此收集上述各个字段都是为了得到客户端设备唯一标识(eid),具体地,可以通过javascript(js)页面埋点的方法,将采集到的相关字段信息在程序后台做murmurhash运算(哈希函数)并进行hash加密处理,从而计算得到唯一的设备信息eid。

客户端设备唯一标识eid是在服务器端为客户终端设备安排的编号,特点是全局唯一。

ua字段是http协议中的一部分,属于头域的组成部分。它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计。

硬件信息字段包括以下各项中的至少一项:插件信息字段(plugins)、系统安装字体字段(fonts)、显示器设置字段(video)、时区信息字段(timezone)。

步骤12、服务器端进行身份登录,检测所述客户端设备唯一标识是否保存在常用设备列表中,如果是,则确认身份登录成功;如果否,则根据支付密码或手机号码进行身份验证,将通过身份验证的客户端设备唯一标识添加到所述常用设备列表中。

其中,为了降低数据库查询的压力,本发明实施例会将获取到的eid添加到数据库的同时同步缓存到redis中,检测时,首先与redis中缓存的常用设备列表中的数据进行对比。若redis缓存无数据,再检查数据库,从而降低对数据库的查询压力。

另外,本发明提供常用设备列表管理页面,用户可以查看自己当前已经验证过的常用设备列表,并且提供了增加设备和剔除设备的功能,方便用户灵活的管理自己的设备信息。

至此,完成了本发明的用户账户登录方法。在步骤11中,获取客户端设备唯一标识;在步骤12中,根据所述客户端设备唯一标识进行身份登录。由此可以看出,上述方法关键说明的是本发明用户账户登录中的身份登录过程。在身份登录之前,该方法还包括:服务器端根据从客户端接收的账户名称和登录密码进行初始登录的确认。

也就是说,整个用户账户登录过程中,服务器端首先需要进行初始登录的确认,在初始登录完成之后,再进行身份登录验证以及其他登录验证。但是客户端设备唯一标识的获取只要访问页面即可得到。其他登录验证可以根据需要进行选择性地实施。例如:

异地登录验证:检查当前登录的ip地址是否在常用地址库,若不在常用地址库,则命中异地登录规则,强制用户走相关的验证流程。

风控登录验证:检查用户是否命中自己定义的风控用户,若命中风控规则,则强制用户走相关的验证流程。

黑名单登录验证:若登录的用户账号信息已经被盗(社工库、撞库等信息泄露密码的账号),会存储到黑名单数据库,若命中黑名单规则,则强制走相关的限制流程。

在整个登录过程中还形成登录日志,用于持久化历史登录设备信息及变更记录信息,便于用户跟踪溯源。所述登录日志包括以下各项中的至少一项:账户名称、登录终端来源、登录系统标识、登录时间、登录地点、登录ip、客户端设备唯一标识。其中,登录终端来源可以包括来源于pc或者app等;登录系统标识可以包括微信登录,qq登录,或者主站登录等。

服务器端将账户名称与支付密码和/或手机号码进行绑定,用于身份验证。也就是说,身份验证时,身份验证方式可配置,以便更好的支持业务需要。具体的,

当服务器端将账户名称与支付密码和手机号码进行绑定时,则根据支付密码或手机号码进行身份验证;

当服务器端将账户名称与支付密码进行绑定时,则根据支付密码进行身份验证;

当服务器端将账户名称与手机号码进行绑定时,则根据手机号码进行身份验证;

当身份验证时,服务器端未将账户名称与支付密码和手机号码进行绑定,则接收客户端发送的手机号码,并将所述客户端发送的手机号码与账户名称和登录密码进行绑定。

为清楚说明本发明,下面列举具体场景进行说明。

前述已经说明,客户端设备唯一标识的获取只要访问页面即可得到。也就是说,只要打开有js埋点的主页面,就可以收集字段计算得到eid,然后可以直接调用身份登录验证的接口进行身份登录验证,也可以调用其他接口进行其他登录验证。但是进行身份登录验证时,必定已经完成了初始登录的验证。

账户名称与支付密码和/或手机号码的绑定可以根据应用进行选择。例如,可以在注册时将账户名称与支付密码和/或手机号进行绑定;也可以在用户下单时,将账户名称与支付密码和/或手机号进行绑定;或者在操作过程中将账户名称与手机号进行绑定,等等方式都在本发明的保护范围内。下面的场景中以注册时将账户名称与支付密码绑定为例进行说明。

1)、通过账户名称和登录密码进行注册,注册时将账户名称与支付密码绑定;

2)、通过账户名称和登录密码进行初始登录;

3)、在初始登录完成后,服务器通过页面埋点js采集设备因子,计算得到设备信息eid;

4)、调用身份登录验证的接口验证当前获取的设备信息eid是否在用户当前的常用设备列表里存在,若存在,则跳过当前设备身份验证流程,直接身份登录成功;若不存在,则会从登录页面直接跳转至设备信息验证页面,强制用户通过验证手机短信或者支付密码的方式,进行身份验证,并提供选择项是否将当前设备加入到常用设备列表;若用户勾选,则身份验证通过登录成功的同时,会将当前设备加入到常用设备列表,下次登录的时候无需再次进行设备身份验证流程;若用户不勾选,则身份验证通过登录成功之后,不会将当前设备加入到常用设备列表,下次登录的时候需要再次进行设备身份验证流程。

其中,通过支付密码进行身份验证的方式可以是,根据用户输入的支付密码判断与绑定的支付密码是否一致,来进行身份验证。通过手机短信进行身份验证的方式可以是,根据用户输入的手机验证码判断与绑定的手机号产生的手机验证码是否一致,来进行身份验证。本场景中由于注册时将账户名称与支付密码绑定,因此可以通过支付密码进行身份验证。

5)、在完成了所有其他登录验证流程的情况下,则完成了整个用户账户登录流程,用户可以成功登录。

实施例二

服务器端接收包括恶意账户的提醒消息,所述提醒消息携带所述恶意账户名称和该恶意账户名称下的客户端设备唯一标识;根据所述提醒消息将基于该恶意账户名称下客户端设备唯一标识的登录态删除。如此,根据eid踢人的方式,一旦识别出某个已经在常用设备列表里的某个设备存在风险,可以直接剔除这个设备上的登录态信息,强制要求用户重新登录,最大程度降低盗号风险。

需要说明的是,一个账户名称可以对应多个客户端设备唯一标识,所删除的恶意用户指的是账户名称下的其中一个客户端设备唯一标识。

本发明中,恶意账户是通过设备登录特征分析得到的,设备登录特征分析:抓取登录日志,通过静态分析,流式分析等分析方式,建立设备登录的特征,并根据登录特征对正常用户、恶意用户画像,根据分析结果指定不同的防范策略。

恶意用户画像主要通过以下几个方面体现:

基于该设备下单的用户是否恶意下单用户;

基于该设备下单的用户是否总是货到付款拒收;

基于该设备下单的用户是否是碰瓷用户(以品质、服务为由,恶意讹诈京东的用户);

基于该设备登录是否频繁切换登录账号(即基于该设备登录的账号个数是否异常);

基于该设备登录的用户是否频繁切换ip等等。

基于用户画像进行打标,强制对这些异常行为数据用户进行限制操作,如限制登录、立即剔除登录态、增加验证方式等,最大程度的可能造成的财产损失。

实施例三

基于同样的发明构思,本申请实施例中还提出一种用户账户登录装置。参见图2,图2为本申请实施例中应用于上述技术的装置结构示意图。该装置包括:获取单元201、身份登录单元202;

获取单元201,接收到客户端发送的访问页面的访问请求后,获取访问请求中的用户代理ua字段、http头信息字段、硬件信息字段、cookie字段中的一个或者几个的组合,计算得到客户端设备唯一标识;

身份登录单元202,进行身份登录,检测所述客户端设备唯一标识是否保存在常用设备列表中,如果是,则确认身份登录成功;如果否,则根据支付密码或手机号码进行身份验证,将通过身份验证的客户端设备唯一标识添加到所述常用设备列表中。

较佳地,所述装置还包括:

初始登录单元203,在身份登录之前,根据从客户端接收的账户名称和登录密码进行初始登录的确认。

较佳地,所述装置还包括:

绑定单元204,将账户名称与支付密码和/或手机号码进行绑定;

当所述绑定单元204将账户名称与支付密码和手机号码进行绑定时,则所述身份登录单元202,根据支付密码或手机号码进行身份验证;

当所述绑定单元204将账户名称与支付密码进行绑定时,则所述身份登录单元202,根据支付密码进行身份验证;

当所述绑定单元204将账户名称与手机号码进行绑定时,则所述身份登录单元202,根据手机号码进行身份验证;

当身份验证时,所述绑定单元204未将账户名称与支付密码和手机号码进行绑定,则接收客户端发送的手机号码,并将所述客户端发送的手机号码与账户名称进行绑定。

较佳地,该装置还包括:

管理单元205,接收包括恶意账户的提醒消息,所述提醒消息携带所述恶意账户名称和该恶意账户名称下的客户端设备唯一标识;根据所述提醒消息将基于该恶意账户名称下客户端设备唯一标识的登录态删除。

基于同样的发明构思,本申请还提出一种电子设备。参见图3,图3为本申请实施例中电子设备的硬件结构示意图。

图3中所示的电子设备包括至少一个中央处理器301、存储器302。所述存储器302和所述至少一个中央处理器301通过总线连接,所述存储器302用于存储计算机指令,当所述电子设备运行时,所述至少一个中央处理器301执行所述存储器302存储的计算机指令,使得所述电子设备执行如图1所示的方法流程。

基于同样的发明构思,本申请还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemoryram)等。

综上所述,本申请通过验证客户端设备唯一标识,一旦出现常用设备列表中该客户端设备唯一标识为空的情况,就进行相应的身份验证流程,从而提供了安全可靠便捷的设备管理流程,最大程度的降低用户账户跨设备登录账号被盗风险,进一步提高用户账户安全性。另外,当识别出用户当前设备存在风险时,可以通过eid踢人操作,将恶意用户从常用设备列表中删除,进一步避免给用户造成财产损失。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

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