掌桥专利:专业的专利平台
掌桥专利
首页

一种应用软件管理方法、装置及计算机

文献发布时间:2023-06-19 16:11:11



技术领域

本发明涉及远程操作领域,特别是涉及一种应用软件管理方法、装置及计算机。

背景技术

现在的应用软件发布技术,是采用微软提供的应用发布服务器发布应用软件。具体应用时,用户需要在客户端对应用发布服务器进行部署,部署完成之后,应用发布服务器被开通,客户端和应用发布服务器就可以基于RDP(Remote Desktop Protocol,远程桌面协议)进行网络传输以使得应用发布服务器可以发送应用软件至客户端,以便于用户使用该应用软件。在现有技术中用户对于应用发布服务器的部署的操作相当复杂,并且该操作对于用户来说,难度较大,降低了用户的体验。

发明内容

本发明的目的是提供一种应用软件管理方法、装置及计算机,服务器端自动化完成对于应用发布服务器的部署,用户只需要发送应用发布服务器的部署指令,该操作对于用户来说,没有难度,操作极其简单,提高了用户的体验。

为解决上述技术问题,本发明提供了一种应用软件管理方法,包括:

服务器端接收到用户的应用发布服务器的部署指令时,基于自动化编排工具进行服务编排组装;

基于虚机镜像创建所述应用发布服务器的开通资源;

基于所述开通资源执行初始化脚本以完成对所述应用发布服务器的开通。

优选的,所述虚机镜像的创建过程为:

服务器端创建资产虚机,所述资产虚机内安装有设置为远程应用的应用软件、初始化脚本、应用发布服务及代理程序;

导出所述资产虚机的虚机镜像以完成对于所述虚机镜像的创建。

优选的,基于所述开通资源执行初始化脚本以完成对所述应用发布服务器的开通之后,还包括:

客户端在接收所述用户的应用访问指令时,发送对应应用访问指令的应用软件的调用指令至所述应用发布服务器;

接收所述应用发布服务器发送的与所述调用指令对应的所述应用软件。

获取所述应用软件的软件信息;

根据所述软件信息判断所述应用软件是否已经启用;

若否,根据所述软件信息填写所述应用软件启用时所需的参数,以完成对所述应用软件的启用。

优选的,在接收所述用户的应用访问指令之前,还包括

客户端接收所述用户的账号的认证指令时,判断所述账号是否认证成功;

若是,判定所述用户的账号认证成功并开通所述账号的权限以便于接收所述用户的应用访问指令。

优选的,判定所述用户的账号认证成功并开通所述账号的权限之后,还包括:

客户端调用中间逻辑层;

创建所述用户的客户端与所述中间逻辑层的会话;

创建远程RDP将所述中间逻辑层与所述应用发布服务器连接使得所述客户端与所述应用发布服务器建立连接。

优选的,还包括根据所述软件信息客户端判断所述应用软件已经启用时,直接调用所述应用软件。

优选的,还包括:

客户端判定所述用户的账号认证失败时,通过提示模块提示所述用户账号认证失败。

优选的,创建所述用户的客户端与所述中间逻辑层的会话之后,还包括:

客户端录制所述会话以对所述会话进行监测。

为解决上述技术问题,本发明还提供了一种应用软件管理装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述应用软件管理方法的步骤。

为解决上述技术问题,本发明还提供了一种计算机,包括如上述所述的应用软件管理装置。

本申请提供了一种应用软件管理方法、装置及计算机,涉及远程操作领域,服务器端接收到用户的应用发布服务器的部署指令时,基于自动化编排工具进行服务编排组装,基于虚机镜像创建应用发布服务器的开通资源,基于开通资源执行初始化脚本以完成对应用发布服务器的开通。服务器端自动化完成对于应用发布服务器的部署,用户只需要发送应用发布服务器的部署指令,该操作对于用户来说,没有难度,操作极其简单,提高了用户的体验。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种应用软件管理方法的流程图;

图2为本发明提供的一种建立资产虚机的示意图;

图3为本发明提供的一种应用发布服务器的创建示意图;

图4为本发明提供的一种应用软件管理方法整体的架构图;

图5为本发明提供的一种访问应用软件的示意图;

图6为本发明提供的一种应用软件管理装置的结构示意图。

具体实施方式

本发明的核心是提供一种应用软件管理方法、装置及计算机,服务器端自动化完成对于应用发布服务器的部署,用户只需要发送应用发布服务器的部署指令,该操作对于用户来说,没有难度,操作极其简单,提高了用户的体验。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参照图1,图1为本发明提供的一种应用软件管理方法的流程图。该方法包括:

S11:服务器端接收到用户的应用发布服务器的部署指令时,基于自动化编排工具进行服务编排组装;

S12:基于虚机镜像创建应用发布服务器的开通资源;

S13:基于开通资源执行初始化脚本以完成对应用发布服务器的开通。

对于应用发布服务器的部署过程,现有技术的用户操作极为复杂且难度较大,本申请只需要用户录入应用发布服务器的部署指令,过程为录入应用发布服务器的账号,和为应用发布服务器选择虚拟私有网络即可,操作简单,然后服务器端就会自动对应用发布服务器进行部署,也就是自动对应用发布服务器进行开通,服务器端的会基于自动化编排工具进行服务编排组装,基于虚机镜像创建应用发布服务器的开通资源,基于开通资源执行初始化脚本以完成对应用发布服务器的开通,在执行上述步骤之后,自动化的完成了对于应用发布服务器的部署,提高了用户的体验。

具体的,首先用户发起创建应用发布服务器流程,在客户端处理器的角度,用户录入应用发布服务器的账号、密码等信息,处理器通过账号录入窗口接收用户对于应用发布服务器的账号信息的录入指令,同时处理器创建虚拟私有网络选择窗口,该窗口弹出之后,用户选择应用发布服务器所在虚拟私有网络信息,至此,用户的操作已经完成,操作步骤极少,且操作过程简单,然后服务器端基于自动化编排工具,自动化编排工具为terraform,通过调用组件调取应用发布服务器,基于虚机镜像创建应用发布服务器的开通资源,也就是基于terraform模板通过provider调用Openstack平台开通资源,之后执行cloud-init初始化程序并且执行ansible脚本,动态进行启动服务的执行,进而完成对于应用发布服务器的开通,通过开发者对于应用发布服务器的前期设计,设计执行对于应用发布服务器的开通的脚本和程序完成对于应用发布服务器的开通,自动化部署代替人工部署,提高了自动化程度,提高了用户体验,简化了远程应用发布服务器的部署及配置流程,通过自动化创建流程,实现了对应用发布服务器的自动化安装部署,节省了大量部署配置时间,更大大降低了部署配置的难度系数。

另外,判断应用发布服务器的账号信息是否正确的过程是增加本方案的安全控制,在账号录入正确时,才会控制进入后续步骤,提高了方案的可靠性与安全性。

应用发布服务器的开通可以对应于整个方案的服务发布层,主要是对应用发布服务器的自动化发布。其中,镜像制作是该模块执行的前提,虚机镜像制作主要是在windows操作系统中安装部署应用发布服务器,同时对发布自动化提供脚本内置支持,将整个流程中使用的应用程序及代理程序内置到操作系统中。内置程序安装完成后,将虚机镜像进行导出转存并导入到Openstack平台。远程应用自动化发布主要是基于虚拟化技术,通过terraform脚本完成对资源网络、规格及其他的封装,基于平台定制化的provider组件完成与Openstack的交互,最终实现对资源的开通及管理,又基于cloud-init和ansible脚本实现对资源的初始化等。

需要说明的是,虚拟私有网络可以是局域网,这里用户可以在虚拟私有网络选择窗口自己进行选择,选择出适合应用发布服务器的局域网,提高了方案的灵活性和可塑性。

总的来说,本申请提供了一种应用软件管理方法、装置及计算机,涉及远程操作领域,服务器端接收到用户的应用发布服务器的部署指令时,基于自动化编排工具进行服务编排组装,基于虚机镜像创建应用发布服务器的开通资源,基于开通资源执行初始化脚本以完成对应用发布服务器的开通。服务器端自动化完成对于应用发布服务器的部署,用户只需要发送应用发布服务器的部署指令,该操作对于用户来说,没有难度,操作极其简单,提高了用户的体验。

在上述实施例的基础上:

请参照图2、图3、图4及图5,图2为本发明提供的一种建立资产虚机的示意图,图3为本发明提供的一种应用发布服务器的创建示意图,图4为本发明提供的一种应用软件管理方法整体的架构图,图5为本发明提供的一种访问应用软件的示意图。

作为一种优选的实施例,虚机镜像的创建过程为:

服务器端创建资产虚机,资产虚机内安装有设置为远程应用的应用软件、初始化脚本、应用发布服务及代理程序;

导出资产虚机的虚机镜像以完成对于虚机镜像的创建。

虚机镜像的创建过程,会建立资产虚机,该步骤属于开发阶段执行,属于应用发布服务器发布前执行的步骤,具体的,开通一台windows server操作系统的资产虚机,在该资产中安装应用发布服务器,内置安装使用的应用软件(Chrome、Firefox、Navicat等),安装BrokerProxy代理程序并发布成远程应用,内置虚机初始化脚本及开机自启动设置等等配置,之后导出虚机镜像就完成了整个资产虚机的建立。

作为一种优选的实施例,基于开通资源执行初始化脚本以完成对应用发布服务器的开通之后,还包括:

客户端在接收用户的应用访问指令时,发送对应应用访问指令的应用软件的调用指令至应用发布服务器;

接收应用发布服务器发送的与调用指令对应的应用软件。

获取应用软件的软件信息;

根据软件信息判断应用软件是否已经启用;

若否,根据软件信息填写应用软件启用时所需的参数,以完成对应用软件的启用。

客户端与应用发布服务器建立连接之后,用户可以选择需要的应用软件,比如在应用发布服务器的界面点击该软件之后,处理器发送对应应用访问指令的应用软件的调用指令至应用发布服务器,应用发布服务器接收到该指令之后,将对应应用访问指令的应用软件发送到用户的客户端,据此用户的客户端接收到应用软件,在用户点击应用软件之后,处理器自动发送指令至应用发布服务器,自动接收应用软件,自动化程度高,提高了可靠性。

接收到与调用指令对应的应用软件之后,处理器获取应用软件的软件信息来判断用户的计算机等设备是否已经打开了该应用软件,如果已经打开,则不需要再对该应用软件执行参数代填和控制启动的动作,节省了操作步骤,并且节约了时间,提高了效率,如果判断出高应用软件并没有启用,根据软件信息填写应用软件启用时所需的参数,以完成对应用软件的启用,处理器完成参数代填,参数填写完成时,用户就可以使用该应用软件。

需要说明的是,软件信息包括应用软件的类别与版本号信息,在判断应用软件是否已经启用是根据应用软件的类别与版本号信息来进行判断,进行参数代填同样是根据应用类别及版本号信息等,进行传入的参数进行数据代填访问,这里的传入的参数指的是接收到的应用软件的参数,比如:Navicat12版本则填入数据库、账号、密码等信息,相比于现有技术的人工填写参数,自动化的填写,节约时间,提高了效率,提高了自动化程度,提高了用户的体验。

对应用软件提供代理,即参数代填,给运维人员分配应用软件更精细化,运维人员无需知道远程应用登录服务的账号密码等信息,即可实现对远程服务的登录,定制化的代理应用组件BrokerProxy,实现对远程应用的代理操作(包括拉起应用软件、代填参数等等能力),进而实现了对远程服务的访问,提高了效率和可靠性。

参数代填的过程相当于应用代理层,采用脚本语言AutoHotKey开发,针对操作系统中安装的应用组件进行定制开发,提供基本的远程应用拉起及操作能力,根据入参判断选择拉起不同的目标应用,然后将传入的参数信息进行应用代填等(比如:Navicat需要输入对应的数据库账号及密码信息等)。

作为一种优选的实施例,在接收用户的应用访问指令之前,还包括

客户端接收用户的账号的认证指令时,判断账号是否认证成功;

若是,判定用户的账号认证成功并开通账号的权限以便于接收用户的应用访问指令。

在完成对应用发布服务器的开通之后,用户需要使用应用发布服务器中的应用软件之前,首先需要登录自己的账号,处理器接收账号之后,会进行信息核对,如果信息正确,则说明用户输入了正确的账号,之后处理器赋予该账号权限,用户之后就可以调用应用发布服务器的应用软件,如果信息不正确,处理器就不会赋予该账号的权限,以此保证应用发布服务器的安全性,提高了方案的安全性。

具体的,在用户输入自己的登录账号之后,处理器进行账号信息及token认证校验和账号角色权限校验,校验成功之后,说明该账号是正确的账号,判定用户的账号认证成功并开通账号的权限,封装guacamole协议报文,提高了方案的可靠性和安全性。

用户账号的认证相当于认证适配层,主要对开源组件guacamole的扩展实现,通过对扩展插件的开发,增加上层的访问权限控制,增加对账号的识别认证,同时又通过对角色的权限校验,实现对资源访问的时效性校验。认证适配层也支持单点登录的方式接入,对访问权限认证提供多样化支持。

作为一种优选的实施例,判定用户的账号认证成功并开通账号的权限之后,还包括:

客户端调用中间逻辑层;

创建用户的客户端与中间逻辑层的会话;

创建远程RDP将中间逻辑层与应用发布服务器连接使得客户端与应用发布服务器建立连接。

在用户的账号认证成功并开通账号的权限之后,处理器建立用户的客户端与应用发布服务器的连接,建立此连接之后,用户的客户端和远程的应用发布服务器之间就可以传输应用软件,但首先需要调用用户的客户端和远程的应用发布服务器的中间逻辑层,在封装guacamole协议报文之后,基于中间逻辑层guacamole的协议组装,首先创建用户的客户端与中间逻辑层的会话,将客户端与中间逻辑层连接,之后创建远程RDP将中间逻辑层与应用发布服务器连接,那么客户端与应用发布服务器建立连接就完成了连接,说明了连接的具体过程,提高了方案的完整性。

需要说明的是,创建用户的客户端与中间逻辑层的会话之前,还需要进行传参校验,校验传递过程的参数是否正确,校验正确之后创建远程RDP连接并保持,通过传参校验的步骤,再一次提高了安全性。

需要说明的是,客户端与应用发布服务器建立连接的过程相当于连接审计层,基于开源组件guacd实现,提供多种协议支持(VNC、RDP、TELNET、SSH等),对外暴露自身guacamole协议,实现对该模块的调用,对内通过封装RDP等协议,实现对远端资源(linux/windows资产、应用)的访问。

作为一种优选的实施例,还包括根据软件信息客户端判断应用软件已经启用时,直接调用应用软件。

根据软件信息客户端判断应用软件已经启用时,则直接调用应用软件,这样不再需要重新打开该应用软件,提高了方案的整体效率,也使得用户不需要再重新打开该应用软件,提高了用户的体验。

作为一种优选的实施例,还包括:

客户端判定用户的账号认证失败时,通过提示模块提示用户账号认证失败。

在用户登录自己的的账号信息时,也可能存在账号信息录入错误的情况,在该信息录入错误,可以提示用户信息错误,提高了用户的体验,提示的方式可以是通过计算机的报警器进行报警,也可以是在显示器上进行显示,显示出用户的账号信息录入错误的情况,提高了用户的体验。

作为一种优选的实施例,创建用户的客户端与中间逻辑层的会话之后,还包括:

客户端录制会话以对会话进行监测。

创建用户的客户端与中间逻辑层的会话之后,对整个连接过程进行会话录制,之后在审计时,可以使用录制的会话进行后续审计定责,从而对运维人员操作过程进行严格审计,进一步提高了整个运维过程的安全性。

请参照图6,图6为本发明提供的一种应用软件管理装置的结构示意图。

本发明还提供了一种应用软件管理装置,包括:

存储器1,用于存储计算机程序;

处理器2,用于执行所述计算机程序时实现如上述所述应用软件管理方法的步骤。

对于本发明提供的应用软件管理装置的介绍请参考上述所述应用软件管理方法的实施例,此处不再赘述。

本发明还提供了一种计算机,包括如上述所述的应用软件管理装置。

对于本发明提供的计算机的介绍请参考上述所述应用软件管理方法的实施例,此处不再赘述。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

技术分类

06120114731856