CN111679862A - 云主机关机方法、装置、电子设备及介质 - Google Patents

云主机关机方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN111679862A
CN111679862A CN202010444274.5A CN202010444274A CN111679862A CN 111679862 A CN111679862 A CN 111679862A CN 202010444274 A CN202010444274 A CN 202010444274A CN 111679862 A CN111679862 A CN 111679862A
Authority
CN
China
Prior art keywords
cloud host
shutdown
cloud
login
request
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
Application number
CN202010444274.5A
Other languages
English (en)
Inventor
张敏
江静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN202010444274.5A priority Critical patent/CN111679862A/zh
Publication of CN111679862A publication Critical patent/CN111679862A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/442Shutdown
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及云安全技术,应用于智慧安防领域中,提供一种云主机关机方法,包括:当接收到关机请求时,从所述关机请求中提取请求编号及网址,启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面,获取所述登录页面的用户名及输入密码,基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号,当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称,依次向所述云主机名称对应的云主机发送关机命令,通过对所述云主机列表中的云主机进行全自动化关机,提高了云主机的关机效率。本发明还涉及区块链技术,所述云主机列表存储于区块链中。

Description

云主机关机方法、装置、电子设备及介质
技术领域
本发明涉及云安全技术领域,尤其涉及一种云主机关机方法、装置、电子设备及介质。
背景技术
为了有效管理企业的计算机资源,增加了以虚拟化技术为基础的云计算机架构,这种架构能够向多个用户提供具有独立虚拟机的分布式计算机,如电脑及手机等设备作为客户端连接于分布式计算机,能够共享云计算机架构上提供的所有计算机资源,然而,当云计算机架构上的云主机被恶意代码或者病毒攻击时,处于同一云计算机架构上的设备也存在被恶意代码或者病毒攻击的风险。为了防止云主机被恶意攻击而影响硬件设备,通常会在夜间、周末等不使用云主机的时候,对能被外网访问的云主机进行关机操作。
目前是通过在每台云主机上配置相应的关机指令或者定时任务实现对云主机的关机,然而,由于这种方式需要人工登录到每台云主机上才能对每台云主机设置相应的关机指令或者定时任务,因此,在对多个云主机关机时,效率较低。
发明内容
鉴于以上内容,有必要提供一种云主机关机方法、装置、电子设备及介质,能够提高云主机的关机效率。
一种云主机关机方法,所述云主机关机方法包括:
当接收到关机请求时,从所述关机请求中提取请求编号及网址;
启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面;
获取所述登录页面的用户名及输入密码;
基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号;
当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称;
依次向所述云主机名称对应的云主机发送关机命令。
根据本发明优选实施例,所述启动与所述关机请求对应的目标浏览器包括:
根据所述关机请求确定目标浏览器,并获取所述目标浏览器的安装路径;
基于所述安装路径,获取所述目标浏览器的驱动文件;
采用Selenium WebDriver技术中的开启命令运行所述驱动文件。
根据本发明优选实施例,所述在所述目标浏览器上启动所述网址,得到登录页面包括:
当检测到所述目标浏览器输入所述网址时,搜寻与所述网址对应的页面;
当搜寻到与所述网址对应的页面时,将搜寻到的页面确认为所述登录页面,并利用Selenium WebDriver技术中的get()命令开启所述登录页面。
根据本发明优选实施例,所述获取所述登录页面的用户名及输入密码包括:
获取预设时间内所述目标浏览器的所有运行日志;
从所述所有运行日志中提取所述登录页面的目标日志;
利用JSON技术解析所述目标日志,得到所述用户名及所述输入密码。
根据本发明优选实施例,所述云主机关机方法还包括:
获取与所述用户名匹配的匹配密码;
验证所述输入密码与所述匹配密码是否一致;
若所述匹配密码与所述输入密码不一致,确定所述账号登录失败;或者
若所述匹配密码与所述输入密码一致,基于光学字符识别技术获取当前页面的所有字符,并检测所述所有字符中是否存在任意字符与配置按钮一致,当检测到任意字符与所述配置按钮一致时,确定所述账号登录成功;或者
当检测到所述所有字符与所述配置按钮都不一致时,确定所述账号登录失败。
根据本发明优选实施例,所述依次向所述云主机名称对应的云主机发送关机命令包括:
依次将所述云主机名称录入至配置按钮对应的空格中;
当检测到所述空格中包含任意云主机名称时,调用点击命令点击所述配置按钮;
当检测到所述配置按钮被点击时,获取关机命令,并将所述关机命令发送至所述任意云主机名称对应的云主机中。
根据本发明优选实施例,所述云主机列表存储于区块链中,所述调用点击命令点击所述配置按钮包括:
生成所述配置按钮的xpath表达式,并根据所述xpath表达式生成目标对象;
获取点击命令,并向所述点击命令中添加所述目标对象,得到目标脚本;
通过执行所述目标脚本以点击所述配置按钮。
一种云主机关机装置,所述装置包括:
提取单元,用于当接收到关机请求时,从所述关机请求中提取请求编号及网址;
启动单元,用于启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面;
获取单元,用于获取所述登录页面的用户名及输入密码;
登录单元,用于基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号;
读取单元,用于当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称;
发送单元,用于依次向所述云主机名称对应的云主机发送关机命令。
根据本发明优选实施例,所述启动单元启动与所述关机请求对应的目标浏览器包括:
根据所述关机请求确定目标浏览器,并获取所述目标浏览器的安装路径;
基于所述安装路径,获取所述目标浏览器的驱动文件;
采用Selenium WebDriver技术中的开启命令运行所述驱动文件。
根据本发明优选实施例,所述启动单元在所述目标浏览器上启动所述网址,得到登录页面包括:
当检测到所述目标浏览器输入所述网址时,搜寻与所述网址对应的页面;
当搜寻到与所述网址对应的页面时,将搜寻到的页面确认为所述登录页面,并利用Selenium WebDriver技术中的get()命令开启所述登录页面。
根据本发明优选实施例,所述获取单元获取所述登录页面的用户名及输入密码包括:
获取预设时间内所述目标浏览器的所有运行日志;
从所述所有运行日志中提取所述登录页面的目标日志;
利用JSON技术解析所述目标日志,得到所述用户名及所述输入密码。
根据本发明优选实施例,所述获取单元,还用于获取与所述用户名匹配的匹配密码;
所述装置还包括:
验证单元,用于验证所述输入密码与所述匹配密码是否一致;
确定单元,用于若所述匹配密码与所述输入密码不一致,确定所述账号登录失败;或者
所述确定单元,还用于若所述匹配密码与所述输入密码一致,基于光学字符识别技术获取当前页面的所有字符,并检测所述所有字符中是否存在任意字符与配置按钮一致,当检测到任意字符与所述配置按钮一致时,确定所述账号登录成功;或者
所述确定单元,还用于当检测到所述所有字符与所述配置按钮都不一致时,确定所述账号登录失败。
根据本发明优选实施例,所述发送单元依次向所述云主机名称对应的云主机发送关机命令包括:
依次将所述云主机名称录入至配置按钮对应的空格中;
当检测到所述空格中包含任意云主机名称时,调用点击命令点击所述配置按钮;
当检测到所述配置按钮被点击时,获取关机命令,并将所述关机命令发送至所述任意云主机名称对应的云主机中。
根据本发明优选实施例,所述云主机列表存储于区块链中,所述发送单元调用点击命令点击所述配置按钮包括:
生成所述配置按钮的xpath表达式,并根据所述xpath表达式生成目标对象;
获取点击命令,并向所述点击命令中添加所述目标对象,得到目标脚本;
通过执行所述目标脚本以点击所述配置按钮。
一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,获取所述存储器中存储的指令以实现所述云主机关机方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器获取以实现所述云主机关机方法。
由以上技术方案可以看出,本发明通过对所述云主机列表中的云主机进行全自动化关机,提高了云主机的关机效率。
附图说明
图1是本发明云主机关机方法的较佳实施例的流程图。
图2是本发明云主机关机装置的较佳实施例的功能模块图。
图3是本发明实现云主机关机方法的较佳实施例的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如图1所示,是本发明云主机关机方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
本方案属于智慧安防领域,通过本方案能够推动智慧城市的建设。所述云主机关机方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
所述电子设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
S10,当接收到关机请求时,从所述关机请求中提取请求编号及网址。
在本发明的至少一个实施例中,所述关机请求可以由用户触发,也可以在满足一定条件时自动触发,本发明不限制。
其中,所述满足一定条件包括,但不限于:满足预设时间等。
所述预设时间可以包括确定的时间点,或者包括一个时间段等,例如:所述预设时间可以是每天早上七点。
进一步地,所述关机请求中所携带的信息包括,但不限于:所述请求编号、所述网址等。
在本发明的至少一个实施例中,所述电子设备从所述关机请求中提取请求编号及网址包括:
所述电子设备获取第一标签及第二标签,进一步地,所述电子设备从所述关机请求所携带的所有信息中提取与所述第一标签对应的第一信息,作为所述请求编号,及提取与所述第二标签对应的第二信息,作为所述网址。
其中,所述第一标签及所述第二标签为预先定义好的标签,例如,address。
通过第一标签与请求编号的映射关系,能够准确确定所述请求编号,通过第二标签与网址的映射关系,能够准确确定所述网址。
S11,启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面。
在本发明的至少一个实施例中,所述目标浏览器是指预先设定的适用于所述关机请求的浏览器。
进一步地,所述目标浏览器可以是chrome浏览器,也可以是firefox浏览器。
在本发明的至少一个实施例中,所述登录页面是指登录所述网址进入的页面。
在本发明的至少一个实施例中,所述电子设备启动与所述关机请求对应的目标浏览器包括:
所述电子设备根据所述关机请求确定目标浏览器,并获取所述目标浏览器的安装路径,所述电子设备基于所述安装路径,获取所述目标浏览器的驱动文件,所述电子设备采用Selenium WebDriver技术中的开启命令运行所述驱动文件。
其中,所述Selenium WebDriver技术具有较强的可视化自动交互功能,所述Selenium WebDriver技术通过程序模拟人与网页的交互,从而触发动态数据地加载,进而获取动态生成的数据。
进一步地,所述Selenium WebDriver技术能够真实的模拟用户在网页上执行的操作,例如模拟用户点击“自动登录”、“点击链接”、“滚动鼠标”、“鼠标拖拽”、“页面加载完成后向下滚动”、“点击翻页”、“截图保存”等操作。在点击“自动登录”、“鼠标拖拽”、“页面加载完成后向下滚动”等功能时。
更进一步地,所述Selenium WebDriver技术能够实时地使用Ajax技术向服务器请求更多的数据,再使用JavaScript脚本动态生成内容并加载显示出来。
通过上述实施方式,能够准确、快速地启动与所述目标浏览器,通过启动网络性能好的目标浏览器,使云主机能够快速接收到关机命令,进而能够提高云主机的关机效率。
在本发明的至少一个实施例中,所述电子设备在所述目标浏览器上启动所述网址,得到登录页面包括:
当检测到所述目标浏览器输入所述网址时,所述电子设备搜寻与所述网址对应的页面,当搜寻到与所述网址对应的页面时,所述电子设备将搜寻到的页面确认为所述登录页面,并利用Selenium WebDriver技术中的get()命令开启所述登录页面。
例如:所述电子设备通过程序语言driver.get("http://www.XXX")可以打开XXX网址对应的页面,通过程序语言elem.send_keys(Keys.RETURN)可以模拟点击回车按钮,通过程序语言driver.close()可以关闭浏览器驱动等。
S12,获取所述登录页面的用户名及输入密码。
在本发明的至少一个实施例中,所述电子设备获取所述登录页面的用户名及输入密码包括:
所述电子设备获取预设时间内所述目标浏览器的所有运行日志。进一步地,所述电子设备从所述所有运行日志中提取所述登录页面的目标日志,所述电子设备利用JSON(JavaScript Object Notation,JS对象简谱)技术解析所述目标日志,得到所述用户名及所述输入密码。
其中,所述预设时间可以是一个时间段,也可以是一个时间点,所述预设时间的具体取值在本发明中不作限制。
进一步地,所述JSON技术是一种轻量级的数据交换格式。所述JSON技术采用完全独立于编程语言的文本格式来存储和表示数据,易于阅读和编写,同时也易于机器解析和生成。
通过上述实施方式,通过JSON技术能够快速、准确地从所述目标日志中解析得到所述用户名及所述密码。
S13,基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号。
在本发明的至少一个实施例中,所述电子设备基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号包括:
所述电子设备将所述登录页面上第一特征对应的坐标值确定为第一坐标,及将所述登录页面上第二特征对应的坐标值确定为第二坐标,进一步地,所述电子设备将所述用户名录入所述第一坐标,及将所述输入密码录入所述第二坐标,得到登录脚本,并运行所述登录脚本。
其中,所述第一特征及所述第二特征是指在所述登录页面上预先设定的标识。
通过上述实施方式,无需用户手动输入用户名及密码即可实现自动登录,提高了登录效率。
在本发明的至少一个实施例中,所述方法还包括:
所述电子设备获取与所述用户名匹配的匹配密码,进一步地,所述电子设备验证所述输入密码与所述匹配密码是否一致,若所述匹配密码与所述输入密码不一致,所述电子设备确定所述账号登录失败,或者若所述匹配密码与所述输入密码一致,所述电子设备基于OCR(Optical Character Recognition,光学字符识别)技术获取当前页面的所有字符,并检测所述所有字符中是否存在任意字符与配置按钮一致,当检测到任意字符与所述配置按钮一致时,所述电子设备确定所述账号登录成功,或者当检测到所述所有字符与所述配置按钮都不一致时,所述电子设备确定所述账号登录失败。
通过对所述账号进行验证,能够避免其他人恶意对云主机进行关机而造成损失,提高了安全性。
S14,当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称。
需要强调的是,为进一步保证上述云主机列表的私密和安全性,上述云主机列表还可以存储于一区块链的节点中。
在本发明的至少一个实施例中,所述云主机列表中存储多个云主机名称。
在本发明的至少一个实施例中,通过向读取到云主机名称对应的云主机发送关机命令,而无需在每台云主机上编写关机指令或者定时任务指令,节省了在每台云主机上编写指令的时间,提高了云主机的关机效率。
S15,依次向所述云主机名称对应的云主机发送关机命令。
在本发明的至少一个实施例中,所述电子设备依次向所述云主机名称对应的云主机发送关机命令包括:
所述电子设备依次将所述云主机名称录入至配置按钮对应的空格中,当检测到所述空格中包含任意云主机名称时,所述电子设备调用点击命令点击所述配置按钮,当检测到所述配置按钮被点击时,所述电子设备获取关机命令,并将所述关机命令发送至所述任意云主机名称对应的云主机中。
其中,所述配置按钮可以是在所述账号登录成功后进入的界面中存在的按钮。
通过所述账号向云主机列表中的云主机发送关机命令,以使多台云主机实现关机。
在本发明的至少一个实施例中,所述调用点击命令点击所述配置按钮包括:
所述电子设备生成所述配置按钮的xpath表达式,并根据所述xpath表达式生成目标对象,进一步地,所述电子设备获取点击命令,并向所述点击命令中添加所述目标对象,得到目标脚本,并通过执行所述目标脚本以点击所述配置按钮。
在本发明的至少一个实施例中,所述方法还包括:
当检测到所述云主机列表中有云主机未完成关机时,所述电子设备将未完成关机的云主机确定为目标云主机,进一步地,所述电子设备获取所述目标云主机上的报错信息,并根据所述报错信息从配置库中确定目标策略,所述电子设备以所述目标策略处理所述目标云主机,当检测到所述报错信息未被成功处理时,所述电子设备基于所述请求编号及所述目标云主机生成提醒信息,更进一步地,所述电子设备采用对称加密技术对所述提醒信息进行加密,得到加密信息,所述电子设备确定所述关机请求的请求等级,并根据所述请求等级确定所述加密信息的提醒方式,所述电子设备以所述提醒方式发送所述提醒信息。
其中,所述请求等级包括,但不限于:等级A、等级B等。
相应地,所述提醒方式包括,但不限于:电话、邮件等。
通过检测云主机列表中的云主机是否完成关机,能够在出现任意云主机没有完成关机时,及时发送提醒信息提醒相关联系人,同时,采用对称加密技术对提醒信息进行加密,不仅能够保证提醒信息的安全性,还能快速完成对提醒信息的加密,此外,通过确定关机请求的请求等级,能够确保加密信息以合适的方式发送至相关联系人的终端设备中。
由以上技术方案可以看出,本发明在向多台云主机发送关机指令之前,只需要在云主机列表中配置需关机的云主机即可,而无需在每台云主机上编写关机指令或者定时任务指令,节省了在每台云主机上编写指令的时间,在向多台云主机发送关机指令时,通过启动网络性能好的目标浏览器,使云主机能够快速接收到关机命令,进而通过所述账号向云主机列表中的云主机发送关机命令,以使所述云主机列表中的云主机实现全自动化关机提高了云主机的关机效率。
如图2所示,是本发明云主机关机装置的较佳实施例的功能模块图。所述云主机关机装置11包括提取单元110、启动单元111、获取单元112、登录单元113、读取单元114、发送单元115、验证单元116、确定单元117、处理单元118及生成单元119。本发明所称的模块/单元是指一种能够被处理器13所获取,并且能够完成固定功能的一系列计算机程序段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
当接收到关机请求时,提取单元110从所述关机请求中提取请求编号及网址。
在本发明的至少一个实施例中,所述关机请求可以由用户触发,也可以在满足一定条件时自动触发,本发明不限制。
其中,所述满足一定条件包括,但不限于:满足预设时间等。
所述预设时间可以包括确定的时间点,或者包括一个时间段等,例如:所述预设时间可以是每天早上七点。
进一步地,所述关机请求中所携带的信息包括,但不限于:所述请求编号、所述网址等。
在本发明的至少一个实施例中,所述提取单元110从所述关机请求中提取请求编号及网址包括:
所述提取单元110获取第一标签及第二标签,进一步地,所述提取单元110从所述关机请求所携带的所有信息中提取与所述第一标签对应的第一信息,作为所述请求编号,及提取与所述第二标签对应的第二信息,作为所述网址。
其中,所述第一标签及所述第二标签为预先定义好的标签,例如,address。
通过第一标签与请求编号的映射关系,能够准确确定所述请求编号,通过第二标签与网址的映射关系,能够准确确定所述网址。
启动单元111启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面。
在本发明的至少一个实施例中,所述目标浏览器是指预先设定的适用于所述关机请求的浏览器。
进一步地,所述目标浏览器可以是chrome浏览器,也可以是firefox浏览器。
在本发明的至少一个实施例中,所述登录页面是指登录所述网址进入的页面。
在本发明的至少一个实施例中,所述启动单元111启动与所述关机请求对应的目标浏览器包括:
所述启动单元111根据所述关机请求确定目标浏览器,所述启动单元111获取所述目标浏览器的安装路径,所述启动单元111基于所述安装路径,获取所述目标浏览器的驱动文件,所述启动单元111采用Selenium WebDriver技术中的开启命令运行所述驱动文件。
其中,所述Selenium WebDriver技术具有较强的可视化自动交互功能,所述Selenium WebDriver技术通过程序模拟人与网页的交互,从而触发动态数据地加载,进而获取动态生成的数据。
进一步地,所述Selenium WebDriver技术能够真实的模拟用户在网页上执行的操作,例如模拟用户点击“自动登录”、“点击链接”、“滚动鼠标”、“鼠标拖拽”、“页面加载完成后向下滚动”、“点击翻页”、“截图保存”等操作。在点击“自动登录”、“鼠标拖拽”、“页面加载完成后向下滚动”等功能时。
更进一步地,所述Selenium WebDriver技术能够实时地使用Ajax技术向服务器请求更多的数据,再使用JavaScript脚本动态生成内容并加载显示出来。
通过上述实施方式,能够准确、快速地启动与所述目标浏览器,通过启动网络性能好的目标浏览器,使云主机能够快速接收到关机命令,进而能够提高云主机的关机效率。
在本发明的至少一个实施例中,所述启动单元111在所述目标浏览器上启动所述网址,得到登录页面包括:
当检测到所述目标浏览器输入所述网址时,所述启动单元111搜寻与所述网址对应的页面,当搜寻到与所述网址对应的页面时,所述启动单元111将搜寻到的页面确认为所述登录页面,并利用Selenium WebDriver技术中的get()命令开启所述登录页面。
例如:所述启动单元111通过程序语言driver.get("http://www.XXX")可以打开XXX网址对应的页面,通过程序语言elem.send_keys(Keys.RETURN)可以模拟点击回车按钮,通过程序语言driver.close()可以关闭浏览器驱动等。
获取单元112获取所述登录页面的用户名及输入密码。
在本发明的至少一个实施例中,所述获取单元112获取所述登录页面的用户名及输入密码包括:
所述获取单元112获取预设时间内所述目标浏览器的所有运行日志。进一步地,所述获取单元112从所述所有运行日志中提取所述登录页面的目标日志,所述获取单元112利用JSON(JavaScript Object Notation,JS对象简谱)技术解析所述目标日志,得到所述用户名及所述输入密码。
其中,所述预设时间可以是一个时间段,也可以是一个时间点,所述预设时间的具体取值在本发明中不作限制。
进一步地,所述JSON技术是一种轻量级的数据交换格式。所述JSON技术采用完全独立于编程语言的文本格式来存储和表示数据,易于阅读和编写,同时也易于机器解析和生成。
通过上述实施方式,通过JSON技术能够快速、准确地从所述目标日志中解析得到所述用户名及所述密码。
登录单元113基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号。
在本发明的至少一个实施例中,所述登录单元113基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号包括:
所述登录单元113将所述登录页面上第一特征对应的坐标值确定为第一坐标,及将所述登录页面上第二特征对应的坐标值确定为第二坐标,进一步地,所述登录单元113将所述用户名录入所述第一坐标,及将所述输入密码录入所述第二坐标,得到登录脚本,更进一步地,所述登录单元113运行所述登录脚本。
其中,所述第一特征及所述第二特征是指在所述登录页面上预先设定的标识。
通过上述实施方式,无需用户手动输入用户名及密码即可实现自动登录,提高了登录效率。
在本发明的至少一个实施例中,所述获取单元112获取与所述用户名匹配的匹配密码,进一步地,验证单元116验证所述输入密码与所述匹配密码是否一致,若所述匹配密码与所述输入密码不一致,确定单元117确定所述账号登录失败,或者若所述匹配密码与所述输入密码一致,所述确定单元117基于OCR(Optical Character Recognition,光学字符识别)技术获取当前页面的所有字符,并检测所述所有字符中是否存在任意字符与配置按钮一致,当检测到任意字符与所述配置按钮一致时,所述确定单元117确定所述账号登录成功,或者当检测到所述所有字符与所述配置按钮都不一致时,所述确定单元117确定所述账号登录失败。
通过对所述账号进行验证,能够避免其他人恶意对云主机进行关机而造成损失,提高了安全性。
当检测到所述账号登录成功时,读取单元114读取与所述请求编号对应的云主机列表,得到云主机名称。
需要强调的是,为进一步保证上述云主机列表的私密和安全性,上述云主机列表还可以存储于一区块链的节点中。
在本发明的至少一个实施例中,所述云主机列表中存储多个云主机名称。
在本发明的至少一个实施例中,通过向读取到云主机名称对应的云主机发送关机命令,而无需在每台云主机上编写关机指令或者定时任务指令,节省了在每台云主机上编写指令的时间,提高了云主机的关机效率。
发送单元115依次向所述云主机名称对应的云主机发送关机命令。
在本发明的至少一个实施例中,所述发送单元115依次向所述云主机名称对应的云主机发送关机命令包括:
所述发送单元115依次将所述云主机名称录入至配置按钮对应的空格中,当检测到所述空格中包含任意云主机名称时,所述发送单元115调用点击命令点击所述配置按钮,当检测到所述配置按钮被点击时,所述发送单元115获取关机命令,更进一步地,所述发送单元115将所述关机命令发送至所述任意云主机名称对应的云主机中。
其中,所述配置按钮可以是在所述账号登录成功后进入的界面中存在的按钮。
通过所述账号向云主机列表中的云主机发送关机命令,以使多台云主机实现关机。
在本发明的至少一个实施例中,所述发送单元115调用点击命令点击所述配置按钮包括:
所述发送单元115生成所述配置按钮的xpath表达式,并根据所述xpath表达式生成目标对象,进一步地,所述发送单元115获取点击命令,更进一步地,所述发送单元115向所述点击命令中添加所述目标对象,得到目标脚本,更进一步地,所述发送单元115通过执行所述目标脚本以点击所述配置按钮。
在本发明的至少一个实施例中,当检测到所述云主机列表中有云主机未完成关机时,所述确定单元117将未完成关机的云主机确定为目标云主机,进一步地,所述获取单元112获取所述目标云主机上的报错信息,并根据所述报错信息从配置库中确定目标策略,处理单元118以所述目标策略处理所述目标云主机,当检测到所述报错信息未被成功处理时,生成单元119基于所述请求编号及所述目标云主机生成提醒信息,更进一步地,所述确定单元117采用对称加密技术对所述提醒信息进行加密,得到加密信息,并确定所述关机请求的请求等级,所述确定单元117根据所述请求等级确定所述加密信息的提醒方式,所述发送单元115以所述提醒方式发送所述提醒信息。
其中,所述请求等级包括,但不限于:等级A、等级B等。
相应地,所述提醒方式包括,但不限于:电话、邮件等。
通过检测云主机列表中的云主机是否完成关机,能够在出现任意云主机没有完成关机时,及时发送提醒信息提醒相关联系人,同时,采用对称加密技术对提醒信息进行加密,不仅能够保证提醒信息的安全性,还能快速完成对提醒信息的加密,此外,通过确定关机请求的请求等级,能够确保加密信息以合适的方式发送至相关联系人的终端设备中。
由以上技术方案可以看出,本发明在向多台云主机发送关机指令之前,只需要在云主机列表中配置需关机的云主机即可,而无需在每台云主机上编写关机指令或者定时任务指令,节省了在每台云主机上编写指令的时间,在向多台云主机发送关机指令时,通过启动网络性能好的目标浏览器,使云主机能够快速接收到关机命令,进而通过所述账号向云主机列表中的云主机发送关机命令,以使所述云主机列表中的云主机实现全自动化关机提高了云主机的关机效率。
如图3所示,是本发明实现云主机关机方法的较佳实施例的电子设备的结构示意图。
在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如云主机关机程序。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
所述处理器13可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及获取所述电子设备1的操作***以及安装的各类应用程序、程序代码等。
所述处理器13获取所述电子设备1的操作***以及安装的各类应用程序。所述处理器13获取所述应用程序以实现上述各个云主机关机方法实施例中的步骤,例如图1所示的步骤。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13获取,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述电子设备1中的获取过程。例如,所述计算机程序可以被分割成提取单元110、启动单元111、获取单元112、登录单元113、读取单元114、发送单元115、验证单元116、确定单元117、处理单元118及生成单元119。
所述存储器12可用于存储所述计算机程序和/或模块,所述处理器13通过运行或获取存储在所述存储器12内的计算机程序和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器12可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)等等。
所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器获取时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可获取文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
进一步地,所述计算机可读介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
结合图1,所述电子设备1中的所述存储器12存储多个指令以实现一种云主机关机方法,所述处理器13可获取所述多个指令从而实现:当接收到关机请求时,从所述关机请求中提取请求编号及网址;启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面;获取所述登录页面的用户名及输入密码;基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号;当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称;依次向所述云主机名称对应的云主机发送关机命令。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
需要强调的是,为进一步保证上述云主机列表的私密和安全性,上述云主机列表还可以存储于一区块链的节点中。
在本发明所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种云主机关机方法,其特征在于,所述云主机关机方法包括:
当接收到关机请求时,从所述关机请求中提取请求编号及网址;
启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面;
获取所述登录页面的用户名及输入密码;
基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号;
当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称;
依次向所述云主机名称对应的云主机发送关机命令。
2.如权利要求1所述的云主机关机方法,其特征在于,所述启动与所述关机请求对应的目标浏览器包括:
根据所述关机请求确定目标浏览器,并获取所述目标浏览器的安装路径;
基于所述安装路径,获取所述目标浏览器的驱动文件;
采用Selenium WebDriver技术中的开启命令运行所述驱动文件。
3.如权利要求1所述的云主机关机方法,其特征在于,所述在所述目标浏览器上启动所述网址,得到登录页面包括:
当检测到所述目标浏览器输入所述网址时,搜寻与所述网址对应的页面;
当搜寻到与所述网址对应的页面时,将搜寻到的页面确认为所述登录页面,并利用Selenium WebDriver技术中的get()命令开启所述登录页面。
4.如权利要求1所述的云主机关机方法,其特征在于,所述获取所述登录页面的用户名及输入密码包括:
获取预设时间内所述目标浏览器的所有运行日志;
从所述所有运行日志中提取所述登录页面的目标日志;
利用JSON技术解析所述目标日志,得到所述用户名及所述输入密码。
5.如权利要求1所述的云主机关机方法,其特征在于,所述云主机关机方法还包括:
获取与所述用户名匹配的匹配密码;
验证所述输入密码与所述匹配密码是否一致;
若所述匹配密码与所述输入密码不一致,确定所述账号登录失败;或者
若所述匹配密码与所述输入密码一致,基于光学字符识别技术获取当前页面的所有字符,并检测所述所有字符中是否存在任意字符与配置按钮一致,当检测到任意字符与所述配置按钮一致时,确定所述账号登录成功;或者
当检测到所述所有字符与所述配置按钮都不一致时,确定所述账号登录失败。
6.如权利要求1所述的云主机关机方法,其特征在于,所述依次向所述云主机名称对应的云主机发送关机命令包括:
依次将所述云主机名称录入至配置按钮对应的空格中;
当检测到所述空格中包含任意云主机名称时,调用点击命令点击所述配置按钮;
当检测到所述配置按钮被点击时,获取关机命令,并将所述关机命令发送至所述任意云主机名称对应的云主机中。
7.如权利要求6所述的云主机关机方法,其特征在于,所述云主机列表存储于区块链中,所述调用点击命令点击所述配置按钮包括:
生成所述配置按钮的xpath表达式,并根据所述xpath表达式生成目标对象;
获取点击命令,并向所述点击命令中添加所述目标对象,得到目标脚本;
通过执行所述目标脚本以点击所述配置按钮。
8.一种云主机关机装置,其特征在于,所述云主机关机装置包括:
提取单元,用于当接收到关机请求时,从所述关机请求中提取请求编号及网址;
启动单元,用于启动与所述关机请求对应的目标浏览器,并在所述目标浏览器上启动所述网址,得到登录页面;
获取单元,用于获取所述登录页面的用户名及输入密码;
登录单元,用于基于所述用户名及所述输入密码,在所述登录页面上登录所述用户名对应的账号;
读取单元,用于当检测到所述账号登录成功时,读取与所述请求编号对应的云主机列表,得到云主机名称;
发送单元,用于依次向所述云主机名称对应的云主机发送关机命令。
9.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,获取所述存储器中存储的指令以实现如权利要求1至7中任意一项所述的云主机关机方法。
10.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器获取以实现如权利要求1至7中任意一项所述的云主机关机方法。
CN202010444274.5A 2020-05-22 2020-05-22 云主机关机方法、装置、电子设备及介质 Pending CN111679862A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010444274.5A CN111679862A (zh) 2020-05-22 2020-05-22 云主机关机方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010444274.5A CN111679862A (zh) 2020-05-22 2020-05-22 云主机关机方法、装置、电子设备及介质

Publications (1)

Publication Number Publication Date
CN111679862A true CN111679862A (zh) 2020-09-18

Family

ID=72453289

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010444274.5A Pending CN111679862A (zh) 2020-05-22 2020-05-22 云主机关机方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN111679862A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4325361A1 (en) * 2022-08-17 2024-02-21 ThoughtSpot, Inc. Identifying cluster idleness for cluster shutdown

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140337953A1 (en) * 2013-05-08 2014-11-13 International Business Machines Corporation Cross-platform authentication from within a rich client
CN105306225A (zh) * 2015-11-03 2016-02-03 国云科技股份有限公司 一种基于Openstack的物理机远程关机方法
CN108848155A (zh) * 2018-06-08 2018-11-20 郑州云海信息技术有限公司 一种控制物理机的功能的方法和装置
CN110826035A (zh) * 2019-10-08 2020-02-21 云深互联(北京)科技有限公司 一种浏览器快速登录方法、装置、***及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140337953A1 (en) * 2013-05-08 2014-11-13 International Business Machines Corporation Cross-platform authentication from within a rich client
CN105306225A (zh) * 2015-11-03 2016-02-03 国云科技股份有限公司 一种基于Openstack的物理机远程关机方法
CN108848155A (zh) * 2018-06-08 2018-11-20 郑州云海信息技术有限公司 一种控制物理机的功能的方法和装置
CN110826035A (zh) * 2019-10-08 2020-02-21 云深互联(北京)科技有限公司 一种浏览器快速登录方法、装置、***及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
何增颖等: "基于Winsock网络通信的远程关机技术", 信息通信, no. 05, pages 62 - 64 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4325361A1 (en) * 2022-08-17 2024-02-21 ThoughtSpot, Inc. Identifying cluster idleness for cluster shutdown

Similar Documents

Publication Publication Date Title
CN110602052B (zh) 微服务处理方法及服务器
US11687645B2 (en) Security control method and computer system
RU2637477C1 (ru) Система и способ обнаружения фишинговых веб-страниц
US9934310B2 (en) Determining repeat website users via browser uniqueness tracking
JP4470069B2 (ja) 入力補助装置、入力補助システム、入力補助方法、及び、入力補助プログラム
CN111427803B (zh) 自动化随机测试方法、装置、计算机设备及介质
CN111797351A (zh) 页面数据管理方法、装置、电子设备及介质
CN112053143B (zh) 资金路由方法、装置、电子设备及存储介质
WO2022073508A1 (zh) 语音信息录入方法、装置、电子设备及存储介质
CN113761514A (zh) 一种云桌面多因子安全认证方法及***
US20220245208A1 (en) Method for switching skin of mini-program page, and electronic device
CN110837635A (zh) 一种设备验证的方法、装置、设备及存储介质
CN114418398A (zh) 场景任务开发方法、装置、设备及存储介质
CN114281707A (zh) 造数方法、业务应用测试方法及其相关设备
CN114356747A (zh) 显示内容的测试方法、装置、设备、存储介质及程序产品
CN112181482B (zh) 版本验证方法、装置、电子设备及存储介质
CN113946854A (zh) 一种文件访问控制方法、装置及计算机可读存储介质
CN111679862A (zh) 云主机关机方法、装置、电子设备及介质
CN112134968A (zh) 域名访问方法、装置、电子设备及存储介质
CN114626352B (zh) 报表自动化生成方法、装置、计算机设备及存储介质
CN112817816B (zh) 埋点处理方法、装置、计算机设备和存储介质
CN110327626B (zh) 虚拟服务器创建方法及装置
CN115858049B (zh) Rpa流程组件化编排方法、装置、设备和介质
CN113496017B (zh) 验证方法、装置、设备和存储介质
CN114218191A (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
AD01 Patent right deemed abandoned
AD01 Patent right deemed abandoned

Effective date of abandoning: 20240528