CN110442426A - 一种密码重置方法、装置及存储介质 - Google Patents
一种密码重置方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110442426A CN110442426A CN201910675449.0A CN201910675449A CN110442426A CN 110442426 A CN110442426 A CN 110442426A CN 201910675449 A CN201910675449 A CN 201910675449A CN 110442426 A CN110442426 A CN 110442426A
- Authority
- CN
- China
- Prior art keywords
- password
- virtual machine
- reset
- resetting
- software
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2131—Lost password, e.g. recovery of lost or forgotten passwords
Abstract
本申请涉及一种密码重置方法、装置及存储介质,该密码重置方法包括:获取密码重置指令,密码重置指令携带虚拟机标识、用户标识和待重置密码;根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件;根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口;触发虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令;当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置,从而使得未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
Description
技术领域
本申请涉及虚拟化和云计算领域,具体涉及一种密码重置方法、装置及存储介质。
背景技术
在云计算环境下,虚拟机被广泛使用,对于虚拟机的维护要求越来越高,由于经常会有虚拟机的用户忘记密码的情况发生,因此密码重置是一个经常使用的运维功能。当用户忘记密码时,通过发起密码重置流程,云平台管理员可以强制重置虚拟机的指定账号的密码。
目前,对虚拟机进行密码重置的技术方案为:在接收到用户发送的密码重置请求后,云平台通过虚拟机的串口设备调用该虚拟机中的密码重置软件,以进行密码重置。
但是,上述技术方案只能对具有密码重置功能的虚拟机(也即安装有密码重置软件的虚拟机)进行密码重置,存在无法对不具有密码重置功能的虚拟机进行密码重置的问题。
发明内容
本申请的目的在于提供一种密码重置方法和装置,以无需在虚拟机上安装密码重置软件即可实现密码重置功能,适用范围广。
本申请实施例提供了一种密码重置方法,该密码重置方法应用于服务器,包括:
获取密码重置指令,所述密码重置指令携带虚拟机标识、用户标识和待重置密码;
根据所述密码重置指令确定所述虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
根据所述存储地址更新所述虚拟机的目录,以将所述数据安装包挂载到所述虚拟机上,并创建所述虚拟机的串行接口;
触发所述虚拟机根据所述更新后的目录安装且启动所述密码重置软件,返回启动成功指令;
当接收到返回的所述启动成功指令时,根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
其中,所述触发所述虚拟机根据所述更新后的目录安装且启动所述密码重置软件,具体包括:
在所述虚拟机的元数据中设置密码重置标识,并生成虚拟机重启指令;
向所述虚拟机发送所述虚拟机重启指令,所述虚拟机重启指令用于指示所述虚拟机重启,以使所述虚拟机在重启后根据所述密码重置标识、以及所述更新后的目录安装且启动所述密码重置软件。
其中,在所述根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,还包括:
从所述虚拟机的元数据中删除所述密码重置标识。
其中,所述根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置,具体包括:
根据所述用户标识和待重置密码,通过所述串行接口调用已启动的所述密码重置软件,进行密码重置。
其中,在所述根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,还包括:
从所述更新后的目录中删除所述存储地址,并删除所述串行接口。
本申请实施例还提供了一种密码重置方法,该密码重置方法应用于虚拟机,包括:
当所述虚拟机重启时,从当前目录中确定数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
根据所述存储地址获取所述数据安装包,并根据所述数据安装包安装所述密码重置软件;
启动所述密码重置软件,并生成启动成功指令;
向服务器返回所述启动成功指令,所述启动成功指令用于指示所述服务器根据已启动的所述密码重置软件进行密码重置。
其中,在所述从当前目录中确定数据安装包的存储地址之前,还包括:
检测所述虚拟机的元数据中是否存在密码重置标识;
若是,则执行所述从当前目录中确定数据安装包的存储地址的步骤。
本申请实施例还提供了一种密码重置装置,应用于服务器,包括:
获取模块,用于获取密码重置指令,所述密码重置指令携带虚拟机标识、用户标识和待重置密码;
确定模块,用于根据所述密码重置指令确定所述虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
更新模块,用于根据所述存储地址更新所述虚拟机的目录,以将所述数据安装包挂载到所述虚拟机上,并创建所述虚拟机的串行接口;
触发模块,用于触发所述虚拟机根据所述更新后的目录安装且启动所述密码重置软件,返回启动成功指令;
密码重置模块,用于当接收到返回的所述启动成功指令时,根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
其中,所述触发模块具体用于:
在所述虚拟机的元数据中设置密码重置标识,并生成虚拟机重启指令;
向所述虚拟机发送所述虚拟机重启指令,所述虚拟机重启指令用于指示所述虚拟机重启,以使所述虚拟机在重启后根据所述密码重置标识、以及所述更新后的目录安装且启动所述密码重置软件。
其中,所述密码重置装置还包括第一删除模块,所述第一删除模块用于:
在根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,从所述虚拟机的元数据中删除所述密码重置标识。
其中,所述密码重置模块具体用于:
当接收到返回的所述启动成功指令时,根据所述用户标识和待重置密码,通过所述串行接口调用已启动的所述密码重置软件,进行密码重置。
其中,所述密码重置装置还包括第二删除模块,所述第二删除模块用于:
在根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,从所述更新后的目录中删除所述存储地址,并删除所述串行接口。
本申请实施例还提供了一种密码重置装置,应用于虚拟机,包括:
确定模块,用于当所述虚拟机重启时,从当前目录中确定数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
获取模块,用于根据所述存储地址获取所述数据安装包,并根据所述数据安装包安装所述密码重置软件;
启动模块,用于启动所述密码重置软件,并生成启动成功指令;
发送模块向服务器返回所述启动成功指令,所述启动成功指令用于指示所述服务器根据已启动的所述密码重置软件进行密码重置。
其中,所述密码重置装置还包括检测模块,所述检测模块用于:
检测所述虚拟机的元数据中是否存在密码重置标识;
所述确定模块具体用于:
当所述虚拟机重启,且所述虚拟机的元数据中存在所述密码重置标识时,从当前目录中确定数据安装包的存储地址。
本申请实施例还提供了一种计算机可读存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行上述任一项密码重置方法。
本申请提供的密码重置方法、装置及存储介质,通过获取密码重置指令,该密码重置指令携带虚拟机标识、用户标识和待重置密码,并根据该密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,该数据安装包用于安装密码重置软件,之后根据存储地址更新虚拟机的目录,以将该数据安装包挂载到虚拟机上,并创建虚拟机的串行接口,接着触发该虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令,然后当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置,从而能在密码重置过程中,使虚拟机自行安装重置密码所需的软件以及补充虚拟机重置密码所需的串行接口,以使未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
附图说明
下面结合附图,通过对本申请的具体实施方式详细描述,将使本申请的技术方案及其它有益效果显而易见。
图1是本申请实施例提供的密码重置系统的场景示意图;
图2是本申请实施例提供的密码重置方法的流程示意图;
图3是本申请实施例提供的S104的流程示意图;
图4是本申请实施例提供的S105的执行过程示意图;
图5是本申请实施例提供的密码重置方法的另一流程示意图;
图6是本申请实施例提供的密码重置方法的另一流程示意图;
图7是本申请实施例提供的密码重置方法的另一流程示意图;
图8是本申请实施例提供的进行密码重置的用户界面示意图;
图9是本申请实施例提供的密码重置装置的结构示意图;
图10是本申请实施例提供的密码重置装置的另一结构示意图;
图11为本申请实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种密码重置方法、装置及存储介质。
请参阅图1,图1为本申请实施例提供的密码重置系统的场景示意图,该密码重置系统可以包括本申请实施例提供的任一种密码重置装置,该密码重置装置可以集成在服务器,比如云平台的服务器中。
该服务器可以获取密码重置指令,密码重置指令携带虚拟机标识、用户标识和待重置密码;根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件;根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口;触发虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令;当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
其中,该服务器可以为云平台中的物理主机,该物理主机上可以运行有至少一台虚拟机,云平台可以通过运行Openstack nova实现云服务中的计算功能,比如对虚拟机进行管理,Openstack是业界知名的云计算开源软件,nova是其中负责虚拟机管理的组件。虚拟机标识可以为虚拟机的通用唯一识别码(universally unique identifier,UUID)、主机名或网络互连协议(IP)地址,用户标识可以为用于识别用户身份的名字或账号,待重置密码为用户输入的新密码。密码重置软件可以为QGA(qemu guest agent)软件,该QGA软件安装于虚拟机上,云平台可以通过运行Openstack nova调用该QGA软件实现虚拟机用户的密码重置。
此外,该密码重置系统还可以包括用户终端,该用户终端可以是手机、平板电脑、台式电脑等终端,用户终端可以通过语音、触屏或者手势等输入方式获取用户的待重置密码信息,并根据该待重置密码信息生成密码重置指令后发送给服务器,以便服务器进行后续的密码重置操作。
譬如,在图1中,用户可以通过触屏方式在用户终端上选择需要重置密码的虚拟机VM1,以及输入用户名root和待重置密码,之后用户终端基于用户输入的信息生成密码重置指令并发送给服务器,服务器会根据该密码重置指令确定虚拟机VM1对应的QGA软件安装包,接着将该QGA软件安装包挂载到虚拟机VM1的虚拟光驱cdrom上,并向虚拟机VM1补充串行接口,之后触发虚拟机VM1读取上述QGA软件安装包,并自行安装且运行该QGA软件,接着虚拟机VM1会向服务器返回启动成功指令,之后服务器可以通过虚拟机VM1上的串行接口调用虚拟机VM1中的QGA软件进行密码重置,以将用户名root对应的登录密码更新为上述待重置密码。
如图2所示,图2是本申请实施例提供的密码重置方法的流程示意图,该密码重置方法应用于服务器,具体流程可以如下:
S101.获取密码重置指令,密码重置指令携带虚拟机标识、用户标识和待重置密码。
在本实施例中,该虚拟机标识可以为虚拟机的通用唯一识别码(UUID)、主机名或网络互连协议(IP)地址等,用户标识可以为用于识别用户身份的名字或账号,待重置密码为用户输入的新密码。
具体地,当虚拟机的用户忘记登录密码时,可以在用户终端上发起密码重置流程,并选择需要重置密码的虚拟机,以及输入待重置密码的用户名和新密码。用户终端基于用户输入的信息可以生成密码重置指令并发送至服务器,以便服务器进行后续的密码重置操作。
S102.根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件。
在本实施例中,虚拟机标识与虚拟机一一对应,具有唯一性,因此,服务器可以通过查询虚拟机标识确定需要重置密码的虚拟机、以及与该虚拟机相匹配的数据安装包的存储地址。其中,该数据安装包为密码重置软件安装包,用于安装密码重置软件,可以由云平台管理人员预先存储于云平台的预设位置,具体地,云平台管理人员可以将不同的密码重置软件安装包分别压缩成压缩包后再进行统一存储。
S103.根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口。
在本实施例中,服务器可以将上述数据安装包的存储地址添加到对应虚拟机的目录中,以将该数据安装包挂载到该虚拟机,比如该虚拟机的光驱上,且在该虚拟机重启时,会从该虚拟机的目录中读取上述数据安装包,进而完成后续的初始化工作。其中,虚拟机的目录是在利用虚拟化平台创建该虚拟机时生成的,包括创建该虚拟机时生成的各种文件(比如虚拟硬盘文件、虚拟机配置文件等)的存储地址。
进一步地,在将上述数据安装包挂载到虚拟机上后,服务器还可以通过重新生成或修改该虚拟机的配置文件,以向该虚拟机补充一个串行接口,并且在后续密码重置操作中,通过在该串行接口与该虚拟机所在的物理主机上的接口之间建立交互通道,能够向该虚拟机传入上述用户标识和待重置密码。
S104.触发虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令。
具体地,在上述S103之后,服务器可以通过重启虚拟机的方式,触发虚拟机根据更新后的目录安装且启动密码重置软件,其中,上述S104可以具体为:
S1041.生成虚拟机重启指令。
其中,该虚拟机重启指令可以为将正在运行的虚拟机尝试正常关机后并重启的指令。
S1042.向虚拟机发送虚拟机重启指令,该虚拟机重启指令用于指示虚拟机重启,以使虚拟机在重启后根据更新后的目录安装且启动密码重置软件,之后返回启动成功指令。
具体地,虚拟机可以接收该虚拟机重启指令,并根据该虚拟机重启指令进行重启,且在该虚拟机重启时,该虚拟机中的初始化脚本会读取上述更新后的目录文件,获得上述数据安装包,并根据该数据安装包自动安装密码重置软件,其中,该密码重置软件可以设置为安装自启动,也即该密码重置软件在安装完成后能够自行启动。另外,在该密码重置软件启动成功后,虚拟机可以向上述服务器发送启动成功指令,以使该服务器进行后续密码重置操作。
在一个替代实施例中,考虑到在将虚拟机重置密码所需的数据安装包挂载到虚拟机上后,虚拟机只要重启即可触发虚拟机安装且启动密码重置软件,并还会接着触发后续的密码重置操作,若虚拟机在得到上述串行接口之前由于异常发生了重启,则会导致后续的密码重置操作由于缺少串行接口而出现异常,为了避免上述问题,如图3所示,上述S104可以具体包括:
S1043.在虚拟机的元数据中设置密码重置标识,并生成虚拟机重启指令。
其中,该密码重置标识用于通知虚拟机当前进行了密码重置操作,具体地,该密码重置标识可以为标志位,其值可以为真或1。
S1044.向虚拟机发送虚拟机重启指令,虚拟机重启指令用于指示虚拟机重启,以使虚拟机在重启后根据密码重置标识、以及更新后的目录安装且启动密码重置软件,之后返回启动成功指令。
具体地,虚拟机在接收到上述虚拟机重启指令指令,会根据该虚拟机重启指令进行重启,且在重启时,该虚拟机中的初始化脚本会检测该虚拟机的元数据中存在上述密码重置标识。若存在,则该虚拟机中的初始化脚本会进一步读取上述更新后的目录文件,以获得上述数据安装包,并根据该数据安装包自动安装且启动密码重置软件,之后向服务器返回启动成功指令,以使该服务器进行后续密码重置操作;若不存在,则该虚拟机中的初始化脚本不会进行后续的密码重置操作,如此,当虚拟机出现异常而发生重启时,由于该虚拟机的元数据中不存在上述密码重置标识,则不会进行后续密码重置操作,进而避免在密码重置过程中出现异常。
在另一个替代实施例中,还可以通过预先对虚拟机的脚本进行拓展,以使该虚拟机能够每间隔预设时长检测是否增加了上述串行接口,并在检测到增加了串行接口时,直接执行虚拟机的初始化脚本以实现对上述数据安装包的读取,进而完成对密码重置软件的安装且启动,并向服务器返回启动成功指令,以使该服务器进行后续密码重置操作,如此,无需重启虚拟机即可触发后续的密码重置操作,能够节省虚拟机重启所需的时间,提高密码重置的效率。
S105.当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
其中,上述S105可以具体包括:根据用户标识和待重置密码,通过串行接口调用已启动的密码重置软件,进行密码重置。在本实施例中,该密码重置软件可以为QGA(qemuguest agent)软件,该QGA软件可以安装且运行于虚拟机上,能够执行修改密码操作。
具体地,如图4所示,可以通过Openstack云中的nova先调用libvirt,以连接至需要重置密码的虚拟机VM所在的物理主机上,其中,Openstack是业界知名的云计算开源软件,nova是其中负责虚拟机管理的组件,libvirt是用于管理虚拟化平台的开源的应用程序编程接口,接着再调用qemu,以提供虚拟机VM上的串行接口与上述物理主机上的unixsocket之间的交互通道,其中,qemu是一款开源的模拟器及虚拟机监管器,unix socket是两个应用程序之间的交互通道的端点,然后再通过上述串行接口调用虚拟机VM中的QGA软件,实现密码的重置,其中,上述用户标识和待重置密码可以作为调用命令的参数经上述串行接口传入虚拟机VM,以触发虚拟机VM中的QGA软件根据该用户标识和待重置密码进行密码重置。
在一个具体实施例中,在上述S105之后,还可以包括:
S106.从更新后的目录中删除存储地址,并删除串行接口。
在完成密码重置之后,服务器可以将上述数据安装包的存储地址从虚拟机的当前目录中删除,以对挂载在虚拟机上的数据安装包进行卸载。进一步地,在完成密码重置之后,还可以通过重新生成或修改该虚拟机的配置文件,以删除在密码重置过程中向虚拟机补充的串行接口。如此,通过在密码重置过程中向虚拟机补充串行接口以及提供数据安装包,并在完成密码重置之后删除该串行接口以及卸载该数据安装包,能够节省服务器资源,并减少虚拟机的安全缺口。
在另一个具体实施例中,请继续参阅图3,当上述S104包括上述S1043和S1044时,在上述S105之后,还可以包括:
S107.从虚拟机的元数据中删除密码重置标识。
在完成密码重置之后,服务器从虚拟机的元数据中删除在密码重置过程中设置的密码重置标识,有利于下一次能够以同样的方法对该虚拟机进行密码重置。
进一步地,在上述S105之后,还可以包括:
S108:记录密码重置操作。
具体地,在完成密码重置之后,服务器可以对此次密码重置操作进行记录,以生成该虚拟机的审计日志,便于用户查询、审计和回溯该虚拟机的密码重置操作。
需要说明的是,当上述S106、S107和S108同时存在时,可以在执行上述S105之后同时执行上述S106、S107和S108,也可以在执行上述S105之后依次执行上述S106、S107和S108。
由上述可知,本实施例提供的密码重置方法,应用于服务器,通过获取密码重置指令,该密码重置指令携带虚拟机标识、用户标识和待重置密码,并根据该密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,该数据安装包用于安装密码重置软件,之后根据存储地址更新虚拟机的目录,以将该数据安装包挂载到虚拟机上,并创建虚拟机的串行接口,接着触发该虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令,然后当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置,从而能在密码重置过程中,使虚拟机自行安装重置密码所需的软件以及补充虚拟机重置密码所需的串行接口,以使未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
根据上述实施例所描述的方法,本实施例将从虚拟机的角度进一步进行描述,该虚拟机具体可以集成在服务器中来实现。
如图5所示,图5是本申请实施例提供的密码重置方法的流程示意图,该密码重置方法应用于虚拟机,具体流程可以如下:
S201.当虚拟机重启时,从当前目录中确定数据安装包的存储地址,数据安装包用于安装密码重置软件。
其中,该数据安装包可以挂载在虚拟机,比如虚拟机的光驱上,当虚拟机重启时,会从该虚拟机的目录中读取上述数据安装包的存储地址,进而完成后续的初始化工作。
S202.根据存储地址获取数据安装包,并根据数据安装包安装密码重置软件。
在本实施例中,可以通过虚拟机中的初始化脚本获取该存储地址对应的数据安装包,并根据该数据安装包自动安装密码重置软件。
S203.启动密码重置软件,并生成启动成功指令。
其中,该密码重置软件可以设置为安装自启动,也即该密码重置软件在安装完成后能够自行启动,并且,在该密码重置软件启动成功的同时生成启动成功指令。
S204.向服务器返回启动成功指令,启动成功指令用于指示服务器根据已启动的密码重置软件进行密码重置。
其中,该服务器可以为云平台中的物理主机,且该物理主机上可以运行有至少一台虚拟机。
在本实施例中,上述密码重置软件可以为QGA(qemu guest agent)软件,该QGA软件可以安装且运行于虚拟机上,能够执行修改密码操作。
具体地,上述需要重置密码的虚拟机还可以配置有一个串行接口,且上述QGA软件可以通过读写该串行接口以与上述物理主机进行交互。
进一步地,上述物理主机在接收到虚拟机发送的启动成功指令之后,可以根据用户输入的用户标识和待重置密码,通过串行接口调用已启动的QGA软件,进行密码重置,具体地,上述用户标识和待重置密码可以作为调用命令的参数经上述串行接口传入虚拟机,以触发虚拟机中的QGA软件根据该用户标识和待重置密码进行密码重置。
在一个具体实施例中,如图6所示,在上述S201之前,还可以包括:
S205.当虚拟机重启时,检测虚拟机的元数据中是否存在密码重置标识,若是,则执行上述S201,若否,则不做处理。
在本实施例中,虚拟机可以接收上述服务器发送的虚拟机重启指令,并根据该虚拟机重启指令进行重启,以进行后续的密码重置操作。
但是,考虑到虚拟机只要重启即可触发虚拟机安装且启动密码重置软件,并还会接着触发后续的密码重置操作,若虚拟机由于异常发生了重启,也即虚拟机在无需进行密码重置操作时进行了重启,则可能会导致后续的密码重置操作出现异常,因此,为了避免上述问题,在执行上述S201之前,可以检测虚拟机的元数据中是否存在密码重置标识,其中,该密码重置标识用于通知虚拟机当前进行了密码重置操作,具体地,该密码重置标识可以为标志位,其值可以为真或1。如此,当虚拟机出现异常而发生重启时,由于该虚拟机的元数据中不存在上述密码重置标识,则不会进行后续密码重置操作,进而避免在密码重置过程中出现异常。
在另一个具体实施例中,在上述S204之后,还可以包括:
S206:关掉或卸载密码重置软件。
在密码重置完成之后,虚拟机可以自动关掉或卸载该密码重置软件,以节省服务器资源,并避免由于攻击者调用密码重置软件进行密码重置而造成的安全风险。
由上述可知,本实施例提供的密码重置方法,应用于虚拟机,通过在虚拟机重启时,从当前目录中确定数据安装包的存储地址,数据安装包用于安装密码重置软件,然后根据该存储地址获取数据安装包,并根据该数据安装包安装密码重置软件,接着启动该密码重置软件,并生成启动成功指令,之后向服务器返回启动成功指令,该启动成功指令用于指示所述服务器根据已启动的密码重置软件进行密码重置,从而能在密码重置过程中,使虚拟机自行安装重置密码所需的软件,以使未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
以下将以该密码重置方法应用于云平台中的服务器和虚拟机为例,对密码重置方法的流程进行简单介绍。
请参阅图7,图7是本申请实施例提供的密码重置方法的流程示意图,具体流程可以如下:
S301.服务器获取密码重置指令,密码重置指令携带虚拟机标识、用户标识和待重置密码。
譬如,如图8所示,当虚拟机的用户忘记密码时,可以在用户终端的用户界面上通过选择需要重置密码的虚拟机,比如虚拟机3号,以及输入用户名(比如root)和新密码,以生成密码重置指令并将该密码重置指令发送给云平台的服务器。
S302.服务器根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件。
当服务器接收到上述用户终端发送的密码重置指令时,可以通过查询虚拟机标识确定需要重置密码的虚拟机、以及与该虚拟机相匹配的数据安装包的存储地址。
S303.服务器根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口。
譬如,服务器可以将该数据安装包以config-drive的方式挂载到上述需要重置密码的虚拟机的光驱上,接着可以通过重新生成上述需要重置密码的虚拟机的配置文件,以在该虚拟机上创建一个串行接口。
S304.服务器在虚拟机的元数据中设置密码重置标识,并生成虚拟机重启指令,之后将该虚拟机重启指令发送至上述需要重置密码的虚拟机。
其中,该密码重置标识用于通知虚拟机当前进行了密码重置操作,具体地,该密码重置标识可以为标志位,其值可以为真或1。
S305.当重启时,虚拟机检测元数据中是否存在密码重置标识,若是,则执行S306,若否,则不做处理。
具体地,当虚拟机接收到上述虚拟机重启指令时,会根据该虚拟机重启指令进行重启,且在重启时,该虚拟机中的初始化脚本,比如cloudinit脚本,会识别上述元数据中是否存在密码重置标识,并在识别到存在该密码重置标识时,进行后续的初始化操作,以避免虚拟机在异常重启时出现密码重置异常。
S306.虚拟机从当前目录中确定数据安装包的存储地址,数据安装包用于安装密码重置软件。
譬如,虚拟机在重启时可以通过光驱读取当前目录,以得到对应密码重置软件安装包的存储地址。
S307.虚拟机根据存储地址获取数据安装包,并根据数据安装包安装密码重置软件。
譬如,可以通过虚拟机中的cloudinit脚本获取该存储地址对应的数据安装包,并根据该数据安装包自动安装密码重置软件。
S308.虚拟机启动密码重置软件,并生成启动成功指令,之后向服务器返回启动成功指令。
S309.当接收到返回的启动成功指令时,服务器根据用户标识和待重置密码,通过串行接口调用已启动的密码重置软件,进行密码重置。
其中,该密码重置软件可以为QGA(qemu guest agent)软件,上述用户输入的用户名和新密码可以作为调用命令的参数经上述串行接口传入虚拟机,以触发虚拟机中的QGA软件根据该用户标识和待重置密码进行密码重置。
由上述可知,本实施例提供的密码重置方法,应用于服务器和虚拟机,该密码重置方法能在密码重置过程中,使虚拟机自行安装重置密码所需的软件,以使未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
根据上述实施例所描述的方法,本实施例将从密码重置装置的角度进一步进行描述,该密码重置装置具体可以作为独立的实体来实现,也可以集成在服务器中来实现。
请参阅图9,图9具体描述了本申请实施例提供的密码重置装置,应用于服务器,该密码重置装置可以包括:获取模块10、确定模块20、更新模块30、触发模块40和密码重置模块50,其中:
(1)获取模块10
获取模块110,用于获取密码重置指令,该密码重置指令携带虚拟机标识、用户标识和待重置密码。
在本实施例中,该虚拟机标识可以为虚拟机的通用唯一识别码(UUID)、主机名或网络互连协议(IP)地址等,用户标识可以为用于识别用户身份的名字或账号,待重置密码为用户输入的新密码。
具体地,当虚拟机的用户忘记登录密码时,可以在用户终端上发起密码重置流程,并选择需要重置密码的虚拟机,以及输入待重置密码的用户名和新密码。用户终端基于用户输入的信息可以生成密码重置指令并发送至密码重置装置,以便密码重置装置进行后续的密码重置操作。
(2)确定模块20
确定模块20,用于根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件。
在本实施例中,虚拟机标识与虚拟机一一对应,具有唯一性,因此,上述确定模块20可以通过查询虚拟机标识确定需要重置密码的虚拟机、以及与该虚拟机相匹配的数据安装包的存储地址。其中,该数据安装包为密码重置软件安装包,用于安装密码重置软件,可以由云平台管理人员预先存储于云平台的预设位置,具体地,云平台管理人员可以将不同的密码重置软件安装包分别压缩成压缩包后再进行统一存储。
(3)更新模块30
更新模块30,用于根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口。
在本实施例中,更新模块30可以将上述数据安装包的存储地址添加到对应虚拟机的目录中,以将该数据安装包挂载到该虚拟机,比如该虚拟机的光驱上。进一步地,在将上述数据安装包挂载到虚拟机上后,上述更新模块30还可以通过重新生成或修改该虚拟机的配置文件,以向该虚拟机补充一个串行接口。
(4)触发模块40
触发模块40,用于触发虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令。
其中,上述触发模块40可以具体用于:
(a)生成虚拟机重启指令。
其中,该虚拟机重启指令可以为将正在运行的虚拟机尝试正常关机后并重启的指令。
(b)向虚拟机发送虚拟机重启指令,该虚拟机重启指令用于指示虚拟机重启,以使虚拟机在重启后根据更新后的目录安装且启动密码重置软件,之后返回启动成功指令。
具体地,虚拟机可以接收该虚拟机重启指令,并根据该虚拟机重启指令进行重启,且在该虚拟机重启时,该虚拟机中的初始化脚本会读取上述更新后的目录文件,获得上述数据安装包,并根据该数据安装包自动安装密码重置软件,其中,该密码重置软件可以设置为安装自启动,也即该密码重置软件在安装完成后能够自行启动。另外,在该密码重置软件启动成功后,虚拟机可以向上述密码重置装置发送启动成功指令,以使该密码重置装置进行后续密码重置操作。
在一个替代实施例中,考虑到在将虚拟机重置密码所需的数据安装包挂载到虚拟机上后,虚拟机只要重启即可触发虚拟机安装且启动密码重置软件,并还会接着触发后续的密码重置操作,若虚拟机在得到上述串行接口之前由于异常发生了重启,则会导致后续的密码重置操作由于缺少串行接口而出现异常,为了避免上述问题,上述触发模块40可以具体用于:
(c)在虚拟机的元数据中设置密码重置标识,并生成虚拟机重启指令。
其中,该密码重置标识用于通知虚拟机当前进行了密码重置操作,具体地,该密码重置标识可以为标志位,其值可以为真或1。
(d)向虚拟机发送虚拟机重启指令,虚拟机重启指令用于指示虚拟机重启,以使虚拟机在重启后根据密码重置标识、以及更新后的目录安装且启动密码重置软件,之后返回启动成功指令。
具体地,虚拟机在接收到上述虚拟机重启指令指令,会根据该虚拟机重启指令进行重启,且在重启时,该虚拟机中的初始化脚本会检测该虚拟机的元数据中存在上述密码重置标识。若存在,则该虚拟机中的初始化脚本会进一步读取上述更新后的目录文件,以获得上述数据安装包,并根据该数据安装包自动安装且启动密码重置软件,之后向密码重置装置返回启动成功指令,以使该密码重置装置进行后续密码重置操作;若不存在,则该虚拟机中的初始化脚本不会进行后续的密码重置操作,如此,当虚拟机出现异常而发生重启时,由于该虚拟机的元数据中不存在上述密码重置标识,则不会进行后续密码重置操作,进而避免在密码重置过程中出现异常。
在另一个替代实施例中,还可以通过预先对虚拟机的脚本进行拓展,以使该虚拟机能够每间隔预设时长检测是否增加了上述串行接口,并在检测到增加了串行接口时,直接执行虚拟机的初始化脚本以实现对上述数据安装包的读取,进而完成对密码重置软件的安装且启动,并向密码重置装置返回启动成功指令,以使该密码重置装置进行后续密码重置操作,如此,无需重启虚拟机即可触发后续的密码重置操作,能够节省虚拟机重启所需的时间,提高密码重置的效率。
(5)密码重置模块50
密码重置模块50,用于当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
其中,上述密码重置模块50可以具体用于:根据用户标识和待重置密码,通过串行接口调用已启动的密码重置软件,进行密码重置。在本实施例中,该密码重置软件可以为QGA(qemu guest agent)软件,该QGA软件可以安装且运行于虚拟机上,能够执行修改密码操作。
具体地,上述密码重置模块50可以通过Openstack云中的nova先调用libvirt,以连接至上述需要重置密码的虚拟机所在的物理主机上,其中,Openstack是业界知名的云计算开源软件,nova是其中负责虚拟机管理的组件,libvirt是用于管理虚拟化平台的开源的应用程序编程接口,接着再调用qemu,以提供该虚拟机上的串行接口与上述物理主机上的unix socket之间的交互通道,其中,qemu是一款开源的模拟器及虚拟机监管器,unixsocket是两个应用程序之间的交互通道的端点,然后再通过上述串行接口调用该虚拟机中的QGA软件,实现密码的重置,其中,上述用户标识和待重置密码可以作为调用命令的参数经上述串行接口传入虚拟机,以触发上述需要重置密码的虚拟机中的QGA软件根据该用户标识和待重置密码进行密码重置。
在一个具体实施例中,上述密码重置装置还可以包括第一删除模块、第二删除模块和记录模块,其中:
(6)第一删除模块
第一删除模块,用于在上述密码重置模块50根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,从虚拟机的元数据中删除密码重置标识。
在完成密码重置之后,从虚拟机的元数据中删除在密码重置过程中设置的密码重置标识,有利于下一次能够以同样的方法对该虚拟机进行密码重置。
(7)第二删除模块
第二删除模块,用于在上述密码重置模块50根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,从更新后的目录中删除存储地址,并删除串行接口。
具体地,在完成密码重置之后,第二删除模块可以将上述数据安装包的存储地址从虚拟机的当前目录中删除,以对挂载在虚拟机上的数据安装包进行卸载。进一步地,在完成密码重置之后,第二删除模块还可以通过重新生成或修改该虚拟机的配置文件,以删除在密码重置过程中向虚拟机补充的串行接口。如此,通过在密码重置过程中向虚拟机补充串行接口以及提供数据安装包,并在完成密码重置之后删除该串行接口以及卸载该数据安装包,能够节省服务器资源,并减少虚拟机的安全缺口。
(8)记录模块
记录模块,用于在上述密码重置模块50根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,记录密码重置操作。
具体地,在完成密码重置之后,可以对此次密码重置操作进行记录,以生成该虚拟机的审计日志,便于用户查询、审计和回溯该虚拟机的密码重置操作。
由上述可知,本实施例提供的密码重置装置,应用于服务器,通过获取模块10获取密码重置指令,该密码重置指令携带虚拟机标识、用户标识和待重置密码,确定模块20根据该密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,该数据安装包用于安装密码重置软件,更新模块30根据存储地址更新虚拟机的目录,以将该数据安装包挂载到虚拟机上,并创建虚拟机的串行接口,触发模块40触发该虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令,密码重置模块50在接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置,从而能在密码重置过程中,使虚拟机自行安装重置密码所需的软件以及补充虚拟机重置密码所需的串行接口,以使未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
根据上述实施例所描述的方法,本实施例将从密码重置装置的角度进一步进行描述,该密码重置装置具体可以作为独立的实体来实现,也可以集成在虚拟专用服务器中来实现。
请参阅图10,图10具体描述了本申请实施例提供的密码重置装置,应用于虚拟机,该密码重置装置可以包括:确定模块60、获取模块70、启动模块80和发送模块90,其中:
(A)确定模块60
确定模块60,用于当虚拟机重启时,从当前目录中确定数据安装包的存储地址,该数据安装包用于安装密码重置软件。
其中,该数据安装包可以挂载在虚拟机,比如虚拟机的光驱上,当虚拟机重启时,上述确定模块60可以从该虚拟机的目录中读取上述数据安装包的存储地址。
(B)获取模块70
获取模块70,用于根据存储地址获取数据安装包,并根据数据安装包安装密码重置软件。
在本实施例中,获取模块70可以通过虚拟机中的初始化脚本获取该存储地址对应的数据安装包,并根据该数据安装包自动安装密码重置软件。
(C)启动模块80
启动模块80,用于启动密码重置软件,并生成启动成功指令。
其中,该密码重置软件可以设置为安装自启动,也即该密码重置软件在安装完成后能够自行启动,并且,在该密码重置软件启动成功的同时生成启动成功指令。
(D)发送模块90
发送模块90,用于向服务器返回启动成功指令,该启动成功指令用于指示服务器根据已启动的密码重置软件进行密码重置。
其中,该服务器可以为云平台中的物理主机,且该物理主机上可以运行有至少一台虚拟机。
在一个具体实施例中,上述密码重置装置还可以包括检测模块,其中:
(E)检测模块
检测模块,用于当虚拟机重启时,检测虚拟机的元数据中是否存在密码重置标识。
在本实施例中,虚拟机可以接收上述服务器发送的虚拟机重启指令,并根据该虚拟机重启指令进行重启,以进行后续的密码重置操作。
但是,考虑到虚拟机只要重启即可触发虚拟机安装且启动密码重置软件,并还会接着触发后续的密码重置操作,若虚拟机由于异常发生了重启,也即虚拟机在无需进行密码重置操作时进行了重启,则可能会导致后续的密码重置操作出现异常,因此,为了避免上述问题,上述确定模块60可以具体用于:当虚拟机重启,且该虚拟机的元数据中存在密码重置标识时,从当前目录中确定数据安装包的存储地址。其中,上述密码重置标识用于通知虚拟机当前进行了密码重置操作,具体地,该密码重置标识可以为标志位,其值可以为真或1。
在另一个具体实施例中,上述密码重置装置还可以包括卸载模块,其中:
(F)卸载模块
卸载模块,用于在完成密码重置之后,关掉或卸载上述密码重置软件。
具体地,在密码重置完成之后,虚拟机可以自动关掉或卸载该密码重置软件,以节省服务器资源,并避免由于攻击者调用QGA软件进行密码重置而造成的安全风险。
由上可知,本实施例提供的密码重置装置,应用于虚拟机,通过确定模块60在虚拟机重启时,从当前目录中确定数据安装包的存储地址,数据安装包用于安装密码重置软件,获取模块70根据该存储地址获取数据安装包,并根据该数据安装包安装密码重置软件,启动模块80启动该密码重置软件,并生成启动成功指令,之后发送模块90向服务器返回启动成功指令,该启动成功指令用于指示所述服务器根据已启动的密码重置软件进行密码重置,从而能在密码重置过程中,使虚拟机自行安装重置密码所需的软件,以使未安装有密码重置软件的虚拟机也能实现密码重置功能,拓宽了密码重置的适用范围。
相应的,本申请实施例还提供一种密码重置系统,包括本申请实施例所提供的任一种密码重置装置,该密码重置装置可以集成在云平台中的服务器和虚拟机中。
其中,服务器可以获取密码重置指令,密码重置指令携带虚拟机标识、用户标识和待重置密码;根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件;根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口;触发虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令;当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
虚拟机可以在重启时,从当前目录中确定数据安装包的存储地址,数据安装包用于安装密码重置软件;根据存储地址获取数据安装包,并根据数据安装包安装密码重置软件;启动密码重置软件,并生成启动成功指令,之后向服务器返回启动成功指令,启动成功指令用于指示服务器根据已启动的密码重置软件进行密码重置。
以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
由于该密码重置系统可以包括本申请实施例所提供的任一种密码重置装置,因此,可以实现本申请实施例所提供的任一种密码重置装置所能实现的有益效果,详见前面的实施例,在此不再赘述。
相应的,本申请实施例还提供一种服务器,如图11所示,其示出了本申请实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、射频(Radio Frequency,RF)电路403、电源404、输入单元405、以及显示单元406等部件。本领域技术人员可以理解,图11中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
RF电路403可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器401处理;另外,将涉及上行的数据发送给基站。通常,RF电路403包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路403还可以通过无线通信与网络和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobilecommunication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband CodeDivision Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
服务器还包括给各个部件供电的电源404(比如电池),优选的,电源404可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源404还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元405,该输入单元405可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元405可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器401,并能接收处理器401发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元405还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
该服务器还可包括显示单元406,该显示单元406可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元406可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器401以确定触摸事件的类型,随后处理器401根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图11中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
尽管未示出,服务器还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,服务器中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
获取密码重置指令,密码重置指令携带虚拟机标识、用户标识和待重置密码;
根据密码重置指令确定虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,数据安装包用于安装密码重置软件;
根据存储地址更新虚拟机的目录,以将数据安装包挂载到虚拟机上,并创建虚拟机的串行接口;
触发虚拟机根据更新后的目录安装且启动密码重置软件,返回启动成功指令;
当接收到返回的启动成功指令时,根据已启动的密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
该服务器可以实现本申请实施例所提供的任一种密码重置装置所能实现的有效效果,详见前面的实施例,在此不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本申请实施例所提供的一种密码重置方法、装置、存储介质和服务器进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种密码重置方法,应用于服务器,其特征在于,包括:
获取密码重置指令,所述密码重置指令携带虚拟机标识、用户标识和待重置密码;
根据所述密码重置指令确定所述虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
根据所述存储地址更新所述虚拟机的目录,以将所述数据安装包挂载到所述虚拟机上,并创建所述虚拟机的串行接口;
触发所述虚拟机根据所述更新后的目录安装且启动所述密码重置软件,返回启动成功指令;
当接收到返回的所述启动成功指令时,根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
2.根据权利要求1所述的密码重置方法,其特征在于,所述触发所述虚拟机根据所述更新后的目录安装且启动所述密码重置软件,具体包括:
在所述虚拟机的元数据中设置密码重置标识,并生成虚拟机重启指令;
向所述虚拟机发送所述虚拟机重启指令,所述虚拟机重启指令用于指示所述虚拟机重启,以使所述虚拟机在重启后根据所述密码重置标识、以及所述更新后的目录安装且启动所述密码重置软件。
3.根据权利要求2所述的密码重置方法,其特征在于,在所述根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,还包括:
从所述虚拟机的元数据中删除所述密码重置标识。
4.根据权利要求1所述的密码重置方法,其特征在于,所述根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置,具体包括:
根据所述用户标识和待重置密码,通过所述串行接口调用已启动的所述密码重置软件,进行密码重置。
5.根据权利要求1所述的密码重置方法,其特征在于,在所述根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置之后,还包括:
从所述更新后的目录中删除所述存储地址,并删除所述串行接口。
6.一种密码重置方法,应用于虚拟机,其特征在于,包括:
当所述虚拟机重启时,从当前目录中确定数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
根据所述存储地址获取所述数据安装包,并根据所述数据安装包安装所述密码重置软件;
启动所述密码重置软件,并生成启动成功指令;
向服务器返回所述启动成功指令,所述启动成功指令用于指示所述服务器根据已启动的所述密码重置软件进行密码重置。
7.根据权利要求6所述密码重置方法,其特征在于,在所述从当前目录中确定数据安装包的存储地址之前,还包括:
检测所述虚拟机的元数据中是否存在密码重置标识;
若是,则执行所述从当前目录中确定数据安装包的存储地址的步骤。
8.一种密码重置装置,应用于服务器,其特征在于,包括:
获取模块,用于获取密码重置指令,所述密码重置指令携带虚拟机标识、用户标识和待重置密码;
确定模块,用于根据所述密码重置指令确定所述虚拟机标识对应的虚拟机、以及对应数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
更新模块,用于根据所述存储地址更新所述虚拟机的目录,以将所述数据安装包挂载到所述虚拟机上,并创建所述虚拟机的串行接口;
触发模块,用于触发所述虚拟机根据所述更新后的目录安装且启动所述密码重置软件,返回启动成功指令;
密码重置模块,用于当接收到返回的所述启动成功指令时,根据已启动的所述密码重置软件、串行接口、用户标识和待重置密码进行密码重置。
9.一种密码重置装置,应用于虚拟机,其特征在于,包括:
确定模块,用于当所述虚拟机重启时,从当前目录中确定数据安装包的存储地址,所述数据安装包用于安装密码重置软件;
获取模块,用于根据所述存储地址获取所述数据安装包,并根据所述数据安装包安装所述密码重置软件;
启动模块,用于启动所述密码重置软件,并生成启动成功指令;
发送模块,用于向服务器返回所述启动成功指令,所述启动成功指令用于指示所述服务器根据已启动的所述密码重置软件进行密码重置。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行权利要求1至5任一项所述的密码重置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910675449.0A CN110442426B (zh) | 2019-07-25 | 2019-07-25 | 一种密码重置方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910675449.0A CN110442426B (zh) | 2019-07-25 | 2019-07-25 | 一种密码重置方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110442426A true CN110442426A (zh) | 2019-11-12 |
CN110442426B CN110442426B (zh) | 2023-09-26 |
Family
ID=68431472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910675449.0A Active CN110442426B (zh) | 2019-07-25 | 2019-07-25 | 一种密码重置方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442426B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274053A (zh) * | 2020-01-20 | 2020-06-12 | 山东汇贸电子口岸有限公司 | 一种通过nova调用qemu guest agent接口的方法 |
CN112818397A (zh) * | 2021-02-03 | 2021-05-18 | 北京读我网络技术有限公司 | 一种基于动态空间管理的用户隐私数据保护方法及装置 |
CN113312149A (zh) * | 2021-06-18 | 2021-08-27 | 浪潮云信息技术股份公司 | 一种密码重置方法 |
CN114553462A (zh) * | 2021-12-28 | 2022-05-27 | 中国电信股份有限公司 | 云主机密码重置方法、平台系统、设备系统及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902302A (zh) * | 2012-12-26 | 2014-07-02 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机软件安装系统及方法 |
CN104468811A (zh) * | 2014-12-17 | 2015-03-25 | 华为技术有限公司 | 升级方法及装置 |
CN105278999A (zh) * | 2015-11-19 | 2016-01-27 | 国云科技股份有限公司 | 一种安全高效虚拟机软件部署的方法 |
CN105279000A (zh) * | 2015-11-19 | 2016-01-27 | 北京北信源软件股份有限公司 | 一种虚拟机软件安装方法、安装控制器及安装代理 |
CN105530246A (zh) * | 2015-12-04 | 2016-04-27 | 华为技术有限公司 | 虚拟机管理的方法、装置和系统 |
CN107577516A (zh) * | 2017-07-28 | 2018-01-12 | 华为技术有限公司 | 虚拟机密码重置方法、装置和系统 |
CN109002344A (zh) * | 2018-06-12 | 2018-12-14 | 广东睿江云计算股份有限公司 | 一种云管理平台重置kvm虚拟机密码的方法 |
-
2019
- 2019-07-25 CN CN201910675449.0A patent/CN110442426B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902302A (zh) * | 2012-12-26 | 2014-07-02 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机软件安装系统及方法 |
CN104468811A (zh) * | 2014-12-17 | 2015-03-25 | 华为技术有限公司 | 升级方法及装置 |
CN105278999A (zh) * | 2015-11-19 | 2016-01-27 | 国云科技股份有限公司 | 一种安全高效虚拟机软件部署的方法 |
CN105279000A (zh) * | 2015-11-19 | 2016-01-27 | 北京北信源软件股份有限公司 | 一种虚拟机软件安装方法、安装控制器及安装代理 |
CN105530246A (zh) * | 2015-12-04 | 2016-04-27 | 华为技术有限公司 | 虚拟机管理的方法、装置和系统 |
WO2017092671A1 (zh) * | 2015-12-04 | 2017-06-08 | 华为技术有限公司 | 虚拟机管理的方法、装置和系统 |
CN107577516A (zh) * | 2017-07-28 | 2018-01-12 | 华为技术有限公司 | 虚拟机密码重置方法、装置和系统 |
CN109002344A (zh) * | 2018-06-12 | 2018-12-14 | 广东睿江云计算股份有限公司 | 一种云管理平台重置kvm虚拟机密码的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274053A (zh) * | 2020-01-20 | 2020-06-12 | 山东汇贸电子口岸有限公司 | 一种通过nova调用qemu guest agent接口的方法 |
CN112818397A (zh) * | 2021-02-03 | 2021-05-18 | 北京读我网络技术有限公司 | 一种基于动态空间管理的用户隐私数据保护方法及装置 |
CN113312149A (zh) * | 2021-06-18 | 2021-08-27 | 浪潮云信息技术股份公司 | 一种密码重置方法 |
CN114553462A (zh) * | 2021-12-28 | 2022-05-27 | 中国电信股份有限公司 | 云主机密码重置方法、平台系统、设备系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110442426B (zh) | 2023-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11025963B2 (en) | Data processing method, apparatus, and system for live streaming page | |
US11886282B2 (en) | Recovery method for terminal device startup failure and terminal device | |
CN110442426A (zh) | 一种密码重置方法、装置及存储介质 | |
CN104915241B (zh) | 一种虚拟机迁移控制方法及装置 | |
CN103544033B (zh) | 应用程序回退方法、装置及相关设备 | |
KR101821693B1 (ko) | 로밍 네트워크 액세스 방법 및 장치 | |
CN107273160A (zh) | 一种版本升级的方法及装置 | |
CN106709347B (zh) | 应用运行的方法及装置 | |
CN104142868B (zh) | 建立连接的方法及装置 | |
CN106502703B (zh) | 一种函数调用方法和装置 | |
CN104780164A (zh) | 一种运行游戏客户端的方法和装置 | |
WO2017107830A1 (zh) | 一种安装应用软件的方法、装置及电子设备 | |
CN111095199B (zh) | 一种加载应用的方法及终端设备 | |
CN106406944A (zh) | 一种禁止应用自启动的控制方法及系统 | |
CN107977272A (zh) | 应用运行的方法及装置 | |
CN110968508B (zh) | 一种小程序的加载时间确定方法、装置、终端及存储介质 | |
CN104424431A (zh) | 一种重置虚拟机用户登陆密码的方法及装置 | |
CN108090345B (zh) | linux系统外部命令执行方法及装置 | |
CN111078275A (zh) | 资源配置方法、装置、存储介质及服务器 | |
US9928134B2 (en) | Method and apparatus for repairing dynamic link library file | |
CN106708501B (zh) | 活动监控方法及装置 | |
CN108984265A (zh) | 检测虚拟机环境的方法及装置 | |
CN108984212B (zh) | 一种关闭进程的方法以及电子设备 | |
CN105302589B (zh) | 一种获取卸载信息的方法及装置 | |
CN106484480A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |