CN112187501B - 终端分组管理方法、装置、设备及存储介质 - Google Patents
终端分组管理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112187501B CN112187501B CN201910603500.7A CN201910603500A CN112187501B CN 112187501 B CN112187501 B CN 112187501B CN 201910603500 A CN201910603500 A CN 201910603500A CN 112187501 B CN112187501 B CN 112187501B
- Authority
- CN
- China
- Prior art keywords
- terminal
- grouping
- group
- target
- packet
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Game Theory and Decision Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种终端分组管理方法、装置、设备及存储介质。所述方法包括:在检测到满足对目标终端进行分组的条件时,确定目标终端的分组方式;根据分组方式,从终端树中查找与该分组方式相对应的候选分组;从候选分组中,选取目标终端所属的目标分组;将目标终端添加至目标分组中。本申请实施例在确定某一终端所属的分组时,首先筛选出与该终端的分组方式相对应的候选分组,然后再从候选分组中选取该终端所属的分组;相较于相关技术中遍历各个分组,然后分别检测该终端的相关信息是否符合进入每个分组的条件;本申请不需要遍历终端树中的各个分组,通过从候选分组中确定终端所属的分组,能够减少计算量,缩短终端分组的耗时,提升效率。
Description
技术领域
本申请实施例涉及计算机和互联网技术领域,特别涉及一种终端分组管理方法、装置、设备及存储介质。
背景技术
对于一些企业来说,由于企业内部存在较多数量的终端,通过对终端进行分组管理,是一种行之有效的解决方案。
在相关技术中,在确定某一终端所属的分组时,需要遍历各个分组,分别检测该终端的相关信息是否符合进入每个分组的条件,然后综合所有分组的检测结果,最终确定出该终端所属的分组。
由于需要遍历各个分组,导致在确定终端所属的分组时,耗时较长。
发明内容
本申请实施例提供了一种终端分组管理方法、装置、设备及存储介质,可用于解决相关技术在确定终端所属的分组时耗时较长的技术问题。所述技术方案如下:
一方面,本申请实施例提供一种终端分组管理方法,所述方法包括:
在检测到满足对目标终端进行分组的条件时,确定所述目标终端的分组方式;
根据所述分组方式,从终端树中查找与所述分组方式相对应的候选分组;其中,所述终端树包括呈树形结构的至少一个终端分组;
从所述候选分组中,选取所述目标终端所属的目标分组;
将所述目标终端添加至所述目标分组中。
另一方面,本申请实施例提供一种终端分组管理方法,所述方法包括:
显示终端分组管理页面,所述终端分组管理页面中包括终端树,所述终端树包括呈树形结构的至少一个终端分组;
获取在所述终端分组管理页面中输入的对应于目标终端的分组管理指令;
根据所述分组管理指令,向服务器发送接口调用请求,所述接口调用请求用于请求调用终端分组管理接口对所述目标终端进行分组;其中,所述终端分组管理接口用于从所述终端树中查找与所述目标终端的分组方式相对应的候选分组,并从所述候选分组中选取所述目标终端所属的目标分组;
接收所述目标终端的分组结果,所述分组结果用于指示所述目标终端所属的目标分组。
再一方面,本申请实施例提供一种终端分组管理装置,所述装置包括:
分组方式确定模块,用于在检测到满足对目标终端进行分组的条件时,确定所述目标终端的分组方式;
候选分组查找模块,用于根据所述分组方式,从终端树中查找与所述分组方式相对应的候选分组;其中,所述终端树包括呈树形结构的至少一个终端分组;
目标分组选取模块,用于从所述候选分组中,选取所述目标终端所属的目标分组;
终端添加模块,用于将所述目标终端添加至所述目标分组中。
再一方面,本申请实施例提供一种终端分组管理装置,所述装置包括:
页面显示模块,用于显示终端分组管理页面,所述终端分组管理页面中包括终端树,所述终端树包括呈树形结构的至少一个终端分组;
指令获取模块,用于获取在所述终端分组管理页面中输入的对应于目标终端的分组管理指令;
请求发送模块,用于根据所述分组管理指令,向服务器发送接口调用请求,所述接口调用请求用于请求调用终端分组管理接口对所述目标终端进行分组;其中,所述终端分组管理接口用于从所述终端树中查找与所述目标终端的分组方式相对应的候选分组,并从所述候选分组中选取所述目标终端所属的目标分组;
结果接收模块,用于接收所述目标终端的分组结果,所述分组结果用于指示所述目标终端所属的目标分组。
又一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述终端分组管理方法。
可选地,所述计算机设备为终端或服务器。
又一方面,本申请实施例提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述终端分组管理方法。
又一方面,本申请实施例提供一种计算机程序产品,当该计算机程序产品被执行时,其用于执行上述终端分组管理方法。
本申请实施例提供的技术方案带来的有益效果可以包括:
本申请实施例提供的技术方案中,在确定某一终端所属的分组时,首先筛选出与该终端的分组方式相对应的候选分组,然后再从候选分组中选取该终端所属的分组;相较于相关技术中遍历各个分组,然后分别检测该终端的相关信息是否符合进入每个分组的条件;本申请实施例提供的技术方案,不需要遍历终端树中的各个分组,通过从候选分组中确定终端所属的分组,能够减少计算量,从而缩短了确定终端所属的分组所需的耗时,提升了效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的实施环境的示意图;
图2示例性示出了移动终端分组的示意图;
图3是本申请一个实施例提供的终端分组管理方法的流程图;
图4示例性示出了一个包括IP分组的终端树的示意图;
图5是相关技术提供的一种基于IP分组方式确定终端所属分组的流程图;
图6示例性示出了一个包括LDAP分组的终端树的示意图;
图7是相关技术提供的一种基于LDAP分组方式确定终端所属分组的流程图;
图8是本申请实施例提供的确定终端所属分组的流程图;
图9示例性示出了分组迁移任务的状态变化的示意图;
图10示例性示出了一个终端树的策略设置页面的示意图;
图11示例性示出了Redis的发布订阅机制的示意图;
图12是本申请另一个实施例提供的终端分组管理方法的流程图;
图13示例性示出了一个终端分组管理页面的示意图;
图14示例性示出了终端分组和终端的属性信息的示意图;
图15是本申请一个实施例提供的终端分组管理装置的框图;
图16是本申请另一个实施例提供的终端分组管理装置的框图;
图17是本申请另一个实施例提供的终端分组管理装置的框图;
图18是本申请另一个实施例提供的终端分组管理装置的框图;
图19是本申请一个实施例提供的计算机设备的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行介绍说明之前,首先对本申请实施例中涉及的一些技术名词进行介绍说明。
1、LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)
LDAP是一个开放的、中立的、工业标准的应用协议,通过IP(Internet Protocol,互联网协议)协议提供访问控制和维护分布式信息的目录信息。LDAP定义了目录服务实现以及访问规范。LDAP可以用作企业的组织架构访问协议,基于LDAP可以对企业的组织架构进行访问。
不同的企业有着不同的组织架构访问协议,企业的组织架构访问协议定义了企业的组织架构以及访问规范。LDAP是一种通用的组织架构访问协议。除此之外,一些企业还会开发自有的组织架构访问协议。
2、LDAP分组
LDAP分组是指基于组织架构访问协议(如LDAP)的终端分组解决方案。通常情况下,一些规模较大的企业会采用LDAP分组解决方案,基于企业内部的组织架构,对企业内的终端进行分组管理。
3、IP分组
IP分组是指基于IP地址的终端分组解决方案。通常情况下,一些规模较小的企业会采用IP分组解决方案,基于企业内的终端的IP地址对终端进行分组管理。企业管理员在添加分组的时候,可以指定当前分组的IP段属性,当有满足该IP段属性的终端注册时会自动分配该组,达到按照IP地址自动分组的功能。组的属性值包含组ID、分组ID、组名称、IP段,其中组ID是后台分配,不可修改的,其他属性值都是可以修改的,但是组名称属性要求在同一父分组下不可以重复。
4、RESTful
RESTful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。
REST的全称是Representational State Transfer,中文意思是表述性状态转移。REST指的是一组架构约束条件和原则。如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构。REST本身并没有创造新的技术、组件或服务,而隐藏在RESTful背后的理念就是使用Web的特征和能力,更好地使用Web标准中的一些准则和约束。虽然REST本身受Web技术的影响很深,但是理论上REST架构风格并不是绑定在HTTP(HyperText TransferProtocol,超文本传输协议)上,只不过目前HTTP是唯一与REST相关的实例。
5、Beanstalkd
Beanstalkd是一个高性能、轻量级的分布式内存队列系统。它支持优先级(priority)、持久化(persistent data)、预留(buried)、任务超时重发(time-to-run)等特性,能够很好的支持分布式的后台任务和定时任务处理。
6、Redis
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value(键值对)数据库,并提供多种语言的API(Application ProgrammingInterface,应用程序编程接口)。
请参考图1,其示出了本申请一个实施例提供的实施环境的示意图。该实施环境可以包括:管理终端10和服务器20。
管理终端10是企业的管理员所使用的计算机设备。管理终端10可以是PC(Personal Computer,个人计算机),如台式计算机或笔记本电脑。当然,管理终端10还可以是其它具备计算和处理能力的电子设备,本申请实施例对此不作限定。管理终端10的数量可以是一个,也可以是多个。也即,对于同一个企业来说,其管理员可以有一个,也可以有多个。
管理员可以通过管理终端10向服务器20发起对企业内终端的分组管理请求。可选地,管理员可以通过管理终端10,以web方式或客户端的方式,登录至服务器20的控制中心,向服务器20发起分组管理请求。
服务器20用于对管理终端10发起的分组管理请求进行响应,执行对终端进行分组管理的业务逻辑。服务器20可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
管理终端10与服务器20之间可以通过网络进行通信,如有线网络或无线网络。
另外,如图1所示,该实施环境还可以包括数据库30。数据库30用于存储企业内终端40的相关信息(如终端树),以便于服务器20在对终端40进行分组管理时,为服务器20提供必要的数据。
示例性地,如图1所示,终端树50包括呈树形结构的至少一个终端分组(本文中有些地方简称为“分组”或“组”)。每个终端分组中可用于添加至少一个终端。终端树50包括至少一个节点,每个节点对应于一个终端分组,节点之间呈树状结构连接。终端树50包括至少一层节点,对于具有连接关系的第i层节点和第i+1层节点,这两个节点具有父子关系,该第i层节点可以称为第i+1层节点的父节点,该第i+1层节点可以称为第i层节点的子节点,i为正整数。相应地,该第i层节点对应的分组,可以称为第i+1层节点对应的分组的父分组;该第i+1层节点对应的分组,可以称为第i层节点对应的分组的子组。一个父分组下的子组的数量具有不确定性。第1层节点通常为1个,该节点也称为根节点。以图1所示的终端树50为例,该终端树50包括4层节点,其中,第1层节点包括节点1,第二层节点包括节点2、节点3和节点4,第3层节点包括节点5、节点6、节点7、节点8和节点9,第4层节点包括节点10和节点11。节点1为根节点,节点1的子节点包括节点2、节点3和节点4,节点3的子节点包括节点5和节点6,节点2没有子节点,节点4的子节点包括节点7、节点8和节点9,节点7的子节点包括节点10和节点11,节点8和节点9没有子节点。
在本申请实施例中,服务器20基于终端树50对企业内终端40进行分组管理,如包括添加分组、修改分组、移动分组、删除分组、确定终端所属分组、调整终端所属分组,等等。
在上文实施例中已经介绍,对终端树50进行分组管理的业务逻辑由服务器20来执行,因此在服务器20中,需要实现终端树50的生成、遍历、子树移动等功能。
1、终端树的生成
终端树的生成可以依靠递归插入子树来实现,插入的位置取决于各个终端分组的树路径的值。终端分组的树路径是指从根节点到该终端分组对应的节点的路径。以图1所示的终端树50为例,分组9的树路径为[1,4,9],分组10的树路径为[1,4,7,10]。
示例性地,终端树的生成流程可以如下:
(1)初始化生成终端树的根节点;
(2)调用终端树插入函数,在终端树中插入节点;其中,终端树插入函数用于插入节点,终端树插入函数可以是insert2GroupTree函数;
(3)对请求插入的节点进行参数校验,如果请求插入的节点的树路径为1或者请求插入的终端树不存在,则视为非法请求,拒绝插入该节点;
(4)插入函数为树路径和终端树的根节点的指针,插入的过程中也会先校验根节点的有效性;
(5)当请求插入的节点的树路径的长度为2时,则在根节点下层插入该节点,如果该节点已经存在,则无需重复插入;
(6)当请求插入的节点的树路径的长度大于2时,则执行递归生成树的操作;如果上一级节点已存在的话,那么直接递归生成该请求插入的节点即可,如果上一级节点不存在,则需要递归生成上一级节点,然后再完成该请求插入的节点的插入操作。
2、终端树的遍历
在确定终端所属的分组时,需要对终端树进行按层遍历,按照终端树的层次一层层去匹配,直至匹配出一个最佳的分组。可选地,采用广度优先搜索算法来完成对终端树的遍历。
终端树的分层遍历,顾名思义,在终端树中,把节点从左往右,一层一层的,从上往下,遍历每一个节点,直至找到合适的节点为止。在终端树的遍历过程中,需要用到队列,将获取的节点添加至队列中,按照先进先出的原则,先添加进队列的节点先进行处理。
可选地,依照IP分组优先输出的原则,终端树的遍历流程可以如下:
(1)将根节点放入队列中;
(2)当队列为非空时,循环执行下述步骤(3)到步骤(5),否则执行步骤(6);
(3)出队列取得一个节点,访问该节点;
(4)若该节点的子节点为非空,遍历该节点的所有子节点,优先将IP分组对应的子节点依次加入队列;
(5)若该节点的子节点为非空,遍历该节点的所有子节点,再将非IP分组对应的子节点依次加入队列;
(6)结束。
3、终端树的子树移动
当管理员在终端分组管理页面中请求修改终端树中的某一终端分组的父分组的时候,就会涉及到子树移动。例如,如图2所示,将节点3的父节点由节点1修改为节点9,相应的移动流程可以如下:
(1)按层遍历终端树,找到节点3的子树;
(2)将节点3的子树删除;
(3)按层遍历终端树,找到节点9;
(4)将节点3的子树插入到节点9的子树中;
(5)完成子树的移动操作。
另外,为了确保终端分组计算的准确性,对于终端树中的同一层节点,其对应的IP段不能重叠。在管理员新建或者修改IP分组的时候,第一步是校验IP段的合法性,然后再去比对同一层节点中是否有重叠的IP段。示例性地,获取某一层所有节点的分组ID的流程可以如下:
(1)计算当前分组的层深度nLevel;
(2)根据层深度按层遍历整个终端树,首先将根节点放入队列中;
(3)当队列为非空时,循环执行步骤(4)到步骤(6),否则执行步骤(7);
(4)出队列取得一个节点,访问该节点;
(5)若该节点层深度与nLevel相等,则保存该节点值;
(6)若该节点的子节点为非空,遍历该节点的所有子节点,并计算每一个节点的层深度,如果不大于nLevel,则依次加入队列;
(7)结束。
在计算得到所有的同层节点之后,再与当前分组的新建或是修改的IP段作比较,确认无重叠的情况发生。若有重叠的情况发生,则会返回具体的重叠组和重叠IP段的详情,以供管理员对IP段进行修改时作参考。
请参考图3,其示出了本申请一个实施例提供的终端分组管理方法的流程图。该方法可应用于图1所示的实施环境中,例如各步骤的执行主体可以是服务器20。该方法可以包括如下几个步骤(301~304):
步骤301,在检测到满足对目标终端进行分组的条件时,确定目标终端的分组方式。
可选地,当服务器接收到管理终端发送的对应于目标终端的分组管理请求,且该分组管理请求是用于确定目标终端所属的分组的请求时,说明满足对目标终端进行分组的条件,服务器开始执行针对目标终端的分组流程。或者,当服务器检测到目标终端的标识信息发生变化时,会基于该新的标识信息重新确定目标终端所属的分组,此时满足对目标终端进行分组的条件,服务器开始执行针对目标终端的分组流程。当然,在其它实施例中,对目标终端进行分组的条件还可以有其它情况,本申请实施例对此不作限定。
目标终端的标识信息用于唯一指示该目标终端。在本申请实施例中,同时支持基于IP分组方式和基于LDAP分组方式来对终端树进行分组管理。相应地,目标终端的标识信息也就可以是目标终端的IP地址,或者是目标终端的用户标识。目标终端的用户标识用于唯一指示该目标终端对应的用户,以便于根据该目标终端的用户标识,结合组织架构确定出目标终端所属的LDAP分组。目标终端的用户标识作为该目标终端的登录信息的识别符,是基于LDAP分组的唯一依据。目标终端的用户标识可以记为device_mark,其可以是目标终端的登录用户名称或者其它唯一标识符。
可选地,如果目标终端的标识信息包括该目标终端的IP地址,则确定目标终端的分组方式为IP分组方式;如果目标终端的标识信息包括该目标终端的用户标识,则确定目标终端的分组方式为LDAP分组方式。
步骤302,根据分组方式,从终端树中查找与该分组方式相对应的候选分组。
在本申请实施例中,终端树包括呈树形结构的至少一个终端分组。有关终端树的介绍说明可参见上文实施例,此处不再赘述。
可选地,如果目标终端的分组方式为IP分组方式,则服务器从终端树中查找符合条件的IP分组作为候选分组;如果目标终端的分组方式为LDAP分组方式,则服务器从终端树中查找符合条件的LDAP分组作为候选分组。
在本申请实施例中,终端分组的类型包括普通分组、IP分组和LDAP分组。普通分组是指由管理员手动进行分组的终端分组,IP分组是指基于IP分组方式进行自动分组的终端分组,LDAP分组是指基于LDAP分组方式进行自动分组的终端分组。
可选地,如果目标终端的分组方式为IP分组方式,则服务器获取终端树中的各个IP分组对应的IP地址段,然后获取IP地址段包含目标终端的IP地址的候选IP分组,目标终端所属的目标分组从该候选IP分组中选取。如果目标终端的分组方式为LDAP分组方式,则服务器获取终端树中的各个LDAP分组对应的组织架构,然后获取组织架构包含目标终端的用户标识的候选LDAP分组,目标终端所属的目标分组从该候选LDAP分组中选取。
服务器可以根据终端树中各个终端分组的属性值,从终端树中查找与目标终端的分组方式相对应的候选分组。其中,终端分组的属性值可以包括该分组对应的IP地址段和/或该分组对应的组织架构。对于某一个终端分组来说,如果目标终端的IP地址属于该终端分组对应的IP地址段(简称为“IP段”),则可以将该目标终端分配至该终端分组,否则不能将该目标终端分配至该终端分组。对于某一个终端分组来说,如果目标终端的用户标识属于该终端分组对应的组织架构,则可以将该目标终端分配至该终端分组,否则不能将该目标终端分配至该终端分组。
步骤303,从候选分组中,选取目标终端所属的目标分组。
服务器在得到候选分组之后,可以从该候选分组中选择一个分组,作为目标终端所属的目标分组。可选地,若候选分组的数量为1,则将这一个候选分组确定为目标终端所属的目标分组;若候选分组的数量大于1,则从这些候选分组中选择一个作为目标终端所属的目标分组。例如,服务器可以从这些候选分组中随机选择一个作为目标终端所属的目标分组;或者,服务器也可以按照预设选取规则,从这些候选分组中随机选择一个作为目标终端所属的目标分组。
步骤304,将目标终端添加至目标分组中。
服务器在终端树中找到目标终端所属的目标分组之后,将该目标终端添加至目标分组中。另外,如果服务器在终端树中未找到目标终端所属的目标分组,则说明终端树中不存在目标终端所属的目标分组,服务器可以将该目标终端添加至未分组集合中。
综上所述,本申请实施例提供的技术方案中,在确定某一终端所属的分组时,首先筛选出与该终端的分组方式相对应的候选分组,然后再从候选分组中选取该终端所属的分组;相较于相关技术中遍历各个分组,然后分别检测该终端的相关信息是否符合进入每个分组的条件;本申请实施例提供的技术方案,不需要遍历终端树中的各个分组,通过从候选分组中确定终端所属的分组,能够减少计算量,从而缩短了确定终端所属的分组所需的耗时,提升了效率。
结合参考图4,其示例性示出了一个包括IP分组的终端树的示意图。每个分组对应的IP段可以包括一个,也可以包括多个。在给终端树中的分组配置相应的IP段时,限制条件是深度相同(也即同一层)的分组不允许IP段出现重叠。例如,【192.168.1.1,192.168.1.4】与【192.168.1.3,192.168.1.10】,则认为是两个存在重叠的IP段。限制不重叠规则确保了同一层分组计算结果的唯一性。
具有父子关系的两个终端分组,是允许IP段出现重叠的,如果某一终端的IP地址既属于某一父分组对应的IP段又属于该父分组的某一子组对应的IP段,则将该终端分配至子组中。例如,假设图4中节点的编号代表分组的编号,如节点1代表分组1,假设分组5对应的IP段为【192.168.1.1,192.168.1.100】,分组6对应的IP段为【192.168.1.101,192.168.2.100】,分组10对应的IP段为【192.168.1.1,192.168.1.50】,那么IP地址为【1921.168.1.1】的终端会进入分组10,IP地址为【192.168.2.100】的终端会进入分组6,IP地址为【192.168.2.101】的终端会进入分组5。
如果采用遍历终端树的方式,基于IP分组方式确定目标终端所属的分组的流程如下:
1、分层遍历终端树中的各个节点,每一个节点对应于一个分组;
2、根据目标终端的IP地址以及各个分组对应的IP地址段,检测第i层节点中是否存在IP地址段包含目标终端的IP地址的目标分组,其中,i的初始值为1,i为正整数;
3、若存在目标分组,则检测目标分组中是否存在IP地址段包含目标终端的IP地址的目标子组;若存在目标子组,则将该目标子组确定为目标终端所属的分组;若不存在目标子组,则将目标分组确定为目标终端所属的分组;
4、若不存在目标分组,则令i=i+1,检测终端树中是否存在第i层节点;若存在第i层节点,则再次从检测第i层节点中是否存在IP地址段包含目标终端的IP地址的目标分组的步骤开始执行;若不存在第i层节点,则确定终端树中不存在目标终端所属的分组。
可选地,该基于IP分组方式确定目标终端所属的分组的流程可以如图5所示,采用分层遍历的算法计算分组。如果限制了同层IP段不允许重叠,则一层至多有一个分组满足要求。如无法找到则进入未分组,如可以找到满足需求的一个分组,再看其子组,若该分组有子组也可以满足要求,那么递归计算子组是否有满足要求的分组,直至没有满足要求的或是没有子组为止,那么上一分组就是所需要的分组。
结合参考图6,其示例性示出了一个包括LDAP分组的终端树的示意图。导入LDAP的组织架构的唯一要求就是不允许出现LDAP嵌套。当LDAP分组的父分组(如图6中的分组7、分组9)是IP分组的时候,那么进入该LDAP分组的终端必须满足父分组的IP段范围限制。LDAP分组不允许删除,但是可以添加IP段属性,添加新的子组(如图6中的分组14和分组18)。
如果采用遍历终端树的方式,基于LDAP分组方式确定目标终端所属的分组的流程如下:
1、分层遍历终端树中的各个节点,每一个节点对应于一个分组;
2、根据目标终端的用户标识以及各个分组对应的组织架构,检测第i层节点中是否存在组织架构包含目标终端的用户标识的目标分组,其中,i的初始值为1,i为正整数;
3、若存在目标分组且目标分组存在父分组,则检测目标分组的父分组是否有IP段;若目标分组的父分组有IP段且目标终端的IP地址不属于该IP段,则查看下一个目标分组;若目标分组的父分组有IP属性且目标终端的IP地址属于该IP段,或者目标分组的父分组没有IP段,则检测目标分组对应的组织架构中是否有目标终端所属的分组;
4、若存在目标分组且目标分组不存在父分组,则令i=i+1,检测终端树中是否存在第i层节点;若存在第i层节点,则再次从检测第i层节点中是否存在组织架构包含目标终端的用户标识的目标分组的步骤开始执行;若不存在所述第i层节点,则确定所述终端树中不存在所述目标终端所属的分组。
可选地,该基于LDAP分组方式确定目标终端所属的分组的流程可以如图7所示,采用分层遍历的算法计算分组,当前层如果有LDAP父分组,那么先判定该终端是否满足父分组的IP段范围(如果有的话),不满足则直接跳过。如果满足了父分组的IP段范围限制,则查询是否有分组匹配终端的用户标识,如果有的话则进入该分组,如无则递归计算下一层,计算完毕没有找到合适的分组则进入未分组。
上文介绍的基于IP分组方式和LDAP分组方式确定目标终端所属的分组的方式,需要遍历终端树中的各个节点,导致确定终端分组所需的耗时较长。
在本申请实施例中,结合参考图8,提供了一种确定目标终端所属的目标分组的方式,流程如下:
1、确定目标终端的分组方式;
2、若目标终端的分组方式为IP分组方式,则执行下述步骤3~8;若目标终端的分组方式为LDAP分组方式,则执行下述步骤9~13;
3、根据目标终端的IP地址和终端树中的各个IP分组对应的IP地址段,获取IP地址段包含目标终端的IP地址的候选IP分组;
4、获取候选IP分组的数量;
5、若候选IP分组的数量为1,则将这1个候选IP分组确定为目标终端所属的IP分组;
6、若候选IP分组的数量为2,则从这2个候选IP分组中选择一个作为目标终端所属的IP分组;
可选地,检测这2个候选IP分组是否具有父子关系;若具有父子关系,则将这2个候选IP分组中的子组确定为目标终端所属的IP分组;若不具有父子关系,则将这2个候选IP分组中深度浅的组确定为目标终端所属的IP分组。
7、若候选IP分组的数量大于2,则分层遍历终端树中的各个IP分组,查找目标终端所属的IP分组;
8、若候选IP分组的数量为0,则确定终端树中不存在目标终端所属的IP分组;
9、根据目标终端的用户标识以及终端树中的各个LDAP分组对应的组织架构,从终端树中选取符合条件的候选LDAP分组;
可选地,上述条件包括:组织架构包含目标终端的设备标识。可选地,上述条件还包括:不存在父分组或者存在父分组但父分组的IP地址段包含目标终端的IP地址。
10、获取候选LDAP分组的数量;
11、若候选LDAP分组的数量为1,则将这1个候选LDAP分组确定为目标终端所属的LDAP分组;
12、若候选LDAP分组的数量大于等于2,则从这些候选LDAP分组中选择一个作为目标终端所属的LDAP分组;
可选地,将这些候选LDAP分组中深度最小的LDAP分组确定为目标终端所属的LDAP分组。
13、若候选LDAP分组的数量为0,则确定终端树中不存在目标终端所属的LDAP分组。
如果采用遍历终端树中的各个节点的方式,基于IP地址确定目标终端所属的目标分组,在一个有10万以上终端,2万多个分组,100多个IP段的终端树中进行测试,完成一次全量的IP段计算大概需要20秒时间,这会引起前端调用后台接口的超时,给管理员不好的体验。考虑到IP段是由管理员手动创建的,其数目通常不会太多,因此可以先获取IP地址段包含目标终端的IP地址的候选IP分组,假设候选IP分组的数量为M。在实际应用中,M的值为0、1、2的可能性最大,占据90%以上。若M为0,则直接将目标终端划分至未分组即可;若M为1,则直接将这1个候选IP分组确定为目标终端所属的IP分组;若M为2,则从这2个候选IP分组中选择一个作为目标终端所属的IP分组;只有当M大于2时,才需要利用终端树进行分层遍历,这样就大大提高了计算效率。仍然在上述有10万以上终端,2万多个分组,100多个IP段的终端树中进行测试,一次全量计算由20秒左右降低到2秒以内,计算性能有了极大提升。
类似地,考虑到终端树导入的组织架构的数量通常是有限制的,实际应用中,不会有过多的组织架构导入,通常不会有大于5个组织架构导入。因此,通过筛选出符合条件的候选LDAP分组,如果候选LDAP分组的数量为0,则直接将目标终端划分至未分组即可;如果候选LDAP分组的数量为1,则直接将这1个候选LDAP分组确定为目标终端所属的LDAP分组;如果候选LDAP分组的数量大于等于2,则将这些候选LDAP分组中深度最小的LDAP分组确定为目标终端所属的LDAP分组,如果深度最小的LDAP分组超过一个,为了保证计算结果的稳定性,可以取组ID最小那个作为目标终端所属的LDAP分组。
综上所述,在本申请实施例提供的技术方案中,提供了一个基于LDAP组织架构和IP段分组的企业安全终端树分组的解决方案,同时支持LDAP分组和IP分组的需求,且两者的优先级可配置,也可以单独取用一个分组方式。另外,在基于分层遍历计算终端分组的基础上,做出算法优化,提升了分组计算的性能。
在示例性实施例中,在服务器检测到目标终端的标识信息(如IP地址或用户标识)发生变化时,会基于该新的标识信息重新确定目标终端所属的目标分组。
在目标终端的标识信息发生变化时,服务器会收到标识信息变更通知,该标识信息变更通知中可以携带目标终端的新的标识信息,以便于服务器基于该新的标识信息重新确定目标终端所属的目标分组。例如,当目标终端的用户标识(即device_mark)发生变化时,目标终端会向服务器发送该用户标识发生变更的通知。
在示例性实施例中,服务器在检测到目标终端的标识信息发生变化时,将目标终端对应的分组迁移任务添加至任务队列中;从任务队列中按序获取待执行的分组迁移任务进行执行。其中,任务队列可以采用Beanstalkd队列。
Beanstalk主要包括4个部分:
1、job(任务):一个需要异步处理的任务,需要放在一个tube中。
2、tube(任务队列):一个有名的任务队列,用来存储统一类型的job,是producer和consumer操作的对象。
3、producer(生产者):job的生产者,通过put放置命令来将一个job放到一个tube中。
4、consumer(消费者):job的消费者,通过reserve、release、bury、delete命令来获取job或改变job的状态。
任务队列中的任务可以在delayed(延迟)状态、ready(待消费者读取)状态、reserved(消费者处理中)状态、buried(预留)状态、delete(处理完成删除)状态之间进行迁移变化。
如图9所示,当目标终端对应的分组迁移任务被添加至Beanstalkd的一个任务队列中之后,该分组迁移任务就处于ready态,然后远程调用方立即返回,这样避免了远程调用方因业务处理逻辑而产生的等待,提升了调用的吞吐率。当消费者执行完该任务时,该任务即处于reserved态,然后再把该任务删除。Beanstalk提供有完善的备份机制,将未执行完的任务保存在文件中,这样避免了没来得及执行的任务在服务意外退出后丢失,提升了可靠性。
在本申请实施例中,针对终端因标识信息发送变化导致其分组发生变化的情况,提供了一种基于任务队列(如Beanstalkd队列)的解决方案,确保终端实现动态的迁移分组。
在示例性实施例中,当服务器检测到终端树中存在分组变化或终端移动时,服务器生成策略变更通知,该策略变更通知用于向受影响终端提供更新后的安全策略。服务器将策略变更通知发布至第一存储系统,该第一存储系统用于将策略变更通知发送给向受影响终端。
终端树中的分组对应设置有安全策略,该安全策略是指对终端进行安全防护的策略。如图10所示,其示例性示出了一个终端树的策略设置页面100的示意图,在该策略设置页面100中,管理员可以给各个终端分组设置相应的安全策略,如病毒查杀策略、实时防护策略、漏洞修复策略、信息采集策略等。
子分组的安全策略由其父分组继承而来,在此基础上管理员也可以进行修改,当子分组的某一项安全策略有修改的时候,会显示该项安全策略不继承父分组的安全策略。在数据库存储的时候只需将差异部分存储在数据库中,如此设计可降低存储的数据量。计算每个分组的安全策略的时候,由上一级的父分组的安全策略叠加上本级的变化策略而成。
这样的策略结构设计也就意味一旦有新的分组生成或是分组移动那么服务器需要感知这一变化,既而计算得到新增或变化的分组的安全策略缓存在内存中,以便该分组下的终端及时地获取新的安全策略。同样如果某个终端如果发生了移动的行为,由于每个分组的安全策略可能存在差异,那么就需要对于移动的终端重新推送一遍安全策略。
在本申请实施例中,服务器可以基于Redis实现策略变更通知的下发,也即上述第一存储系统为Redis存储系统。Redis提供了发布订阅功能,可以用于消息的传输,如图11所示,Redis的发布订阅机制包括三个部分,发布者(publisher)、订阅者(subscriber)和频道(channel)。发布者和订阅者都是Redis客户端,频道则为Redis服务器端,发布者将消息发送到某个频道,订阅了这个频道的订阅者就能接收到这条消息。Redis的这种发布订阅机制与基于主题的发布订阅类似,频道相当于主题。结合本申请实施例,发布者对应于服务器,订阅者对应于终端,频道对应于该Redis存储系统。服务器将策略变更通知发送给Redis存储系统,终端从Redis存储系统中获取策略变更通知,根据获取到的策略变更通知对安全策略进行更新。
可选地,基于Redis的发布订阅机制传输的策略变更通知的消息格式包括如下内容:消息类型(MsgID)、分组ID(GroupID)、终端的设备标识(Mid)、变更内容(TblName)。
MsgID指定消息类型,如1表示当前的消息是数据表变更通知,2表示发生了分组变化或是终端移动。
GroupID表示当前是哪个分组的安全策略发生了变更,那么通知终端安全策略发生变更的时候仅通知对应的组,降低了策略下发的广度。
Mid仅在GroupID为0的时候有效,表示当前是单点策略发生变化,或是终端产生了移动,策略下发也仅针对这些发生变更的终端进行下发。
TblName指定了当前哪些数据表发生了变化,因此策略查询服务就不要将所有策略相关数据表都轮询一遍,只需要去查询数据发生变更的表即可,降低数据库的读写压力。
在本申请实施例中,针对分组变化、终端移动对于终端策略产生的影响,提供了一种基于Redis的发布订阅机制的解决方案,使得终端可以及时获取最新的安全策略。
在上文实施例中,主要对服务器确定终端所属的分组的具体流程进行了介绍说明。服务器提供的分组管理功能,还可以包括添加分组、修改分组、移动分组、删除分组、调整终端所属分组等功能。管理终端通过向服务器发起分组管理请求,能够请求服务器执行不同的分组管理流程,以对终端树中的终端进行不同的分组管理操作。
请参考图12,其示出了本申请另一个实施例提供的终端分组管理方法的流程图。该方法可应用于图1所示的实施环境中。该方法可以包括以下几个步骤(1201~1205):
步骤1201,管理终端显示终端分组管理页面。
终端分组管理页面是提供给管理员的用于对终端进行分组管理的人机交互界面。当管理终端通过web前端打开终端分组管理页面时,该终端分组管理页面为网页页面。当管理终端通过应用程序客户端打开终端分组管理页面时,该终端分组管理页面可以是网页页面,也可以是非网页页面,如应用程序提供的非网页形式的用户界面。
终端分组管理页面中包括终端树,该终端树包括呈树形结构的至少一个终端分组。每个终端分组中可用于添加至少一个终端。有关终端树的介绍说明可参见上文实施例,此处不再赘述。
结合参考图13,在终端分组管理页面130中,终端树可以目录树131的形式进行显示,以方便管理员对于不同的终端分组进行管理。例如,管理员可以在终端树中添加分组,修改、移动或锁定终端树中的分组,删除终端树中的分组,移动或锁定终端树中的终端,等等。
步骤1202,管理终端获取在终端分组管理页面中输入的分组管理指令。
终端分组管理页面中提供有用于对终端进行分组管理的操作控件,管理员可以通过该操作控件,触发生成分组管理指令。分组管理指令是指用于对终端进行分组管理的指令,如添加分组、修改、移动或锁定分组、删除分组、移动或锁定终端等指令。
步骤1203,管理终端根据分组管理指令,向服务器发送接口调用请求。
管理终端根据分组管理指令,生成接口调用请求,然后向服务器发送接口调用请求。相应地,服务器接收管理终端发送的接口调用请求。接口调用请求用于请求调用终端分组管理接口对终端树进行分组管理。例如,接口调用请求用于请求调用终端分组管理接口对目标终端进行分组。
在本申请实施例中,为了尽可能减少管理终端侧的业务逻辑,使得管理终端更专注于数据的展示与渲染,将尽可能降低管理终端对于数据库的直接的读写操作,将数据库的写操作通过HTTP提供的API接口调用的方式交给后台服务器(也即本实施例中的“服务器”)来完成。也即,在本申请实施例中,服务器提供有终端分组管理接口以供管理终端调用,通过调用服务器提供的终端分组管理接口,由服务器执行对终端进行分组管理的业务逻辑,从而减轻管理终端(也即前端)的处理负担。
在示例性实施例中,服务器提供有多种不同的终端分组管理接口,以实现不同的分组管理功能。可选地,终端分组管理接口包括以下至少一种:分组添加接口、分组调整接口、分组删除接口、终端调整接口、IP分组启动接口、LDAP分组启动接口。其中,分组添加接口用于在终端树中添加分组,分组调整接口用于修改、移动或锁定终端树中的分组,分组删除接口用于删除终端树中的分组,终端调整接口用于移动或锁定终端树中的终端,IP分组启动接口用于启动基于IP规则的自动分组功能,LDAP分组启动接口用于启动基于LDAP规则的自动分组功能。当然,上文提供的几种不同的终端分组管理接口仅是示例性和解释性的,在实际应用中,还可以根据实际需求,设定不同的终端分组管理接口,如将分组调整接口拆分为分组修改接口、分组移动接口和分组锁定接口,本申请实施例对此不作限定。
可选地,接口调用请求包括:接口指示信息和业务指示信息。其中,接口指示信息用于指示请求调用的接口,业务指示信息用于指示请求执行的业务。例如,接口指示信息可以包括请求调用的接口的名称或其它标识符。业务指示信息可以包括若干字段,以实现对请求执行的业务进行描述。可选地,管理终端基于HTTP协议向服务器发送接口调用请求。另外,针对不同的终端分组管理接口,接口调用请求的内容也会有所不同,具体可参见下文实施例中的介绍说明。
步骤1204,服务器根据接口调用请求,调用终端分组管理接口对终端树进行分组管理。
服务器在接收到接口调用请求之后,确定请求调用的接口,然后调用该接口对终端树进行分组管理。例如,当接口调用请求所请求调用的接口为分组添加接口时,服务器调用该分组添加接口在终端树中添加分组。再例如,当接口调用请求所请求调用的接口为终端调整接口时,服务器调用该终端调整接口来移动或锁定终端树中的终端,例如,终端调整接口用于从终端树中查找与目标终端的分组方式相对应的候选分组,并从候选分组中选取目标终端所属的目标分组。
在服务器中,终端树可以按照层次来存储,每个节点对应的终端分组都具有自己的属性信息,终端分组中的终端也具有自己的属性信息。终端分组的属性信息用于指示该终端分组的属性特征,终端的属性信息用于指示该终端的属性特征。
示例性地,结合参考图14,终端分组的属性信息包括普通分组、IP段分组、LDAP导入的分组、锁定组等不同属性。其中,普通分组是指由管理员手动进行分组的终端分组,IP段分组是指基于IP分组方式进行自动分组的终端分组,LDAP导入的分组是指基于LDAP分组方式进行自动分组的终端分组,锁定组是指处于锁定状态的终端分组,某一终端分组在处于锁定状态下,服务器不会响应针对该终端分组的新的分组管理请求。终端的属性信息包括普通终端、锁定终端、是否属于锁定组等不同属性。其中,普通终端是指未处于锁定状态的终端,锁定终端是指处于锁定状态的终端。某一终端在处于锁定状态的情况下,不受任何分组策略的影响,维持在原分组保持不动;某一终端在未处于锁定状态的情况下,受分组策略的影响,能够调整该终端所属的分组。
另外,在终端树中,分组ID的值是唯一的,因此可以将该分组ID作为节点的键值。考虑到节点的子节点数量的不确定性,因而节点的子节点的指针可以是一个指针数组,所以可以通过分组ID来表示终端树中的节点,通过指针数组来表示该节点的子节点。
步骤1205,服务器向管理终端发送接口调用响应。
服务器在执行完成接口调用请求之后,向管理终端发送接口调用响应,该接口调用响应用于指示接口调用请求的执行结果。例如,指示接口调用请求执行成功或者失败。
可选地,接口调用响应包括执行结果指示信息,该执行结果指示信息用于指示接口调用请求的执行结果。例如,当接口调用请求用于请求对目标终端进行分组时,接口调用响应中可以包括目标终端的分组结果,该分组结果用于指示目标终端所属的目标分组。可选地,当执行结果为执行失败时,接口调用响应中还可以包括异常原因指示信息,用于指示执行失败的原因。可选地,接口调用响应中还可以包括附加信息,该附加信息可以针对不同的接口调用请求也相应有所不同。例如,当接口调用请求用于请求调用分组添加接口在终端树中添加分组时,该附加信息可以包括新增分组的属性信息。
步骤1206,管理终端根据接口调用响应,对终端树进行更新。
管理终端在接收到接口调用响应之后,可以根据该接口调用响应对终端分组管理页面中包含的终端树进行相应的更新调整,以同步给管理员。
综上所述,本申请实施例提供的技术方案中,通过在服务器上设置终端分组管理接口,前端通过调用该终端分组管理接口,触发服务器执行终端分组管理的业务逻辑,从而减轻了前端的处理压力,且由于服务器的处理能力比前端更强,因此可以对终端的分组管理需求进行快速响应。
在示例性实施例中,接口调用请求可以是HTTP请求,接口调用请求的URL(UniformResource Locator,统一资源定位符)格式设计可以如下:
http://server.com/api/v1/{domain};
其中,server.com表示服务器的地址,api表示请求调用的终端分组管理接口,v1表示请求调用的终端分组管理接口的版本信息,{domain}是一个可以用来定义任何业务的区域,如可用于添加上文介绍的业务指示信息。
另外,HTTP请求的请求方式包括GET方式、POST方式、PUT方式、DELETE方式等。其中,采用GET方式从服务器取出资源,采用POST方式在服务器新建一个资源,采用PUT方式在服务器更新资源,采用DELETE方式从服务器删除资源。
可选地,接口调用请求的数据包采用JSON(JavaScript Object Notation,JS对象简谱)的编码格式,附带上一些额外的信息。
下面,对各种不同的终端分组管理接口所对应的接口调用请求的内容进行介绍说明。
1、分组添加接口
当请求调用的接口为分组添加接口时,接口调用请求的URL示例性如下:http://server.com/api/v1/group。请求方式可以采用POST方式。分组添加接口用于在终端树中添加分组,该分组添加接口的接口调用请求的业务指示信息可以包括新增分组的名称和新增分组的父分组ID,可选地还包括以下至少一项:新增分组的IP段属性、新增分组是否锁定。
在一个示例中,请求包的数据的格式定义如下表-1所示:
表-1
2、分组调整接口
当请求调用的接口为分组调整接口时,接口调用请求的URL示例性如下:http://server.com/api/v1/group/{group_id}。请求方式可以采用PUT方式。{group_id}表示当前操作的分组的ID值。分组调整接口用于修改、移动或锁定终端树中的分组,如修改分组的属性值,如组名称、父分组、IP段、锁定状态等。该分组调整接口的接口调用请求的业务指示信息可以包括以下至少一项:修改后的组名称、修改后的父分组ID、修改后的IP段、修改后的锁定状态。
在一个示例中,请求包的数据的格式定义如下表-2所示:
表-2
3、分组删除接口
当请求调用的接口为分组删除接口时,接口调用请求的URL示例性如下:http://server.com/api/v1/group/{group_id}。请求方式可以采用DELETE方式。{group_id}表示当前删除的分组的ID值。分组删除接口用于删除终端树中的分组。该分组删除接口的接口调用请求的业务指示信息可以包括组属终端的去向,可选地还包括以下至少一项:需要删除哪些组、删除的ldap_id、是否删除所有子组、LDAP导入的时候使用强制删除。
在一个示例中,请求包的数据的格式定义如下表-3所示:
表-3
4、终端调整接口
当请求调用的接口为终端调整接口时,接口调用请求的URL示例性如下:http://server.com/api/v1/device。请求方式可以采用PUT方式。终端调整接口用于移动或锁定终端树中的终端,如修改终端所在的分组、修改终端的锁定状态等。该终端调整接口的接口调用请求的业务指示信息可以包括当前操作的终端的设备标识,可选地还包括以下至少一项:移动至的目标组ID、修改后的锁定状态。
在一个示例中,请求包的数据的格式定义如下表-4所示:
表-4
5、IP分组启动接口
当请求调用的接口为IP分组启动接口时,接口调用请求的URL示例性如下:http://server.com/api/v1/set/ipauto。请求方式可以采用PUT方式。IP分组启动接口用于启动基于IP规则的自动分组功能。该IP分组启动接口的接口调用请求的业务指示信息可以包括:用于指示启动或取消基于IP规则的自动分组功能的指示信息。
在一个示例中,请求包的数据的格式定义如下表-5所示:
表-5
6、LDAP分组启动接口
当请求调用的接口为LDAP分组启动接口时,接口调用请求的URL示例性如下:http://server.com/api/v1/set/ldapauto。请求方式可以采用PUT方式。LDAP分组启动接口用于启动基于LDAP规则的自动分组功能。该LDAP分组启动接口的接口调用请求的业务指示信息可以包括:用于指示启动或取消基于LDAP规则的自动分组功能的指示信息。
在一个示例中,请求包的数据的格式定义如下表-6所示:
表-6
另外,接口调用响应的数据包也可以采用JSON的编码格式。示例性地,接口调用响应的数据格式定义如下表-7所示:
表-7
在本申请实施例中,基于前端轻逻辑重数据渲染的原则,设计了一套符合RESTful规范的API接口,前端对于数据库的增删改查操作可以交由服务器来实现,从而提升了性能,方便了管理员对于终端树的管理操作。
在上文实施例中已经介绍了前端调用后台服务器的接口设计,前端只负责读取数据库的数据,然后完成数据的渲染显示。而对于数据的更新插入操作皆有后台服务器提供的接口实现。那么,前端调用服务器的接口就会产生竞争和超时问题。
所谓竞争问题是指当多个管理员登录到服务器的控制中心,也即当多个管理终端同时请求调用服务器的终端分组管理接口时,有可能几乎同一时刻对于同一终端分组发出互斥的两种操作请求,那么就会产生竞争问题。
在本申请实施例中,服务器在接收到接口调用请求之后,检测该接口调用请求对应的终端分组是否处于解锁状态;若该接口调用请求对应的终端分组处于解锁状态,则根据该接口调用请求,调用终端分组管理接口对终端树进行分组管理;若该接口调用请求对应的终端分组处于锁定状态,则拒绝处理或者延迟处理该接口调用请求。例如,该接口调用请求对应的终端分组处于锁定状态,则服务器直接向管理终端发送用于指示该接口调用请求执行失败的接口调用响应。管理终端在接收到该指示执行失败的响应之后,可以在一定时间之后重新发起该接口调用请求。
另外,服务器在启动执行针对某一终端分组的业务逻辑之前,先将该终端分组由解锁状态切换至锁定状态,在执行完成之后,将该终端分组由锁定状态切换至解锁状态。
所谓超时问题是指当前端向服务器发送接口调用请求,请求调用服务器提供的终端分组管理接口时,前端可以设置第一超时时间,如果在该第一超时时间到达时,前端还没接收到服务器反馈的接口调用响应,则前端可以断开与服务器的HTTP连接,提示管理员调用超时。前端发起的接口调用请求绝大部分都可以在很短时间内执行完成,但是当请求触发了大规模的数据计算的时候就可能会导致超时。例如,在十万量级的终端的规模下,管理员通过前端向服务器发起了接口调用请求,该请求触发了对十万量级的终端进行分组管理,如请求移动终端所属的分组,那么经过测算大概是需要1分钟左右的等待时间。
在本申请实施例中,服务器在接收到接口调用请求之后,若在预设超时时间内未执行完成该接口调用请求,则向管理终端发送等待提示信息,该等待提示信息用于指示接口调用请求暂未执行完成。例如,等待提示信息为“本次操作比较耗时,请等待”。其中,服务器中设置的该预设超时时间假设记为第二超时时间,该第二超时时间的时长小于管理终端设置的第一超时时间的时长。这样,可以避免前端在其设置的第一超时时间到达时,断开与服务器之间的连接,导致服务器处理完成之后无法成功向前端反馈接口调用响应,且有助于提升人机交互界面的友好性。另外,如果在预设超时时间内执行完成该接口调用请求,则服务器可直接向管理终端反馈接口调用响应。
可选地,服务器在接收到接口调用请求之后,可以判断该接口调用请求是否属于耗时请求,如果该接口调用请求属于耗时请求,则另起一个协助进程来异步处理该接口调用请求,并在预设超时时间内未执行完成该接口调用请求的情况下,向管理终端发送等待提示信息。其中,耗时请求是指预计处理时长大于预设门限值的请求,服务器可以根据该接口调用请求的内容计算预计处理时长,并确定该接口调用请求是否属于耗时请求。另外,如果该接口调用请求不属于耗时请求,则服务器直接使用当前进程处理该接口调用请求。
另外,服务器在向管理终端发送等待提示信息之后,继续处理接口调用请求,此时如果再接收到新的接口调用请求,则服务器可以直接拒绝该新的接口调用请求,直到上述正在处理的接口调用请求处理完成之后,再接收并处理新的接口调用请求,从而避免潜在的竞争问题。
在本申请实施例中,鉴于不同的企业有着不同的组织架构访问协议,考虑到灵活性,LDAP导入的功能由前端的脚本来实现,从而实现在不编译源代码的情况下,满足不同企业的定制化需求。
可选地,管理终端通过脚本基于组织架构访问协议,导入目标集体的组织架构;获取本次导入的组织架构与历史导入的组织架构之间的差异化数据;将该差异化数据存储至第二存储系统中,利用第二存储系统的发布通道通知服务器加载该差异化数据,以实现对目标集体的组织架构进行更新。可选地,第二存储系统为Redis存储系统。
其中,目标集体是指非个人的组织形式团体,目标集体是包含至少两个用户的群体,可以是企业、商家、家庭、学校、班级等等。目标集体中可以包括多个终端,该多个终端可以构建形成终端树。
示例性地,管理终端在导入目标集体的组织架构之后,可以将导入的数据写入到第一数据表和第二数据表中,其中,第一数据表用于存储各个分组的相关信息,如分组ID、组名称、父分组的ID、LDAP的ID值等信息,第二数据表用于存储各个终端的相关信息,如终端的用户标识、LDAP的ID值等信息。之后,管理终端便可获取本次导入的组织架构与历史导入的组织架构之间的差异化数据,考虑到完整的组织架构的数据量可能会很大,因此通过获取差异化数据,将差异化数据提供给服务器,可以减少数据同步所需的网络资源开销,且有助于提升数据同步效率。
在上述方法实施例中,主要从管理终端和服务器的角度,对本申请技术方案进行了介绍说明,上述有关管理终端执行的步骤,可以单独实现成为管理终端一侧的终端管理方法,上述有关服务器执行的步骤,可以单独实现成为服务器一侧的终端管理方法。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图15,其示出了本申请一个实施例提供的终端分组管理装置的框图。该装置具有实现上述服务器侧的终端分组管理方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是服务器,也可以设置在服务器上。该装置1500可以包括:分组方式确定模块1501、候选分组查找模块1502、目标分组选取模块1503和终端添加模块1504。
分组方式确定模块1501,用于在检测到满足对目标终端进行分组的条件时,确定所述目标终端的分组方式。
候选分组查找模块1502,用于根据所述分组方式,从终端树中查找与所述分组方式相对应的候选分组;其中,所述终端树包括呈树形结构的至少一个终端分组。
目标分组选取模块1503,用于从所述候选分组中,选取所述目标终端所属的目标分组。
终端添加模块1504,用于将所述目标终端添加至所述目标分组中。
在示例性实施例中,所述目标终端的分组方式为互联网协议IP分组方式;所述候选分组查找模块1502,用于:
获取所述终端树中的各个IP分组对应的IP地址段;
获取IP地址段包含所述目标终端的IP地址的候选IP分组,所述目标分组从所述候选IP分组中选取。
在示例性实施例中,所述候选分组查找模块1502,用于:
获取所述候选IP分组的数量;
若所述候选IP分组的数量为1,则将所述候选IP分组确定为所述目标终端所属的IP分组;
若所述候选IP分组的数量为2,则从2个所述候选IP分组中选择一个作为所述目标终端所属的IP分组;
若所述候选IP分组的数量大于2,则分层遍历所述终端树中的各个IP分组,查找所述目标终端所属的IP分组。
在示例性实施例中,所述目标终端的分组方式为轻量目录访问协议LDAP分组方式;所述候选分组查找模块1502,用于:
获取所述终端树中的各个LDAP分组对应的组织架构;
获取组织架构包含所述目标终端的用户标识的候选LDAP分组,所述目标分组从所述候选LDAP分组中选取。
在示例性实施例中,所述候选分组查找模块1502,用于:
获取所述候选LDAP分组的数量;
若所述候选LDAP分组的数量为1,则将所述候选LDAP分组确定为所述目标终端所属的LDAP分组;
若所述候选LDAP分组的数量大于等于2,则从2个所述候选LDAP分组中选择一个作为所述目标终端所属的LDAP分组。
在示例性实施例中,如图16所示,所述装置1500还包括:任务添加模块1505和任务执行模块1506。
任务添加模块1505,用于在检测到所述目标终端的标识信息发生变化时,将所述目标终端对应的分组迁移任务添加至任务队列中。
任务执行模块1506,用于从所述任务队列中按序获取待执行的分组迁移任务进行执行。
在示例性实施例中,如图16所示,所述装置1500还包括:通知生成模块1507和通知发布模块1508。
通知生成模块1507,用于当检测到所述终端树中存在分组变化或终端移动时,生成策略变更通知,所述策略变更通知用于向所述终端树中的受影响终端提供更新后的安全策略。
通知发布模块1508,用于将所述策略变更通知发布至第一存储系统,所述第一存储系统用于将所述策略变更通知发送给所述受影响终端。
在示例性实施例中,如图16所示,所述装置1500还包括:请求接收模块1509、分组管理模块1510和响应发送模块1511。
请求接收模块1509,用于接收接口调用请求。
分组管理模块1510,用于根据所述接口调用请求,调用终端分组管理接口对所述终端树进行分组管理。
响应发送模块1511,用于发送接口调用响应,所述接口调用响应用于指示所述接口调用请求的执行结果。
在示例性实施例中,如图16所示,所述装置1500还包括:锁定检测模块1512。
锁定检测模块1512,用于检测所述接口调用请求对应的终端分组是否处于解锁状态。
所述分组管理模块1510,还用于若所述接口调用请求对应的终端分组处于所述解锁状态,则根据所述接口调用请求,调用终端分组管理接口对所述终端树进行分组管理。
综上所述,本申请实施例提供的技术方案中,在确定某一终端所属的分组时,首先筛选出与该终端的分组方式相对应的候选分组,然后再从候选分组中选取该终端所属的分组;相较于相关技术中遍历各个分组,然后分别检测该终端的相关信息是否符合进入每个分组的条件;本申请实施例提供的技术方案,不需要遍历终端树中的各个分组,通过从候选分组中确定终端所属的分组,能够减少计算量,从而缩短了确定终端所属的分组所需的耗时,提升了效率。
请参考图17,其示出了本申请另一个实施例提供的终端分组管理装置的框图。该装置具有实现上述管理终端侧的终端分组管理方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是管理终端,也可以设置在管理终端上。该装置1700可以包括:页面显示模块1701、指令获取模块1702、请求发送模块1703和结果接收模块1704。
页面显示模块1701,用于显示终端分组管理页面,所述终端分组管理页面中包括终端树,所述终端树包括呈树形结构的至少一个终端分组。
指令获取模块1702,用于获取在所述终端分组管理页面中输入的对应于目标终端的分组管理指令。
请求发送模块1703,用于根据所述分组管理指令,向服务器发送接口调用请求,所述接口调用请求用于请求调用终端分组管理接口对所述目标终端进行分组;其中,所述终端分组管理接口用于从所述终端树中查找与所述目标终端的分组方式相对应的候选分组,并从所述候选分组中选取所述目标终端所属的目标分组。
结果接收模块1704,用于接收所述目标终端的分组结果,所述分组结果用于指示所述目标终端所属的目标分组。
在示例性实施例中,如图18所示,所述装置1700还包括:架构导入模块1705、数据获取模块1706和数据存储模块1707。
架构导入模块1705,用于通过脚本基于组织架构访问协议,导入目标集体的组织架构。
数据获取模块1706,用于获取本次导入的组织架构与历史导入的组织架构之间的差异化数据。
数据存储模块1707,用于将所述差异化数据存储至第二存储系统中,所述第二存储系统用于通知所述服务器加载所述差异化数据以对所述目标集体的组织架构进行更新。
综上所述,本申请实施例提供的技术方案中,在确定某一终端所属的分组时,首先筛选出与该终端的分组方式相对应的候选分组,然后再从候选分组中选取该终端所属的分组;相较于相关技术中遍历各个分组,然后分别检测该终端的相关信息是否符合进入每个分组的条件;本申请实施例提供的技术方案,不需要遍历终端树中的各个分组,通过从候选分组中确定终端所属的分组,能够减少计算量,从而缩短了确定终端所属的分组所需的耗时,提升了效率。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图19,其示出了本申请一个实施例提供的计算机设备的结构框图。该计算机设备用于实施上述实施例中提供的终端管理方法。例如,该计算机设备可以是图1所示实施环境中的计算机设备20或管理终端10。具体来讲:
所述计算机设备1900包括中央处理单元(CPU)1901、包括随机存取存储器(RAM)1902和只读存储器(ROM)1903的系统存储器1904,以及连接系统存储器1904和中央处理单元1901的系统总线1905。所述计算机设备1900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1906,和用于存储操作系统1913、应用程序1914和其他程序模块1912的大容量存储设备1907。
所述基本输入/输出系统1906包括有用于显示信息的显示器1908和用于用户输入信息的诸如鼠标、键盘之类的输入设备1909。其中所述显示器1908和输入设备1909都通过连接到系统总线1905的输入输出控制器1910连接到中央处理单元1901。所述基本输入/输出系统1906还可以包括输入输出控制器1910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1907通过连接到系统总线1905的大容量存储控制器(未示出)连接到中央处理单元1901。所述大容量存储设备1907及其相关联的计算机可读介质为计算机设备1900提供非易失性存储。也就是说,所述大容量存储设备1907可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1904和大容量存储设备1907可以统称为存储器。
根据本申请的各种实施例,所述计算机设备1900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1900可以通过连接在所述系统总线1905上的网络接口单元1911连接到网络1912,或者说,也可以使用网络接口单元1911来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集存储于存储器中,且经配置以由一个或者一个以上处理器执行,以实现上述服务器侧的终端分组管理方法,或者实现上述管理终端侧的终端分组管理方法。
在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被处理器执行时以实现上述服务器侧的终端分组管理方法,或者实现上述管理终端侧的终端分组管理方法。
在示例性实施例中,还提供了一种计算机程序产品,当该计算机程序产品被处理器执行时,其用于实现上述服务器侧的终端分组管理方法,或者实现上述管理终端侧的终端分组管理方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种终端分组管理方法,其特征在于,所述方法包括:
客户端显示终端分组管理页面,所述终端分组管理页面中包括终端树,所述终端树包括呈树形结构的至少一个终端分组,所述终端树包括至少一个互联网协议IP分组和至少一个轻量目录访问协议LDAP分组,所述IP分组是指采用所述IP分组方式确定的终端分组,所述LDAP分组是指采用所述LDAP分组方式确定的终端分组;
所述客户端获取在所述终端分组管理页面中输入的对应于目标终端的分组管理指令;
所述客户端根据所述分组管理指令,向服务器发送接口调用请求,所述接口调用请求用于请求调用终端分组管理接口对所述目标终端进行分组;
所述服务器在检测到满足对所述目标终端进行分组的条件时,确定所述目标终端的分组方式;
若所述目标终端的分组方式为IP分组方式,则所述服务器获取所述终端树中的各个IP分组对应的IP地址段,获取IP地址段包含所述目标终端的IP地址的候选IP分组;
若所述目标终端的分组方式为LDAP分组方式,则所述服务器获取所述终端树中的各个LDAP分组对应的组织架构,获取组织架构包含所述目标终端的用户标识的候选LDAP分组;
所述服务器从所述候选IP分组或所述候选LDAP分组中,选取所述目标终端所属的目标分组;
所述服务器将所述目标终端添加至所述目标分组中;
所述服务器向所述客户端发送所述目标终端的分组结果,所述分组结果用于指示所述目标终端所属的目标分组。
2.根据权利要求1所述的方法,其特征在于,所述服务器从所述候选IP分组中,选取所述目标终端所属的目标分组,包括:
所述服务器获取所述候选IP分组的数量;
若所述候选IP分组的数量为1,则所述服务器将所述候选IP分组确定为所述目标终端所属的IP分组;
若所述候选IP分组的数量为2,则所述服务器从2个所述候选IP分组中选择一个作为所述目标终端所属的IP分组;
若所述候选IP分组的数量大于2,则所述服务器分层遍历所述终端树中的各个IP分组,查找所述目标终端所属的IP分组。
3.根据权利要求1所述的方法,其特征在于,所述服务器从所述候选LDAP分组中,选取所述目标终端所属的目标分组,包括:
所述服务器获取所述候选LDAP分组的数量;
若所述候选LDAP分组的数量为1,则所述服务器将所述候选LDAP分组确定为所述目标终端所属的LDAP分组;
若所述候选LDAP分组的数量大于等于2,则所述服务器从2个所述候选LDAP分组中选择一个作为所述目标终端所属的LDAP分组。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
所述服务器在检测到所述目标终端的标识信息发生变化时,将所述目标终端对应的分组迁移任务添加至任务队列中;
所述服务器从所述任务队列中按序获取待执行的分组迁移任务进行执行。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
当检测到所述终端树中存在分组变化或终端移动时,所述服务器生成策略变更通知,所述策略变更通知用于向所述终端树中的受影响终端提供更新后的安全策略;
所述服务器将所述策略变更通知发布至第一存储系统,所述第一存储系统用于将所述策略变更通知发送给所述受影响终端。
6.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
所述服务器根据所述接口调用请求,调用所述终端分组管理接口对所述终端树进行分组管理;
所述服务器发送接口调用响应,所述接口调用响应用于指示所述接口调用请求的执行结果。
7.根据权利要求6所述的方法,其特征在于,所述服务器接收所述接口调用请求之后,还包括:
所述服务器检测所述接口调用请求对应的终端分组是否处于解锁状态;
若所述接口调用请求对应的终端分组处于所述解锁状态,则所述服务器从所述根据所述接口调用请求,调用所述终端分组管理接口对所述终端树进行分组管理的步骤开始执行。
8.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
所述客户端通过脚本基于组织架构访问协议,导入目标集体的组织架构;
所述客户端获取本次导入的组织架构与历史导入的组织架构之间的差异化数据;
所述客户端将所述差异化数据存储至第二存储系统中,所述第二存储系统用于通知所述服务器加载所述差异化数据以对所述目标集体的组织架构进行更新。
9.一种终端分组管理装置,其特征在于,所述装置包括:
请求接收模块,用于接收客户端发送的接口调用请求;
分组方式确定模块,用于在检测到满足对目标终端进行分组的条件时,确定所述目标终端的分组方式;
候选分组查找模块,用于若所述目标终端的分组方式为互联网协议IP分组方式,则获取终端树中的各个IP分组对应的IP地址段,获取IP地址段包含所述目标终端的IP地址的候选IP分组;其中,所述终端树包括呈树形结构的至少一个终端分组,所述终端树包括至少一个IP分组和至少一个轻量目录访问协议LDAP分组,所述IP分组是指采用所述IP分组方式确定的终端分组,所述LDAP分组是指采用所述LDAP分组方式确定的终端分组;
所述候选分组查找模块,还用于若所述目标终端的分组方式为LDAP分组方式,则获取所述终端树中的各个LDAP分组对应的组织架构,获取组织架构包含所述目标终端的用户标识的候选LDAP分组;
目标分组选取模块,用于从所述候选IP分组或所述候选LDAP分组中,选取所述目标终端所属的目标分组;
终端添加模块,用于将所述目标终端添加至所述目标分组中。
10.一种终端分组管理装置,其特征在于,所述装置包括:
页面显示模块,用于显示终端分组管理页面,所述终端分组管理页面中包括终端树,所述终端树包括呈树形结构的至少一个终端分组,所述终端树包括至少一个互联网协议IP分组和至少一个轻量目录访问协议LDAP分组,所述IP分组是指采用所述IP分组方式确定的终端分组,所述LDAP分组是指采用所述LDAP分组方式确定的终端分组;
指令获取模块,用于获取在所述终端分组管理页面中输入的对应于目标终端的分组管理指令;
请求发送模块,用于根据所述分组管理指令,向服务器发送接口调用请求,所述接口调用请求用于请求调用终端分组管理接口对所述目标终端进行分组;其中,所述终端分组管理接口用于:若所述目标终端的分组方式为IP分组方式,则获取终端树中的各个IP分组对应的IP地址段,获取IP地址段包含所述目标终端的IP地址的候选IP分组;若所述目标终端的分组方式为LDAP分组方式,则获取所述终端树中的各个LDAP分组对应的组织架构,获取组织架构包含所述目标终端的用户标识的候选LDAP分组;从所述候选IP分组或所述候选LDAP分组中选取所述目标终端所属的目标分组;
结果接收模块,用于接收所述目标终端的分组结果,所述分组结果用于指示所述目标终端所属的目标分组。
11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现如权利要求1至8任一项所述的终端分组管理方法中所述客户端或所述服务器执行的步骤。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一段程序,所述至少一段程序由处理器加载并执行以实现如权利要求1至8任一项所述的终端分组管理方法中所述客户端或所述服务器执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910603500.7A CN112187501B (zh) | 2019-07-05 | 2019-07-05 | 终端分组管理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910603500.7A CN112187501B (zh) | 2019-07-05 | 2019-07-05 | 终端分组管理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112187501A CN112187501A (zh) | 2021-01-05 |
CN112187501B true CN112187501B (zh) | 2022-08-09 |
Family
ID=73915728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910603500.7A Active CN112187501B (zh) | 2019-07-05 | 2019-07-05 | 终端分组管理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112187501B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113630390B (zh) * | 2021-07-23 | 2023-09-01 | 国网湖北省电力有限公司荆州供电公司 | 基于大数据的终端设备的网络安全通信方法及装置 |
CN117201604A (zh) * | 2022-05-30 | 2023-12-08 | 华为技术有限公司 | 发布信息的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905512A (zh) * | 2012-12-28 | 2014-07-02 | 中国移动通信集团公司 | 一种数据处理方法和设备 |
CN106130765A (zh) * | 2016-06-23 | 2016-11-16 | 杭州华三通信技术有限公司 | 虚拟桌面分配方法及装置 |
US9667704B1 (en) * | 2014-04-26 | 2017-05-30 | Google Inc. | System and method for classifying API requests in API processing systems using a tree configuration |
CN107547469A (zh) * | 2016-06-24 | 2018-01-05 | 中兴通讯股份有限公司 | 一种信息处理方法和终端 |
-
2019
- 2019-07-05 CN CN201910603500.7A patent/CN112187501B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905512A (zh) * | 2012-12-28 | 2014-07-02 | 中国移动通信集团公司 | 一种数据处理方法和设备 |
US9667704B1 (en) * | 2014-04-26 | 2017-05-30 | Google Inc. | System and method for classifying API requests in API processing systems using a tree configuration |
CN106130765A (zh) * | 2016-06-23 | 2016-11-16 | 杭州华三通信技术有限公司 | 虚拟桌面分配方法及装置 |
CN107547469A (zh) * | 2016-06-24 | 2018-01-05 | 中兴通讯股份有限公司 | 一种信息处理方法和终端 |
Also Published As
Publication number | Publication date |
---|---|
CN112187501A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10693708B2 (en) | Defining configurable characteristics of a product and associating configuration with enterprise resources | |
US10044522B1 (en) | Tree-oriented configuration management service | |
US10621204B2 (en) | Business application publication | |
US10656935B2 (en) | Maintaining and updating software versions via hierarchy | |
JP4406609B2 (ja) | 単一のインターフェイスからのデータの多重階層を管理するための手法 | |
US7873965B2 (en) | Methods and apparatus for communicating changes between a user-interface and an executing application, using property paths | |
US9628493B2 (en) | Computer implemented methods and apparatus for managing permission sets and validating user assignments | |
US7739367B2 (en) | Managing network-enabled devices | |
US20200334374A1 (en) | Application specific schema extensions for a hierarchical data structure | |
RU2357283C2 (ru) | Схема обновления соединений с сетевым печатающим устройством для клиентов печатающего устройства | |
US9015651B2 (en) | Gateway data distribution engine | |
US8131706B2 (en) | Dynamic binding of portlets | |
WO2018204530A1 (en) | Data delivery architecture for transforming client response data | |
US20080005186A1 (en) | Methods and apparatus for composite configuration item management in configuration management database | |
WO2007035733A2 (en) | Interfaces for a productivity suite application and a hosted user interface | |
US11068127B2 (en) | Springboard interface for quick task transitions | |
MX2007011027A (es) | Sistema y metodo para producir y comunicar datos solicitados entre programas de aplicacion en red. | |
CN112187501B (zh) | 终端分组管理方法、装置、设备及存储介质 | |
CN113536177B (zh) | 一种页面跳转方法、装置、服务器和存储介质 | |
US7039649B2 (en) | Method and apparatus for maintaining data integrity | |
US20190213018A1 (en) | User interface configuration using activator fields | |
US11657064B2 (en) | Componentized dashboards | |
US20220317984A1 (en) | Distributed extensible dynamic graph | |
US20220236968A1 (en) | Optimized data resolution for web components | |
US7209248B1 (en) | Managing the lifetime of distributed resource data using temporal scopes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40038173 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |