CN114553445A - 设备方法、装置、电子设备及可读存储介质 - Google Patents
设备方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN114553445A CN114553445A CN202011247792.4A CN202011247792A CN114553445A CN 114553445 A CN114553445 A CN 114553445A CN 202011247792 A CN202011247792 A CN 202011247792A CN 114553445 A CN114553445 A CN 114553445A
- Authority
- CN
- China
- Prior art keywords
- verification code
- server
- login
- dynamic
- login account
- 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
Images
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/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
Abstract
本申请实施例提供了一种设备登录方法、装置、电子设备及可读存储介质。该方法包括:获取第一设备发送的登录请求,登录请求包括登录账号;获取与登录账号对应的目标身份验证标识,并根据身份验证标识生成第一动态验证码;获取第一设备发送的第二动态验证码,其中,第二动态验证码是由第二服务器基于登录账号对应的目标身份验证标识生成并提供给第一设备的;根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证。在本申请实施例中。本申请实施例中,对于网络质量的要求较低,不必集中在后台服务器(或智能卡)中进行验证,提升了安全性,并且采用动态验证码相比于输入的密码更加复杂,不容易破解,可以进一步的提升安全性。
Description
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种设备方法、装置、电子设备及可读存储介质。
背景技术
目前,在Linux(一种计算机操作系统)下账号登录服务器的方式一般为通过密码或者公私钥方式进行登录。但是,经发现在采用密码方式登录时,由于只需要记住用户名和静态密码即可登录,此方式很容易破解,存在一定的安全隐患;而采用密码方式登录时,由于是将生成的公钥放置在后台目标服务器上,如果要同时登录多台主机,则要生成多对密钥对,此时后台服务器上对于公钥的管理将非常复杂,而且一旦后台目标服务器中的密钥被盗窃,将会造成非常大的危害。
发明内容
本申请涉及一种设备方法、装置、电子设备及可读存储介质,能够在账号登录时,不必集中在后台服务器(或智能卡)中进行验证,提升了安全性。
一方面,本申请实施例提供了一种登录方法,该方法包括:
获取第一设备发送的登录请求,登录请求包括登录账号;
获取与登录账号对应的目标身份验证标识,并根据目标身份验证标识生成第一动态验证码;
获取第一设备发送的第二动态验证码,其中,第二动态验证码是由第二服务器基于登录账号对应的目标身份验证标识生成并提供给第一设备的;
根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证。
另一方面,本申请实施例提供了一种登录方法,该方法包括:
接收第一设备发送的验证码获取请求,验证码获取请求包括登录账号,验证码获取请求是第一设备向第一服务器发送登录请求时生成的;
获取登录账号对应的目标身份验证标识;
基于登录账号对应的目标身份验证标识生成第二动态验证码并提供给第一设备,以使第一设备将第二动态验证码至第一服务器,以使第一服务器根据第二动态验证码,对登录请求进行验证。
再一方面,本申请实施例提供了一种设备登录装置,运行于第一服务器,该装置包括:
请求获取模块,用于获取第一设备发送的登录请求,登录请求包括登录账号;
身份验证标识获取模块,用于获取与登录账号对应的目标身份验证标识,并根据目标身份验证标识生成第一动态验证码;
验证码获取模块,用于获取第一设备发送的第二动态验证码,其中,第二动态验证码是由第二服务器基于登录账号对应的目标身份验证标识生成并提供给第一设备的;
验证模块,用于根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证。
又一方面,本申请实施例提供了一种设备登录装置,运行于第二服务器,该装置包括:
请求获取模块,用于接收第一设备发送的验证码获取请求,验证码获取请求包括登录账号,验证码获取请求是第一设备向第一服务器发送登录请求时生成的;
身份验证标识获取模块,用于获取登录账号对应的目标身份验证标识;
验证码生成模块,用于基于登录账号对应的目标身份验证标识生成第二动态验证码并提供给第一设备,以使第一设备将第二动态验证码至第一服务器,以使第一服务器根据第二动态验证码,对登录请求进行验证。
另一方面,本申请实施例提供了一种电子设备,包括处理器以及存储器:存储器被配置用于存储计算机程序,计算机程序在由处理器执行时,使得处理器登录方法。
再一方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机程序,当计算机程序在计算机上运行时,使得计算机可以执行上述登录方法。
本申请实施例提供的技术方案带来的有益效果是:
在本申请实施例中,当在第一服务器中登录账号时,可以获取与登录账号对应的目标身份验证标识,并根据目标身份验证标识生成第一动态验证码、以及获取第二服务器基于登录账号生成的第二动态验证码,然后根据第一动态验证码和第二动态验证码确定能否在第一服务器中登录账号。可见,本申请实施例中第一服务器仅需要从第二服务器获取动态验证码即可通过自身进行验证,此时对于网络质量的要求较低,并且不必集中在后台服务器(或智能卡)中进行验证,即使后台服务器(或智能卡)存在问题、以及存在其他服务器冒充后台服务器的情况时,也可以完成验证,提升了安全性,并且采用动态验证码相比于输入的密码更加复杂,不容易破解,可以进一步的提升安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的相关技术中一种设备方法的示意图;
图2为本申请实施例提供的相关技术中另一种设备方法的示意图;
图3为本申请实施例提供的一种设备方法所适用的系统架构示意图;
图4为本申请实施例提供的一种设备方法的流程示意图;
图5为本申请实施例提供的一种确定身份验证标识的示意图;
图6为本申请实施例提供的另一种确定身份验证标识的示意图;
图7为本申请实施例提供的另一种设备方法的流程示意图;
图8为本申请实施例提供的另一种设备方法所适用的系统架构示意图;
图9为本申请实施例提供的一种运维Web页面的示意图;
图10为本申请实施例提供的一种新增Token种子页面示意图;
图11为本申请实施例提供的一种显示动态验证码页面的示意图;
图12为本申请实施例提供的一种PAM配置文件的示意图;
图13a为本申请实施例提供的一种登录目标机器A方法的代码示意图;
图13b为本申请实施例提供的一种登录目标机器A方法的流程示意图;
图14为本申请实施例提供的一种设备登录装置的结构示意图;
图15为本申请实施例提供的一种设备登录装置的结构示意图;
图16为本申请实施例提供的一种第一设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
相关技术中,在Linux下账号登录服务器存在多中登录方式,如可以包括密码方式、公私钥方式、指定服务器(如铁将军服务器)或通过智能卡生成动态密码等方式进行登录。其中,在采用密码方式登录时,如图1 所示,第一设备向对应的服务器发送连接请求,服务器向第一设备发送公钥,第一设备使用公钥将密码加密并发送至服务器,服务器采用私钥解密,解密成功时则账号登录成功;而通过公私钥方式的方式可以如图2所示,首先是第一设备生成账号对应的一对密钥(公钥和私钥),并将公钥放置在后台服务器上(即图中的连接请求和公钥),目标服务器验证公钥,如果验证成功则向第一设备发送采用公钥加密后的消息(即一段challenge),第一设备使用私钥对接收到的challenge解密,并将解密后的challenge发送至服务器,服务器对接收到的challenge进行验证。
但是,在采用密码方式登录时,只需要记住用户名和静态密码即可登录,但是此方式容易被破解,可能会有别的服务器在冒充真正的服务器,存在安全隐患;而采用密码方式登录时是生成一对密钥(公钥和私钥),并将公钥放置在后台目标服务器上,如果要登录多台主机,则要生成多对密钥对,此时后台服务器上的公私钥的管理将非常复杂,而且一旦私钥被盗窃,危害将非常大;而基于指定服务器(如铁将军服务器)进行登录时,用户通过PIN+TOKEN(个人标识+令牌)登录跳板机之后,后续登录到各目标服务器时不需要再输入任何密码,只需要敲入地址信息就可以基于铁将军服务器实现实名登录,但是由于该方式对铁将军服务器可用性和网络要求高。如果服务器连接不上铁将军服务器,则无法登录,同时还会伴有一定的网络延迟;并且铁将军服务器是系统关键节点,如果铁将军服务器发生故障则无法登录任何服务器;而通过智能卡生成动态密码的方式中生成动态密码的Token种子是不变化的,一旦智能卡中种子和算法泄露,便会存在安全隐患,并且由于是将Token种子和算法写入硬件智能卡,此时是集中式的校验身份,一旦认证服务器出问题,则无法校验身份。
基于此,本申请实施例提供一种登录方法、装置、电子设备及可读存储介质,旨在解决现有技术中存在的部分或全部技术问题。
可选的,在本申请实施例中,第一服务器可以根据登录账号对应的身份验证标识生成第一动态验证码、并根据第一动态验证码以及第二服务器基登录账号对应的身份验证标识生成的第二动态验证码对登录账号进行登录验证。其中,该第一服务器和第二服务器可以为是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器,该服务器可以通过有线或无线通信方式与终端设备进行直接或间接地连接,本申请在此不做限制;而终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、等,但并不局限于此。
可选的,本申请实施例中所涉及到的数据处理/计算等可以通过云计算的方式实现,实施例中所涉及到的数据的存储可以采用云存储的方式。云计算(cloud computing)是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT 和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(UtilityComputing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
首先对本申请实施例涉及的几个名词进行介绍和解释:
Token:令牌,一般显示为6位动态数字,并且每30秒、1分钟或2 分钟或者其它设定时长内变化一次,可用于敏感操作时校验身份,并且分为软件令牌或硬件令牌。而输出Token验证码时,可以基于Token种子根据预设的加密算法,计算得到Token验证码。
跳板机:也称堡垒机,是一类可作为跳板批量操作远程设备的网络设备,是系统管理员或运维人员常用的操作平台之一。
如图3所示,本申请实施例中所提供的一种登录方法所适用的系统架构图,该系统架构图中包括跳板机10、目标机器11、和运维服务器12。其中,在用户登录目标机器11时,跳板机10接收到用户的登录请求时,可以向目标机器11发送登录请求、以及向运维服务器12发送验证码获取请求,目标机器11获取与登录账号对应的目标身份验证标识,并根据目标身份验证标识生成第一动态验证码,运维服务器12获取登录账号对应的目标身份验证标识,然后基于登录账号对应的目标身份验证标识生成第二动态验证码并提供给跳板机10,跳板机10将第二动态验证码发送至目标机器11,目标机器11根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证。
如图4所示,本申请实施例中所提供的一种登录方法的流程示意图,该方法可以由第一服务器执行,该方法可以包括:
步骤S101,获取第一设备发送的登录请求,登录请求包括登录账号。
在本申请可选的实施例中,第一设备为第一服务器所对应的终端设备;或者,第一设备为代理服务器,第一服务器所对应的终端设备通过代理服务器与第一服务器通信。
其中,第一服务器可以为图3中的目标机器,第一设备可以指的是第一服务器所对应的终端设备,如可以包括但不限于PC(personal computer,个人计算机)、智能手机等,第一设备也可以是作为中间节点的网络设备 (如跳板机、代理服务器)等,本申请实施例对此不限定。
可选的,当第一设备为第一服务器所对应的终端设备时,当用户需要登录第一服务器时,用户可以触发登录触发操作,该登录触发操作中包括第一服务器的标识(如IP(Internet Protocol,互联网协议)地址)和登录账号,终端设备在接收到该登录触发操作后,根据包括的第一服务器的标识向第一服务器发送登录账号的登录请求,该登录请求中包含登录账号。
当第一设备为作为中间节点的网络设备时,此时用户可以在终端设备触发登录触发操作并发送至网络设备,该登录触发操作中包括第一服务器的标识(如IP地址)和登录账号,网络设备接收到登录触发操作时,根据第一服务器的标识确定对应的服务器,并发送包括登录账号的登录请求。
步骤S102,获取与登录账号对应的目标身份验证标识,并根据身份验证标识生成第一动态验证码。
可选的,第一服务器可以预先存储各登录账号的身份验证标识,如预先存储有登录账号1的身份验证标识A、以及登录账号2的身份验证标识 B等。当第一服务器接收到第一设备发送的登录请求时,可以获取登录请求中包括的登录账号所对应的目标身份验证标识,然后根据获取到的该目标身份验证标识生成第一动态验证码,该第一动态验证码用于对本次接收到的登录请求进行验证。
在本申请可选的实施例中,根据目标身份验证标识生成第一动态验证码,包括:
获取验证码有效时长;
根据验证码有效时长、登录请求对应的请求时间、以及目标身份验证标识,生成第一动态验证码,其中,在验证码有效时长内生成的对应于目标身份验证标识的动态码一致。
其中,登录请求对应的请求时间指的是第一服务器获取到第一设备发送登录请求时所对应的时间;验证码有效时长指的是一个验证码的有效持续时长,该验证码有效时长可以根据实际需求预先设置,如可以将验证码有效时长设置为30秒、1分钟或2分钟等。本申请实施例对此不限定。
可选的,在第一服务器根据目标身份验证标识生成第一动态验证码时,可以获取验证码有效时长以及登录请求对应的请求时间,然后根据获取到的验证码有效时长、登录请求对应的请求时间以及目标身份验证标识生成第一动态验证码。其中,根据验证码有效时长、登录请求对应的请求时间、以及目标身份验证标识,生成第一动态验证码的具体实现方式可以预先配置,本申请是实施例不限定。
其中,为了保证在验证码有效时长所生成的动态验证码不产生变化,该时长一般相对较短,如为30秒或1分钟等。而在需要基于登录请求所对应的请求时间和登录账号对应的目标身份验证标识来生成第一动态验证码时,但是由于第二服务器生成第二动态验证码所依据的时间信息是与登录请求时所对应的请求时间是不同的,进而第一服务器和第二服务器生成的动态验证码也将是不同的,此时将无法完成验证,因此第一服务器可以根据验证码有效时长对登录请求对应的请求时间进行调整,得到调整后的请求时间,然后基于调整后的请求时间和目标身份验证标识,得到第一动态验证码。可选的,基于调整后的请求时间和目标身份验证标识,得到第一动态验证码的方式本申请实施例不限定,例如,可以基于调整后的请求时间和目标身份验证标识进行哈希运算,得到第一动态验证码。其中,第一动态验证码和第二动态验证码的生成方式是相同的,是第一服务器和第二服务器预先约定好的,即在第一服务器中配置的动态验证码生成算法和在在第二服务器中配置的动态验证码生成算法相同的。
在一示例中,假设验证码有效时长为30秒,此时为了达到在验证码有效时长30秒内不变,则在获取到请求时间的时候可以把请求时间的秒数按照30秒向下取整,比如假设请求时间在15:10:00至15:10:29时,此时可以将请求时间调整为15:10:00,而请求时间在15:10:30至15:10:59 内时,可以将请求时间调整为15:10:01,进而可以保证在30秒周期内计算出的动态码不变,而当验证码有效时长为1分钟或其它时长时则与30 秒同理,在此就不再赘述。
在本申请实施例中,由于生成的动态验证码是在验证码有效时长内不变化,过期后所产生的动态验证码是将发生变化,此时对应登录请求的验证将无法通过,降低了泄露风险,并且相比于静态密码和公私钥登录方式更加安全。
步骤S103,获取第一设备发送的第二动态验证码,其中,第二动态验证码是由第二服务器基于登录账号对应的目标身份验证标识生成并提供给第一设备的。
可选的,第二服务器中可以预先存储各登录账号对应的目标身份验证标识,第二服务器可以根据登录账号对应的目标身份验证标识生成第二动态验证码并提供给第一设备,然后由第一设备将第二动态验证码发送至第一服务器,以使第一服务器根据第一动态验证码和第二动态验证码对登录请求进行验证。
在本申请可选的实施例中,第二动态验证码是第二服务器通过以下方式生成的:
接收第一设备发送的验证码获取请求,验证码获取请求包括登录账号;
响应于验证码获取请求,获取登录账号对应的目标身份验证标识;
基于登录账号对应的目标身份验证标识生成第二动态验证码。
可选的,第二服务器中可以预先存储各登录账号对应的各身份验证标识,第一设备在接收到账号登录触发操作时,还可以向第二服务器发送验证码获取请求,该验证码获取请求中包括登录账号;相应的,第二服务器接收到验证码获取请求时,可以获取与验证码获取请求中包括的登录账号对应的目标身份验证标识,然后根据登录账号对应的目标身份验证标识生成第二动态验证码。
其中,第二服务器根据登录账号对应的目标身份验证标识生成第二动态验证码的方式与第一服务器根据登录账号对应的目标身份验证标识生成第一动态验证码的方式的原理相同。例如,获取验证码有效时长,然后根据验证码有效时长、动态验证码获取请求验证码获取请求对应的请求时间、以及目标身份验证标识,生成第二动态验证码。其中,动态验证码获取请求验证码获取请求对应的请求时间指的是第二服务器接收到服务器动态验证码获取请求验证码获取请求所对应的时间。可选的,为了保证了有效时长内生成的对应于目标身份验证标识的动态码一致,第二服务器也需要根据验证码有效时长对验证码获取请求对应的请求时间获取请求所对应的时间进行调整,然后根据调整后的时间以及身份验证标识,生成第二动态验证码。
在本申请可选的实施例中,验证码获取请求还包括第一服务器的标识;获取登录账号对应的身份验证标识,包括:
获取登录账号对应的映射关系,映射关系为各身份验证标识、以及每个身份验证标识对应的服务器标识之间的对应关系;
基于第一服务器的标识和所述映射关系,将第一服务器的标识所对应的身份验证标识确定为目标身份验证标识。
可选的,身份验证标识可以是唯一标识一个登陆账号,即不同的登录账号对应的身份验证标识是不同的,身份验证标识与登录账号一一对应,此时所需要管理以及存储的身份验证标识相对较多,管理难度较大,存储资源占用较多。基于此,在本申请实施例中,不同的登录账号对应的身份验证标识也可以是相同的,此时每个登录账号可以存在对应的映射关系,该映射关系为登录账号的各身份验证标识、以及每个身份验证标识与对应的服务器标识之间的对应关系,此时只要保证登录同一个服务器的各登陆账号的身份验证标识不同即可,此时相比于各登录账号对应的身份验证标识均是不同时,所需要管理以及存储的身份验证标识相对较少,降低了管理难度,存储资源占用较少。例如,假设存在登录账号A和登录账号B,第一服务器1和第一服务器2,此时登录账号A对应于第一服务器1的身份验证标识可以为1,登录账号A对应于第二服务器1的身份验证标识可以为5,此时只要保证登录账号B对应于第一服务器1的身份验证标识不是1、登录账号B对应于第二服务器2的身份验证标识不是5即可。
相应的,当不同的登录账号对应的身份验证标识存在的相同情况时,第一设备向第二服务器发送的验证码获取请求中还可以包括第一服务器的标识,此时第二服务器可以先确定登录账号对应的各身份验证标识,然后基于该登录账号对应的映射关系,从对应的各身份验证标识中确定出对应于第一服务器的标识的身份验证标识,并将该身份验证标识作为登录账号对应的目标身份验证标识。
步骤S104,根据第一动态验证码和第二动态验证码,对登录请求进行验证,在验证成功时在第一服务器中登录该登录账号。
可选的,第一服务器可以根据第一动态验证码和第二动态验证码对针对于登录账号的登录请求进行验证,当验证成功时可以在第一服务器中登录该登录账号。
在本申请可选的实施例中,根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证,包括:
若第一动态验证码和第二动态验证码相同,用该登录账号登录第一服务器;
若第一动态验证码和第二动态验证码不相同,则验证失败,并向登录请求对应的终端设备提供登录失败提示消息。
可选的,当第一动态验证码和第二动态验证码相同时,则为验证成功,此时可以允许在第一服务器中登录账号;相反,若第一动态验证码和第二动态验证码不相同,说明本次登录可能存在安全隐患,此时为验证失败,并可以提示登录失败消息,已告知用户本次无法登录该账号。
可选的,通过提示登录失败消息告知用户无法在第一服务器中登录账号时,第一服务器可以向第一设备返回登录失败消息,由第一设备提供给用户。可选的,当第一设备为作为中间节点的网络设备时,网络设备接收到登录失败消息时,将该登录失败消息发送至第一服务器对应的终端设备,由该终端设备将该登录失败消息提供给用户。其中,终端设备将该登录失败消息提供给用户的具体实现方式本申请实施例不限定。如可以通过终端设备显示提示信息的方式或者语音播放的方式等。
在本申请实施例中,当在第一服务器中登录账号时,可以获取与登录账号对应的目标身份验证标识,并根据目标身份验证标识生成第一动态验证码、以及获取第二服务器基于登录账号生成的第二动态验证码,然后根据第一动态验证码和第二动态验证码确定能否在第一服务器中登录账号。可见,本申请实施例中第一服务器仅需要从第二服务器获取动态验证码即可通过自身进行验证,此时对于网络质量的要求较低,并且相比于相关技术中的方式,不必集中在后台服务器(或智能卡)中进行验证,即使后台服务器(或智能卡)存在问题、以及存在其他服务器冒充后台服务器的情况时,也可以完成验证,提升了安全性,并且采用动态验证码相比于输入的密码更加复杂,不容易破解,可以进一步的提升安全性。
在本申请可选的实施例中,该方法还包括:
若不存在与登录账号对应的目标身份验证标识,则展示用户输入登录账号的登录密码的提示消息,以通过登录账号和登录密码在第一服务器中登录该登录账号。
可选的,在实际应用中的,当第一服务器没有获取到与登录账号对应的目标身份验证标识时,而为了保证登录账号可以在第一服务器中登录,则可以采用密码的方式登录,此时第一服务器可以向第一设备发送提示用户输入登录账号的登录密码的提示消息,第一设备接收到该提示消息时,若第一设备为终端设备,则可以显示输入密码的界面,以使用户根据该输入密码的界面输入登录账号对应的密码,而当可以第一设备为网络设备时,则第一设备可以向对应的终端设备发送显示输入密码界面的消息,以使用户可以根据输入密码界面输入登录账号对应的密码;相应的,第一设备在接收到用户输入的对应于登录账号的密码后,将用户输入的密码发送至第一服务器,第一服务器根据接收到的用户输入的密码对登录请求进行验证。
在本申请可选的实施例中,该方法还包括:
接收第二服务器发送的针对该登录账号的身份验证标识更新消息;
根据身份验证标识更新消息对登录账号对应的目标身份验证标识进行更新并存储更新后的身份验证标识。
其中,身份验证标识更新消息表征了第二服务器已对该登录账号的目标身份验证码进行了更新,通过该身份验证标识更新消息可以知晓该登录账号更新后的身份验证码。在实际应用中,为避免因时间过长造成身份验证标识泄漏带来的安全隐患,第二服务器还可以对该登录账号对应的目标身份验证标识进行更新,可选的,对于每个登录账号的目标身份验证标识可以存在对应的更新周期,如一个月更新一次,当某个登录账号的目标身份验证标识达到对应的更新周期时,第二服务器可以对该登录账号的目标身份验证标识进行更新,得到更新后的身份验证标识并将向第一服务器发送针对该登录账号的身份验证标识更新消息,该身份验证标识更新消息内可以包括更新后的身份验证标识,相应的,第一服务器可以根据身份验证标识更新消息对登录账号对应的目标身份验证标识进行更新,并存储更新后的身份验证标识。
在本申请实施例中,由于在进行登录验证的过程中并不需要第一服务器和第二服务器进行通信,仅是在身份验证标识更新时进行通信,此时第一服务器和第二服务器需要实时强在线,对于网络质量要求较低,可以更好的满足实际需求。
在本申请可选的实施例中,身份验证标识可以包括Token种子。
其中,Token种子预先约定好的,用来区分登录账号的一个验证密钥。
可选的,在本申请实施例中,对于每个登录账号所对应的目标身份验证标识可以是第一服务器和第二服务器进行协商确定的,而第一服务器和第二服务器进行协商确定目标身份验证标识的实现方式,本申请实施例并不限定。例如,可以采用基于非对称加密RSA(公钥加密)算法、基于专用密钥交换算法(常见有DH(Diffie-Hellman,密钥交换)、ECDH(Elliptic Curve Diffie–Hellman key Exchange,椭圆曲线迪菲-赫尔曼秘钥交换)) 以及基于共享的secret(基础)算法(常见有PSK(pre-shared key,预共享密钥),SRP(安全远程密码,Security Remote Password))等。
在一示例中,假设协商确定目标身份验证标识采用RSA算法协商确定目标身份验证标识时,具体的协商过程可以如图5所示。第一服务器(即图中的目标机器PAM模块)可以向第二服务器(即图中的运维Server) 发请求,第二服务器将自己的公钥(即Puk)发送至第一服务器,第一服务器产生Token种子(seed),并用公钥加密Token种子得到SK_Enc(加密后的Token种子)并发至第二服务器,第二服务器收到SK_En后,采用自己的私钥(Prk)解密,若解密成功则得到Token种子,并向第一服务器返回成功下次,以及将Token种子与登录账号关联存储。
在又一示例中,假设协商确定目标身份验证标识采用DH算法协商确定目标身份验证标识时,具体的协商过程可以如图6所示。第一服务器(即图中的目标机器PAM模块)生成一个较大的素数,一个任意数G以及一个随机数a,根据表达式A=Ga mod P得到A,然后向第二服务器发送P、 G和A,第二服务器(即图中的运维Server)在接收到P、G和A后生成随机数b,然后根据表达式B=Gb mod P得到B并发送至第一服务器,此时第一服务器根据表达式seed=Ba mod P得到Token种子,第二服务器根据表达式seed=Ab mod P得到Token种子(即图中的双方计算得到Token 种子)。
如图7所示,本申请实施例中所提供的一种登录方法的流程示意图,该方法由第二服务器执行,该方法可以包括:
步骤S201,接收第一设备发送的验证码获取请求,验证码获取请求包括登录账号,验证码获取请求是第一设备向第一服务器发送登录请求时生成的。
其中,关于第一设备的说明可以参见前文描述,在此就不再赘述。可选的,第一设备在接收到账号登录触发操作时,可以向第一服务器发送登录请求,以及可以向第二服务器发送验证码获取请求,该验证码获取请求中包括登录账号,以从第二服务器获取登录账号对应的第二登录账号。
步骤S202,获取登录账号对应的目标身份验证标识。
在本申请可选的实施例中,第二服务器中存储有各登录账号与各登录账号各自所对应的目标身份验证标识的对应关系,获取登录账号对应的目标身份验证标识,包括:
根据登录账号对应的账号标识以及该对应关系,获取登录账号对应的目标身份验证标识。
可选的,第二服务器中可以预先存储有每个登录账号的标识与所对应的目标身份验证标识的对应关系,第二服务器接收到验证码获取请求时,可以获取与验证码获取请求中包括的登录账号,此时以根据该登录账号的标识和存储的各对应关系,确定该登录账号对应的目标身份验证标识。
步骤S203,基于登录账号对应的目标身份验证标识生成第二动态验证码并提供给第一设备,以使第一设备将第二动态验证码至第一服务器,以使第一服务器根据第二动态验证码,对登录请求进行验证。
可选的,第二服务器获取登录账号对应的目标身份验证标识后,可以根据登录账号对应的目标身份验证标识生成第二动态验证码并提供给第一设备;相应的,第一设备接收到第二验证码后,可以将第二动态验证码至第一服务器,以使第一服务器根据第二动态验证码,对登录请求进行验证。
在本申请可选的实施例中,基于登录账号对应的目标身份验证标识生成第二动态验证码,包括:
获取验证码有效时长;
根据验证码有效时长、验证码获取请求对应的请求时间、以及目标身份验证标识,生成第二动态验证码,其中,在有效时长内生成的对应于目标身份验证标识的动态码一致。
其中,动态验证码获取请求验证码获取请求对应的请求时间指的是第二服务器接收到动态验证码获取请求验证码获取请求时的所对应的时间,而第二服务器根据登录账号对应的目标身份验证标识生成第二动态验证码的方式与第一服务器根据登录账号对应的目标身份验证标识生成第一动态验证码的方式的原理相同。具体的,第二服务器获取验证码有效时长,然后根据验证码有效时长、动态验证码获取请求验证码获取请求对应的请求时间、以及目标身份验证标识,生成第二动态验证码。其中,动态验证码获取请求验证码获取请求对应的请求时间指的是第二接收到服务器动态验证码获取请求验证码获取请求所对应的时间。可选的,为了保证了有效时长内生成的对应于目标身份验证标识的动态码一致,第二服务器也需要根据验证码有效时长对获取请求所对应的时间进行调整,然后根据调整后的时间以及目标身份验证标识,生成第二动态验证码。
在本申请可选的实施例中,该方法还包括:
更新登录账号信息对应的目标身份验证标识,得到更新后的身份验证标识;
向第一服务器发送身份验证标识更新消息,身份验证标识更新消息包括更新后的身份验证标识,以使第一服务器根据身份验证标识更新消息对登录账号信息对应的目标身份验证标识进行更新。
其中,身份验证标识更新消息用于表征第二服务器对该登录账号的目标身份验证标识进行了更新,通过该身份验证标识更新消息可以知晓该登录账号更新后的身份验证码。在实际应用中,第二服务器还可以对该登录账号对应的目标身份验证标识进行更新,有效避免因时间过程造成身份验证标识泄漏带来的安全隐患。可选的,对于每个登录账号的目标身份验证标识可以存在对应的更新周期,如一个月更新一次,当某个登录账号的目标身份验证标识达到对应的更新周期时,可以对该登录账号的目标身份验证标识进行更新,得到更新后的身份验证标识并将向第一服务器发送针对该登录账号的身份验证标识更新消息,该身份验证标识更新消息内可以包括更新后的身份验证标识,以使第一服务器根据身份验证标识更新消息对登录账号对应的目标身份验证标识进行更新并存储更新后的身份验证标识。其中,对登录账号的目标身份验证标识进行更新的方式与第二服务器生成登录账号的目标身份验证标识的方式相同,具体可参见前文中关于第二服务器生成登录账号的目标身份验证标识的说明,再次就不再赘述。
可选的,为了更好的理解本申请实施例所提供的方法,下面结合图8 所示的系统架构图对该方法进行说明。在本示例中,不同的登录账号对应的身份验证标识可能相同,该架构图中包括了第一设备(图中跳板机为例)、两个第一服务器(即图中的目标机器A和目标机器B)以及包括第二服务器(即图中的运维服务器(运维Server))的运维平台。其中,目标机器A和目标机器B内分别部署PAM(Pluggable Authentication Modules,可动态加载验证)模块,PAM模块负责在本机上校验动态验证码、负责与运维平台中的运维Server协商Token种子(即确定登录账号对应的目标身份验证标识)。其中,PAM模块校验动态验证码,不需要与运维平台中的运维Server联网,而协商Token种子时需要与运维平台中的运维Server联网。运维平台由三个模块组成,分别是运维网页(即运维 Web)、Token种子数据库((Data Base,DB)、运维Server(即第二服务器)。其中:
运维Web:负责将运维Server计算得到第二动态验证码通过PC或网页提供给用户、通过提供PC或网页以使运维人员为第一服务器的本地账户初始化Token种子、与第一服务器自动化协商Token种子、以及支持运维人员手动在页面上进行Token种子操作。Token种子数据库:存储各登录账号对应于的Token种子,Token种子由运维Server写入,供运维Web 读取并计算动态码。运维Server:负责与目第一服务器协商Token种子、接收运维人员在运维Web上触发的协商Token种子或定时协商种子的命令并执行。
作为一个示例,图9中示出了一种可选的运维Web页面的示意图,如图8所示,其能够展示哪些账号已经有Token种子、Token创建时间,可以实现新增Token种子、查看动态验证码、编辑、删除、强制协商种子等功能。当新增Token种子时,可以基于如图10所示的界面实现,该界面中包括输入第一服务器标识的输入选项(即图中的“*机器IP”)、输入需要新增Token种子的账号的选项(即图中的*账户名称)以及Token 种子的更新频率选项(图中以一周一次、一月一次、和其他3个选项为例),以及“确定”和“取消”两个虚拟按钮。其中,图中所示的“*机器IP”选项用于输入登录账号的Token种子所对应的服务器标识,“*账户名称”用于输入需要生Token种子的账号,基于图10中所示的用户界面可以生成登录账号所对应的Token种子。具体的,假设用户想要生成账号A对应于目标机器1的Token种子,用户可以在“*机器IP”输入目标机器1 的IP,在*账户名称”输入账号A的名称,户点击“确定”时,运维Server 将与目标机器1执行协商Token种子功能,即执行生成账号A对应于目标机器1的Token种子的功能,当用户点击“取消”时,则取消本次新增 Token种子操作。可选的,当运维Server计算得到第二动态验证码并通过运维Web页面展示时的界面如图11所示,如显示633815,并通过进度条的方式显示该第二动态验证码的有效时长。
可选的,当需要在目标机器A中登录账号时,跳板机可以登录运维 Web获取第二动态密码(即图中的登录运维Web查看动态码),然后将第二动态码根据目标机器A的地址,并采用ssh协议传输至目标机器A(即图8中的ssh user@A_ip、输入动态码、登录A),相应的,目标机器A 中的PAM模块根据接收到的第二动态码、以及自身生成的第一动态码进行验证(即图8中目标机器A的本机PAM模块校验),以确定是否在目标机器A中登录账号。同理,在目标机器A中登录账号时,跳板机可以登录运维Web获取第二动态密码(即图8中的登录运维Web查看动态码),然后将第二动态码根据目标机器B的地址采用ssh协议传输至目标机器B (即图8中的ssh user@B_ip、输入动态码、登录B),相应的,目标机器 B中的PAM模块根据接收到的第二动态码、以及自身生成的第一动态码进行验证(即图8中目标机器B的本机PAM模块校验)。可选的,目标机器A和目标机器B与运维平台中的运维Server保持若在线,进而实现一周或一个月对登录账号的Token种子进行更新(即图8中一周或一个月协商Token种子)。
在本申请实施例中,由于可以在第一服务器中部署PAM模块,并基于PAM模块来实现动态验证码的验证,因此可以按需要动态的对验证的内容进行变更,提高了验证的灵活性。
作为一个示例,图12中示出了一种PAM模块的PAM配置文件的示意图,图中的第一列代表模块类型(如包括auth(表示鉴别类接口模块类型用于检查用户和密码,并分配权限)、account(表示账户类接口,主要负责账户合法性检查,确认帐号是否过期,是否有权限登录系统等)、 session(会话类接口,实现从用户登录成功到退出的会话控制)、password(口令类接口,控制用户更改密码的全过程)等类型)模块类型用于说明 PAM模块的认证鉴别接口类型,第二列代表控制标记(如为required(表示所涉及模块的成功是用户通过鉴别的必要条件)、Requisite(表示只有带此标记的模块返回成功后,用户才能通过鉴别)、sufficient(表示所涉及模块验证成功是用户通过鉴别的充分条件)或optional(表示表示即便该行所涉及的模块验证失败用户仍能通过认证)等),其用于说明如何处理PAM模块鉴别认证的结果,第三列代表模块路径,其用于说明所使用模块的全路径名称,此外,配置文件还可以包括模块参数,该模块参数用于向特定模块传递相关的选项,然后由模块分析解释这些选项。可选的,本申请实施例中可以选择模块类型为auth、控制标记为sufficien、模块路径为pam_token.so,并将其添加至PAM的配置文件中。例如,如图12所示,可以在PAM的配置文件的第一行中增加auth、sufficient和 pam_token.so。其中,其中auth模块用于对用户的身份进行识别,如提示用户输入密码等;sufficient表示如果通过这个模块验证,PAM模块即返回验证成功信息,后面的模块便不再执行;pam_token.so判断此时登录的账号是否有Token种子,有则提示输入动态码,无则提示输入普通密码,以及校验输入的动态码code是否正确,此时auth ufficient pam_token.so 则表示是通过pam_token.so的校验后,后面的验证不需要执行。
可选的,为了更好的理解本申请实施例所提供的方法,下面对该方法进行详细说明。在本示例中,第一设备为跳板机、第一服务器为目标机器 A、目标机器A中部署PAM模块、用户可以先基于账号登录跳板机,然后通过跳板机在目标机器A中登录账号。其中,基于账号登录跳板机可以如图8所示:
步骤1,用户通过跳板机将pin+token发送至铁将军服务器(铁将军 Server)(即pin+token);
步骤2,铁将军Server将接收到的pin+token发送至员工Token服务器(员工TokenServer),员工TokenServer对接收到的pin+token进行校验(即图中的校验pin+token);
步骤3,员工TokenServer向铁将军Server返回验证结果(即图中的返回验证结果);
步骤4,铁将军Server生成登录票据(ticket),并存储至票据数据库(Ticket DB)(即图中的生成登录票据ticket并存储);
步骤5,铁将军Server向跳板机返回登录成功消息(即图中的yes+ ticket)。
相应的,用户登录跳板机后,可以通过登录跳板机登录目标机器A,此时可以在跳板机上输入目标机器A的标识(如ssh root@A.ip),目标机器A提示输入动态码,用户从运维Web上查看动态密码并输入,以完成在目标机器A进行账号登录(完成该过程的代码可以如图13a所示)。而完成该过程的具体步骤可以如图13b所示:
步骤S1301,跳板机接收用户输入的登录账号和目标机器A的标识(如 A.ip);
步骤S1302,跳板机根据目标机器A的标识将登录账号发送至目标机器A;
步骤S1303,目标机器A的PAM模块查询本地有无登录账号对应的种子,有则向跳板机返回提示用户输入动态验证码的消息,没有则向跳板机返回提示用户输入普通密码的消息;
步骤S1304,用户在运维Web上查询第二动态验证码(该第二动态验证码是基于登录账号对应于目标机器A的身份验证标识生成的)并输入至跳板机对应的终端设备,以使跳板机接收到该第二动态验证码;
步骤S1305,跳板机将第二动态验证码发送至目标机器A;
步骤S1306,目标机器A的PAM模块根据登录账号对应于目标机器 A的身份验证标识和当前时间,计算出第一动态验证码,并比较是否和第二动态验证码相同,若相同则在目标机器A中登录账号,否则向跳板机返回登录失败消息。
本申请实施例提供了一种设备登录装置,如图14所示,该装置运行于第一服务器,该设备登录装置60可以包括:请求获取模块601、身份验证标识获取模块602、验证码获取模块603以及验证模块604,其中,
请求获取模块601,用于获取第一设备发送的登录请求,登录请求包括登录账号;
身份验证标识获取模块602,用于获取与登录账号对应的目标身份验证标识,并根据目标身份验证标识生成第一动态验证码;
验证码获取模块603,用于获取第一设备发送的第二动态验证码,其中,第二动态验证码是由第二服务器基于登录账号对应的目标身份验证标识生成并提供给第一设备的;
验证模块604,用于根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证。
可选的,验证码获取模块在根据目标身份验证标识生成第一动态验证码时,具体用于:
获取验证码有效时长;
根据验证码有效时长、登录请求对应的请求时间、以及目标身份验证标识,生成第一动态验证码,其中,在有效时长内生成的对应于目标身份验证标识的动态码一致。
可选的,该装置还包括消息提示模块,用于:
在不存在与登录账号对应的目标身份验证标识时,则展示用户输入登录账号的登录密码的提示消息,以通过登录账号和登录密码在第一服务器中登录该登录账号。
可选的,第二动态验证码是第二服务器通过以下方式生成的:
接收第一设备发送的验证码获取请求,验证码获取请求包括登录账号;
响应于验证码获取请求,获取登录账号对应的目标身份验证标识;
基于登录账号对应的目标身份验证标识生成第二动态验证码。
可选的,验证码获取请求还包括第一服务器的标识;第二服务器通过以下方式获取登录账号对应的目标身份验证标识:
获取登录账号对应的映射关系,该映射关系为各身份验证标识、以及每个身份验证标识与对应的服务器标识之间的对应关系;
基于第一服务器的标识和该映射关系,将第一服务器的标识所对应的身份验证标识确定为目标身份验证标识。
可选的,验证模块在根据第一动态验证码和第二动态验证码的比对结果,对登录请求进行登录验证时,具体用于:
若第一动态验证码和第二动态验证码相同,利用登录账号登录第一服务器;
若第一动态验证码和第二动态验证码不相同,则验证失败,并向登录请求对应的终端设备提供登录失败提示消息。
可选的,第一设备为第一服务器所对应的终端设备;或者,
第一设备为代理服务器,第一服务器所对应的终端设备通过代理服务器与第一服务器通信。
可选的,该装置还包括更新模块,用于:
接收第二服务器发送的针对登录账号的身份验证标识更新消息;
根据身份验证标识更新消息对登录账号对应的目标身份验证标识进行更新并存储更新后的身份验证标识。
本申请实施例提供了一种设备登录装置,如图15所示,该装置运行于第二服务器,该设备登录装置70可以包括:请求获取模块701、身份验证标识获取模块702以及验证码生成模块703,其中,
请求获取模块701,用于接收第一设备发送的验证码获取请求,验证码获取请求包括登录账号,验证码获取请求是第一设备向第一服务器发送登录请求时生成的;
身份验证标识获取模块702,用于获取登录账号对应的目标身份验证标识;
验证码生成模块703,用于基于登录账号对应的目标身份验证标识生成第二动态验证码并提供给第一设备,以使第一设备将第二动态验证码至第一服务器,以使第一服务器根据第二动态验证码,对登录请求进行验证。
可选的,该装置还包括更新模块,用于:
更新登录账号信息对应的身份验证标识,得到更新后的身份验证标识;
向第一服务器发送身份验证标识更新消息,身份验证标识更新消息包括更新后的身份验证标识,以使第一服务器根据身份验证标识更新消息对登录账号信息对应的目标身份验证标识进行更新。
可选的,验证码生成模块在基于登录账号对应的目标身份验证标识生成第二动态验证码时,具体用于:
获取验证码有效时长;
根据验证码有效时长、验证码获取请求对应的请求时间、以及目标身份验证标识,生成第二动态验证码,其中,在有效时长内生成的对应于目标身份验证标识的动态码一致。
本申请实施例的设备登录装置可执行本申请实施例提供的一种设备登录方法,其实现原理相类似,此处不再赘述。
本申请实施例提供了一种电子设备,如图16所示,图16所示的电子设备2000包括:处理器2001和存储器2003。其中,处理器2001和存储器2003相连,如通过总线2002相连。可选地,电子设备2000还可以包括收发器2004。需要说明的是,实际应用中收发器2004不限于一个,该电子设备2000的结构并不构成对本申请实施例的限定。
其中,处理器2001应用于本申请实施例中,用于实现图14和图15 所示的各模块的功能。
处理器2001可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器2001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线2002可包括一通路,在上述组件之间传送信息。总线2002可以是PCI总线或EISA总线等。总线2002可以分为地址总线、数据总线、控制总线等。为便于表示,图16中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器2003可以是ROM或可存储静态信息和计算机程序的其他类型的静态存储设备,RAM或者可存储信息和计算机程序的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储 (包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储或以数据结构形式的期望的计算机程序并能够由计算机存取的任何其他介质,但不限于此。
存储器2003用于存储执行本申请方案的应用程序的计算机程序,并由处理器2001来控制执行。处理器2001用于执行存储器2003中存储的应用程序的计算机程序,以实现图14和图15所示装置的动作。
本申请实施例提供了一种电子设备,包括处理器以及存储器:存储器被配置用于存储计算机程序,计算机程序在由处理器执行时,使得处理器上述实施例中的任一项方法。
本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机程序,当计算机程序在计算机上运行时,使得计算机可以执行上述实施例中的任一项方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
本申请中的一种计算机可读存储介质所涉及的名词及实现原理具体可以参照本申请实施例中的一种设备登录方法,在此不再赘述。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (15)
1.一种设备登录方法,其特征在于,运行于第一服务器,所述方法包括:
获取第一设备发送的登录请求,所述登录请求包括登录账号;
获取与所述登录账号对应的目标身份验证标识,并根据所述目标身份验证标识生成第一动态验证码;
获取所述第一设备发送的第二动态验证码,其中,所述第二动态验证码是由第二服务器基于所述登录账号对应的目标身份验证标识生成并提供给所述第一设备的;
根据所述第一动态验证码和所述第二动态验证码的比对结果,对所述登录请求进行登录验证。
2.根据权利要求1所述的方法,其特征在于,所述根据所述身份验证标识生成第一动态验证码,包括:
获取验证码有效时长;
根据所述验证码有效时长、所述登录请求对应的请求时间、以及所述目标身份验证标识,生成所述第一动态验证码,其中,在所述有效时长内生成的对应于所述目标身份验证标识的动态码一致。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若不存在与所述登录账号对应的目标身份验证标识,则展示提示用户输入所述登录账号的登录密码的提示消息,以通过所述登录账号和所述登录密码在所述第一服务器中登录所述登录账号。
4.根据权利要求1所述的方法,其特征在于,所述第二动态验证码是所述第二服务器通过以下方式生成的:
接收所述第一设备发送的验证码获取请求,所述验证码获取请求包括所述登录账号;
响应于所述验证码获取请求,获取所述登录账号对应的目标身份验证标识;
基于所述登录账号对应的目标身份验证标识生成所述第二动态验证码。
5.根据权利要求4所述的方法,其特征在于,所述验证码获取请求还包括所述第一服务器的标识;所述获取所述登录账号对应的目标身份验证标识,包括:
获取所述登录账号对应的映射关系,所述映射关系为各身份验证标识、以及每个身份验证标识与对应的服务器标识之间的对应关系;
基于所述第一服务器的标识和所述映射关系,将所述第一服务器的标识所对应的身份验证标识确定为所述目标身份验证标识。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第一动态验证码和所述第二动态验证码的比对结果,对所述登录请求进行登录验证,包括:
若所述第一动态验证码和所述第二动态验证码相同,利用所述登录账号登录所述第一服务器;
若所述第一动态验证码和所述第二动态验证码不相同,则验证失败,并向所述登录请求对应的终端设备提供登录失败提示消息。
7.根据权利要求1所述的方法,其特征在于,所述第一设备为所述第一服务器所对应的终端设备;或者,
所述第一设备为代理服务器,所述第一服务器所对应的终端设备通过所述代理服务器与所述第一服务器通信。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第二服务器发送的针对所述登录账号的身份验证标识更新消息;
根据所述身份验证标识更新消息对所述登录账号对应的目标身份验证标识进行更新并存储更新后的身份验证标识。
9.一种设备登录方法,其特征在于,运行于第二服务器,所述方法包括:
接收第一设备发送的验证码获取请求,所述验证码获取请求包括登录账号,所述验证码获取请求是所述第一设备向第一服务器发送登录请求时生成的;
获取所述登录账号对应的目标身份验证标识;
基于所述登录账号对应的目标身份验证标识生成所述第二动态验证码并提供给所述第一设备,以使所述第一设备将所述第二动态验证码至所述第一服务器,以使所述第一服务器根据所述第二动态验证码,对所述登录请求进行验证。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
更新所述登录账号信息对应的目标身份验证标识,得到更新后的身份验证标识;
向所述第一服务器发送身份验证标识更新消息,所述身份验证标识更新消息包括所述更新后的身份验证标识,以使所述第一服务器根据所述身份验证标识更新消息对所述登录账号信息对应的目标身份验证标识进行更新。
11.根据权利要求9所述的方法,其特征在于,所述基于所述登录账号对应的目标身份验证标识生成所述第二动态验证码,包括:
获取验证码有效时长;
根据所述验证码有效时长、所述验证码获取请求对应的请求时间、以及所述目标身份验证标识,生成所述第二动态验证码,其中,在所述有效时长内生成的对应于所述目标身份验证标识的动态码一致。
12.一种设备登录装置,运行于第一服务器,其特征在于,所述装置包括:
请求获取模块,用于获取第一设备发送的登录请求,所述登录请求包括登录账号;
身份验证标识获取模块,用于获取与所述登录账号对应的目标身份验证标识,并根据所述目标身份验证标识生成第一动态验证码;
验证码获取模块,用于获取所述第一设备发送的第二动态验证码,其中,所述第二动态验证码是由第二服务器基于所述登录账号对应的目标身份验证标识生成并提供给所述第一设备的;
验证模块,用于根据所述第一动态验证码和所述第二动态验证码的比对结果,对所述登录请求进行登录验证。
13.一种设备登录装置,其特征在于,运行于第二服务器,所述装置包括:
请求获取模块,用于接收第一设备发送的验证码获取请求,所述验证码获取请求包括登录账号,所述验证码获取请求是所述第一设备向第一服务器发送登录请求时生成的;
身份验证标识获取模块,用于获取所述登录账号对应的目标身份验证标识;
验证码生成模块,用于基于所述登录账号对应的目标身份验证标识生成所述第二动态验证码并提供给所述第一设备,以使所述第一设备将所述第二动态验证码至所述第一服务器,以使所述第一服务器根据所述第二动态验证码,对所述登录请求进行验证。
14.一种电子设备,其特征在于,包括处理器以及存储器:
所述存储器被配置用于存储计算机程序,所述计算机程序在由所述处理器执行时,使得所述处理器执行权利要求1-8中任一项所述的方法,或者执行权利要求9-11中任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机上运行时,使得计算机可以执行上述权利要求1-8中任一项所述的方法,或者执行权利要求9-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011247792.4A CN114553445A (zh) | 2020-11-10 | 2020-11-10 | 设备方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011247792.4A CN114553445A (zh) | 2020-11-10 | 2020-11-10 | 设备方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114553445A true CN114553445A (zh) | 2022-05-27 |
Family
ID=81660267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011247792.4A Pending CN114553445A (zh) | 2020-11-10 | 2020-11-10 | 设备方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114553445A (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425901A (zh) * | 2008-04-16 | 2009-05-06 | 奉蓓 | 一种在处理终端中用于对用户身份验证的控制方法及装置 |
CN101662364A (zh) * | 2009-09-17 | 2010-03-03 | 北京飞天诚信科技有限公司 | 一种安全登陆的方法和系统 |
CN103136881A (zh) * | 2011-11-22 | 2013-06-05 | 中国银联股份有限公司 | 支付方法和支付系统 |
CN103905188A (zh) * | 2014-04-02 | 2014-07-02 | 天地融科技股份有限公司 | 利用智能密钥设备生成动态口令的方法和智能密钥设备 |
CN104519066A (zh) * | 2014-12-23 | 2015-04-15 | 飞天诚信科技股份有限公司 | 一种激活移动终端令牌的方法 |
CN105099673A (zh) * | 2014-04-15 | 2015-11-25 | 阿里巴巴集团控股有限公司 | 一种授权方法、请求授权的方法及装置 |
US20150365232A1 (en) * | 2014-06-13 | 2015-12-17 | BicDroid Inc. | Methods, systems and computer program product for providing verification code recovery and remote authentication |
WO2016161889A1 (zh) * | 2015-04-07 | 2016-10-13 | 阿里巴巴集团控股有限公司 | 一种动态口令验证方法及系统、客户端和服务器 |
CN106357649A (zh) * | 2016-09-23 | 2017-01-25 | 浙江神州量子网络科技有限公司 | 用户身份认证系统和方法 |
CN108234124A (zh) * | 2016-12-15 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 身份验证方法、装置与系统 |
CN108234412A (zh) * | 2016-12-15 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 身份验证方法与装置 |
CN108600152A (zh) * | 2018-03-01 | 2018-09-28 | 如般量子科技有限公司 | 基于量子通信网络的改进型Kerberos身份认证系统和方法 |
CN108650028A (zh) * | 2018-03-01 | 2018-10-12 | 如般量子科技有限公司 | 基于量子通信网络与真随机数的多次身份认证系统和方法 |
CN108683501A (zh) * | 2018-03-01 | 2018-10-19 | 如般量子科技有限公司 | 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法 |
CN111444499A (zh) * | 2020-03-31 | 2020-07-24 | 中国人民解放军海军潜艇学院 | 用户身份认证方法及系统 |
-
2020
- 2020-11-10 CN CN202011247792.4A patent/CN114553445A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425901A (zh) * | 2008-04-16 | 2009-05-06 | 奉蓓 | 一种在处理终端中用于对用户身份验证的控制方法及装置 |
CN101662364A (zh) * | 2009-09-17 | 2010-03-03 | 北京飞天诚信科技有限公司 | 一种安全登陆的方法和系统 |
CN103136881A (zh) * | 2011-11-22 | 2013-06-05 | 中国银联股份有限公司 | 支付方法和支付系统 |
CN103905188A (zh) * | 2014-04-02 | 2014-07-02 | 天地融科技股份有限公司 | 利用智能密钥设备生成动态口令的方法和智能密钥设备 |
CN105099673A (zh) * | 2014-04-15 | 2015-11-25 | 阿里巴巴集团控股有限公司 | 一种授权方法、请求授权的方法及装置 |
US20150365232A1 (en) * | 2014-06-13 | 2015-12-17 | BicDroid Inc. | Methods, systems and computer program product for providing verification code recovery and remote authentication |
CN104519066A (zh) * | 2014-12-23 | 2015-04-15 | 飞天诚信科技股份有限公司 | 一种激活移动终端令牌的方法 |
WO2016161889A1 (zh) * | 2015-04-07 | 2016-10-13 | 阿里巴巴集团控股有限公司 | 一种动态口令验证方法及系统、客户端和服务器 |
CN106357649A (zh) * | 2016-09-23 | 2017-01-25 | 浙江神州量子网络科技有限公司 | 用户身份认证系统和方法 |
CN108234124A (zh) * | 2016-12-15 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 身份验证方法、装置与系统 |
CN108234412A (zh) * | 2016-12-15 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 身份验证方法与装置 |
CN108600152A (zh) * | 2018-03-01 | 2018-09-28 | 如般量子科技有限公司 | 基于量子通信网络的改进型Kerberos身份认证系统和方法 |
CN108650028A (zh) * | 2018-03-01 | 2018-10-12 | 如般量子科技有限公司 | 基于量子通信网络与真随机数的多次身份认证系统和方法 |
CN108683501A (zh) * | 2018-03-01 | 2018-10-19 | 如般量子科技有限公司 | 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法 |
CN111444499A (zh) * | 2020-03-31 | 2020-07-24 | 中国人民解放军海军潜艇学院 | 用户身份认证方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11711219B1 (en) | PKI-based user authentication for web services using blockchain | |
US10790976B1 (en) | System and method of blockchain wallet recovery | |
WO2022206349A1 (zh) | 一种信息验证的方法、相关装置、设备以及存储介质 | |
RU2417422C2 (ru) | Услуга распределенной единой регистрации в сети | |
CN108241517B (zh) | 一种软件升级方法、客户端及电子设备 | |
CN103795692B (zh) | 开放授权方法、系统与认证授权服务器 | |
KR101722631B1 (ko) | 프록시를 사용하여 자원들에의 보안 액세스 | |
US8745401B1 (en) | Authorizing actions performed by an online service provider | |
US20210176058A1 (en) | Consensus method used for miner node in blockchain system and blockchain system | |
CN111131416B (zh) | 业务服务的提供方法和装置、存储介质、电子装置 | |
CN111740966B (zh) | 一种基于区块链网络的数据处理方法及相关设备 | |
CN107124431A (zh) | 鉴权方法、装置、计算机可读存储介质和鉴权系统 | |
EP2767029B1 (en) | Secure communication | |
JPWO2019239591A1 (ja) | 認証システム、認証方法、アプリケーション提供装置、認証装置、及び認証用プログラム | |
US20160241536A1 (en) | System and methods for user authentication across multiple domains | |
US20210241270A1 (en) | System and method of blockchain transaction verification | |
CN110069909B (zh) | 一种免密登录第三方系统的方法及装置 | |
CN105337967B (zh) | 实现用户登录目标服务器的方法、系统和中心服务器 | |
CN105847000A (zh) | 令牌产生方法以及基于该令牌产生方法的通信系统 | |
CN112671720A (zh) | 一种云平台资源访问控制的令牌构造方法、装置及设备 | |
CN106936797A (zh) | 一种云中虚拟机磁盘及文件加密密钥的管理方法和系统 | |
CN108471403A (zh) | 一种账户迁移的方法、装置、终端设备及存储介质 | |
CN105721480A (zh) | 基于fido硬件的用户操作方法及系统 | |
CN114139176A (zh) | 一种基于国密的工业互联网核心数据的保护方法及系统 | |
CN110034923B (zh) | 一种信息处理方法以及相关设备 |
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 |