CN118055157A - 服务调用方法、装置、设备和存储介质 - Google Patents
服务调用方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN118055157A CN118055157A CN202211436181.3A CN202211436181A CN118055157A CN 118055157 A CN118055157 A CN 118055157A CN 202211436181 A CN202211436181 A CN 202211436181A CN 118055157 A CN118055157 A CN 118055157A
- Authority
- CN
- China
- Prior art keywords
- service
- terminal
- target
- calling
- verification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 183
- 238000003860 storage Methods 0.000 title claims abstract description 32
- 238000012795 verification Methods 0.000 claims abstract description 284
- 238000001514 detection method Methods 0.000 claims abstract description 94
- 230000000977 initiatory effect Effects 0.000 claims abstract description 32
- 230000003068 static effect Effects 0.000 claims abstract description 30
- 230000008569 process Effects 0.000 claims description 101
- 238000012545 processing Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 101
- 230000002829 reductive effect Effects 0.000 description 10
- 230000000903 blocking effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000000670 limiting effect Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 6
- 239000003795 chemical substances by application Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 230000036541 health Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 241000700605 Viruses Species 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 239000003999 initiator Substances 0.000 description 3
- 230000002147 killing effect Effects 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003862 health status Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000011897 real-time detection Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011981 development test Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本申请提供了一种服务调用方法、装置、设备和存储介质,涉及计算机技术领域,可以应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景,方法包括:响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求;获取管理服务端发送的第一验证获取请求对应的目标方验证结果,目标方验证结果是基于目标终端的静态因子数据、目标终端的动态因子数据、目标服务的服务特征数据和安全服务访问策略确定的;在目标方验证结果用于指示满足调用发起条件的情况下,基于常驻检测服务对调用应用进行权限验证,得到权限验证结果;基于权限验证结果对远程调用请求进行远程调用控制;本申请能够显著提高调用安全性和可靠性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种服务调用方法、装置、设备和存储介质。
背景技术
端到端访问中,通常通过VPN等远程控制工具打通网络隧道,使得发起端能够访问局域网内任意终端的开放端口,或者访问指定终端开放的任意服务。该方式虽然能够实现公网环境下的端到端访问,但安全风险较高,网络扫描和嗅探工具包等能够主动扫描被访问终端开放的业务和端口信息,无法有效应对违规服务对高危端口的探测和敏感应用的调用,易被恶意攻击者利用,导致安全威胁事件。
发明内容
本申请提供了一种服务调用方法、装置、设备和存储介质,可以显著提高服务调用的安全性和可靠性。
一方面,本申请提供了一种服务调用方法,所述方法包括:
响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,所述目标服务搭载于目标终端;
获取所述管理服务端发送的所述第一验证获取请求对应的目标方验证结果,所述目标方验证结果是基于所述目标终端的静态因子数据、所述目标终端的动态因子数据、所述目标服务的服务特征数据和安全服务访问策略确定的;
在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;
基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
另一方面提供了一种服务调用装置,所述装置包括:
请求发送模块:用于响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,所述目标服务搭载于目标终端;
结果获取模块:用于获取所述管理服务端发送的所述第一验证获取请求对应的目标方验证结果,所述目标方验证结果是基于所述目标终端的静态因子数据、所述目标终端的动态因子数据、所述目标服务的服务特征数据和安全服务访问策略确定的;
权限验证模块:用于在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;
调用控制模块:用于基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
另一方面提供了一种计算机设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的服务调用方法。
另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如上述的服务调用方法。
另一方面提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的服务调用方法。
另一方面提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的服务调用方法。
另一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令被处理器执行时实现如上述的服务调用方法。
本申请提供的服务调用方法、装置、设备、存储介质、服务器、终端、计算机程序和计算机程序产品,具有如下技术效果:
本申请响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,以获取管理服务端发送的第一验证获取请求对应的目标方验证结果,该目标方验证结果是基于目标终端的静态因子数据、目标终端的动态因子数据、目标服务的服务特征数据和安全服务访问策略确定的;以能够在调用发起前实现对端设备和被调用服务的安全检测,基于目标方的实时检测结果进行服务调用的初步过滤,在提高调用安全性的同时避免发起无效调用;在目标方验证结果用于指示满足调用发起条件的情况下,基于常驻检测服务对调用应用进行权限验证,得到权限验证结果;进而基于权限验证结果,对远程调用请求进行远程调用控制;以在执行远程调用请求前进行调用应用的安全验证,实现实时的远程调用控制,而不是通过网络隧道进行应用的通用调用,基于终端侧进行基于应用验证的调用控制,能够将违规调用的阻断提前到发起调用的终端侧,提高远程调用的安全性、检测时效性和阻断效率,同时降低无效网络流量消耗和带宽占用。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种应用环境的示意图;
图2是本申请实施例提供的一种服务调用方法的流程示意图;
图3是本申请实施例提供的另一种服务调用方法的流程示意图;
图4是本申请实施例提供的另一种服务调用方法的流程示意图;
图5是本申请实施例提供的另一种服务调用方法的流程示意图;
图6是本申请实施例提供的一个管理客户端的显示界面;
图7是本申请实施例提供的另一管理客户端的显示界面;
图8是本申请实施例提供的另一管理客户端的显示界面;
图9是本申请实施例提供的另一种服务调用方法的流程示意图;
图10是本申请实施例提供的一种服务调用装置的框架示意图;
图11是本申请实施例提供一种服务调用装置的框架示意图;
图12是本申请实施例提供的一种服务调用方法的电子设备的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或子模块的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或子模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或子模块。
请参阅图1,图1是本申请实施例提供的一种应用环境的示意图,如图1所示,该应用环境可以至少包括终端10、管理服务端20、终端30和代理服务端40。在实际应用中,终端10可以是调用终端,终端10中可以搭载终端管理客户端、代理组件和调用服务,通过该终端管理客户端实现与管理服务端20之间的通信;通过该代理组件和代理服务端40实现终端管理客户端与终端30之间的通信,进而实现终端30的服务调用,该终端10的数量可以为多个,终端30的数量可以为多个,本申请对此不作具体限定。
一些实施例中,应用环境还可以包括业务服务端50,存储有业务资源数据等,通过代理组件和代理服务端40实现终端管理客户端与业务服务端50之间的通信,进而实现业务系统和数据访问,
上述管理服务端20可以为终端10和终端30提供远程服务调用的后台服务,业务服务端40可以为终端10提供业务服务,该管理服务端20和业务服务端40可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。需要说明的是,上述管理服务端20和业务服务端40可以实现为云端的云服务器。
具体地,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术能够应用于各种领域,如医疗云、云物联、云安全、云教育、云会议、人工智能云服务、云应用、云呼叫和云社交等,云技术基于云计算(cloud computing)商业模式应用,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”,“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务))平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
在一些实施例中,上述管理服务端20和业务服务端50还可以实现为区块链系统中的节点。区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链,本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
具体地,上述涉及的服务端可以包括实体设备,可以具体包括有网络通信子模块、处理器和存储器等等,也可以包括运行于实体设备中的软体,可以具体包括有应用程序等。
具体地,终端可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、智能语音交互设备、智能家电、智能可穿戴设备、车载终端设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序等。
需要说明的是,在实际应用中,上述服务调用方法可以在终端10中实现,也可以在服务端中实现,或者由至少一个终端和至少一个服务端共同实现。
此外,可以理解的是,图1所示的仅仅是一种服务调用方法的应用环境,该应用环境可以包括更多或更少的节点,本申请在此不做限制。
以下基于上述应用环境介绍本申请的一种服务调用方法,应用于调用终端,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。请参考图2,图2是本申请实施例提供的一种服务调用方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体地,如图2所示,方法可以包括下述步骤S201-S207。
S201:响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,目标服务搭载于目标终端。
本申请实施例中,调用应用是指运行于调用终端上的调用发起方,目标服务是指远端终端上的可以访问的服务,例如远程桌面服务TermService,基于TCP协议,默认占用3389端口。远程调用请求为基于调用终端上运行的调用应用所发起的远程调用事件生成的,远程调用事件用于反映访问主体触发对访问客体的访问,示例性的,访问主体为在网络中,发起访问的一方,如访问内网业务资源或终端服务的人/设备/应用/,是由人、设备、应用等因素单一组成或者组合形成的一种数字实体;被访问的一方,即企业内网业务资源或终端服务,包括应用、系统环境(例如开发测试环境、运维环境、生产环境等)、数据、接口、功能等。可选地,访问客体可以包括终端以及终端服务管理客户端对应的数据资源,该业务访问事件包括但不限于为点击、输入等触发操作。
调用终端和/或目标终端均搭载终端管理客户端,终端管理客户端在调用终端本地和/或目标终端本地占用一个可用端口,可以在本地端口列表中随机选取一个未被占用的端口,启动常驻检测服务,用于对指定流量进行劫持,指定流量包括但不限于终端服务管理进程发起的远程调用请求等远程访问请求。常驻检测服务截流到远程调用请求后,发起第一验证获取请求,以调用管理服务端进行目标方验证处理。终端服务管理进程用于响应于远程调用事件等访问事件进行请求管理,进而发起相应的访问请求。远程调用请求可以包括但不限于目标终端的局域网IP、目标服务端口、目标终端标识信息和目标服务标识信息等。
具体地,首先管理服务端用于存储和下发由企业管理员配置的安全服务访问策略,以控制发起服务调用的调用终端访问目标终端上目标服务的安全性。安全服务访问策略用于控制通过访问代理服务和代理服务端访问目标终端服务的请求、调用终端和目标终端要求具备的静态因子数据和动态因子数据、以及调用服务和目标服务要求具备的应用特征数据等。
需要说明的是,在响应远程调用事件之前,还可以包括登录终端管理客户端的步骤,通过登录票据来进行身份认证和登录,进而根据终端管理客户端进行调用终端中远程调用服务。该登录票据(即大票)是登录账户通过身份认证后,服务端给终端发放的凭证。身份认证方式可以包括但不限于扫码登录,账号密码登录,Token登录、IAM登录等,登录操作后即生成并发放登录票据,每个登录票据具有登录有效期和使用频次,在注销登录或超出登录票据的有效期后该登录票据将自动失效,进而需要重新进行身份认证和登录。
一些实施例中,远程调用事件可以直接指定目标终端,如登录账户的选择操作对应的目标终端,或者终端服务控制进程指定默认的目标终端,则终端服务控制进程直接基于远程调用事件生成针对目标终端上目标应用的远程调用请求。
另一些实施例中,当前登录账户存在多个可达终端,需进行交互选择操作,相应的,请参考图3,在S201之前,方法还可以包括:
S301:响应于调用应用针对目标服务的远程调用事件,基于终端服务控制进程确定调用终端对应的可达终端列表;
S303:基于针对可达终端列表的选择操作,将选择操作对应的终端确定为目标终端;
S305:基于终端服务控制进程生成远程调用请求。
具体地,远程调用事件是由调用终端的调用应用发起的,调用应用可以为终端管理客户端自身或者也可以为其他应用,例如远程桌面服务等。
本申请实施例中,安全服务访问策略包括但不限于目标终端策略、目标服务策略、可信应用策略和设备安全策略。目标终端策略包括限制终端管理客户端的登录账户访问的过滤规则,用于限定终端与终端间、终端与业务服务端间的访问权限,具体包括当前登录账户所能够访问的设备范围,可以是按照预设规则配置的登录账户与归属其权限的所有设备列表,存储在管理服务端,登录账户只能向这个列表中的设备发起端到端的服务调用。目标服务策略用于限定当前登录用户和终端能够访问的设备(包括终端和业务服务端)中特定的服务,每一个服务对应一组具备调用该服务的权限的调用发起终端或者登录账户。可信应用策略用于控制应用与应用间的访问权限,限定登录账户对应的、有权限发起的端到端服务调用请求的调用应用,可信应用范围之外的应用不能访问内网终端提供的服务,可指定一组特定的可信应用作为登录账户的终端上具备发起调用请求权限的应用,每一个服务(应用)可以对应一组可信应用。设备安全策略用于限定终端(包括调用终端和目标终端)要求具备的动态因子数据,包括环境状态信息和合规检测级别等,即确保终端的安全环境状态满足需求,只有符合这些条件的终端才有权限执行远端服务调用。
一个实施例中,目标终端策略可以包括终端目前的局域网IP、限制终端访问的过滤规则等;目标服务策略包括目标服务的类型、名称、以及在目标终端上常驻检测的端口、服务的协议类型(包括网络协议栈中的运输层协议)等;可信应用策略可以包括进程名(应用名)、版权信息、签名信息等;设备安全策略可以包括设备唯一标识符、可访问目标终端提供的服务所要求具备的环境状态信息、合规检测级别等安全规则。
其中,可达终端列表用于指示调用终端具备访问权限的且搭载目标服务的终端。终端服务控制进程用于反映终端管理客户端在运行过程中的实例。在检测到远程调用事件的情况下,可以调用终端服务控制进程发起远程调用请求。该远程调用请求可以用于指示请求访问中需要访问的目标服务,该目标服务可以例如为内网终端的运维服务、测试服务或文件管理应用等。
需要说明的是,在远程调用事件之前,在终端管理客户端登录成功后,终端服务控制进程发起终端与管理服务端间的连接请求,进而建立长连接和心跳连接,如TCP长连接。基于周期性的心跳机制,终端定期采集设备的静态因子数据和动态因子数据,如设备局域网IP、环境状态信息、终端合规检测结果,和安全基线等,向管理服务端发起心跳请求,由此管理服务端可感知终端的状态,包括活跃状态和健康状态等。另一方面,当管理服务端需要检测终端的特定服务或进程的状态、同步更新的安全服务防护策略时,或者终端需要请求管理服务端的功能服务(如验证服务)时,管理服务端可通过长连接将命令、配置或响应推送至终端,终端可通过长连接将请求等推送至管理服务端。如此,完成低时延的信息同步操作,并且通过长连接和周期性心跳,管理服务端可以感知设备的活跃状态,当有终端向指定设备发起端到端服务调用时,管理服务端可以快速提供出该登录账户归属的或有权限访问的处于活跃状态的设备列表。
一些实施例中,当调用终端需要调用远端终端的目标服务时,终端服务控制进程向管理服务端发送终端查询请求,终端查询请求携带登录用户信息,可以基于前述的长连接发送,管理服务端响应于该查询请求,基于前述的目标终端策略确定当前登录用户具备访问权限的可达终端,并基于终端服务搭载信息确定可达终端中搭载有目标服务的终端,得到可达终端列表,发送至调用终端,以使调用终端显示可达终端列表和相应的选择控件,接收用户的选择操作,将用户选择的终端确定为目标终端。可达终端列表中的终端信息包括局域网IP、设备活跃信息、操作系统版本、管理客户端版本信息等。如此,在生成远程调用请求前,进行有权限访问的终端过滤,提供可达的终端设备,提高用户交互性,避免用户触发无效调用请求。
另一些实施例中个,管理服务端可以基于心跳机制或者长连接向运行有终端管理客户端的终端下发全部或部分安全服务防护策略,下发策略中至少包括目标终端策略和目标服务策略,还可以包括前述的终端服务搭载信息。终端服务控制进程基于远程调用事件,根据本地存储的目标终端策略和终端服务搭载信息进行可达终端匹配,得到该可达终端列表。如此,提高终端初筛效率,降低带宽占用。
一个实施例中,请参考图6-图8,可以通过管理客户端的显示界面进行策略和访问资源配置,请参考图6,可以对指定的服务,如远程桌面服务配置内网资源信息,包括域名、端口、资源分组、协议类型等,还可以进一步配置网关资源,如图7所示;此外,针对指定登录账户,还可以通过显示界面查看已授权可访问的服务和资源列表等。
S203:获取管理服务端发送的第一验证获取请求对应的目标方验证结果。
具体地,目标方验证结果是基于目标终端的静态因子数据、目标终端的动态因子数据、目标服务的服务特征数据和安全服务访问策略确定的。
其中,静态因子数据用于表征设备的静态因素,该静态因子数据可以包括访问主体的信息、访问进程特征数据、访问对象等。其中,访问主体的信息可以包括访问主体的登录账户信息、访问主体的访问权限信息、访问操作数据(例如登录凭证的使用时间、使用频率和有效期)等。访问对象可以包括目标服务的标识信息或服务数据等;访问主体的访问权限信息可以包括但不限于目标服务的被访问权限开通状态,目标服务所在终端的防火墙等安全设置等。访问进程特征数据可以包括但不限于发起访问的终端的管理客户端对应的进程可执行文件的最近修改时间(updatetime)、可执行文件的大小(filesize)、可执行文件的MD5、文件版本信息、文件版权信息(copyright)、可执行文件的文件描述信息(filedesc)、进程名、进程ID、进程的绝对路径(procpath)、进程签名、进程的版本号(filever)、产品名称、进程文件SHA256、根证书、进程可执行文件的数字签名中的签名者名(sign_issuer)、本地验签结果(sign_check_rst)等信息;其中,本地验签结果包括:数字签名验证通过(SIGN_CHECK_PASS)、数字签名验证失败(SIGN_CHECk_FAILED)、数字签名验证超时(SIGN_CHECK_TIMEOUT)、进程无数字签名(PROC_NO_SIGN_INFO)。
动态因子数据是用于表征搭载终端管理客户端的终端的网络环境数据。该动态因子数据可以包括终端的设备局域网IP、终端合规信息、环境状态信息和安全基线信息等。其中,终端合规信息可以包括病毒查杀信息、漏洞修复信息、安全加固信息、数据保护信息、实时防护信息、心跳检测信息等中的至少一种。环境状态信息可以包括终端网络区域信息(如出口IP)、网络环境信息(如物理网卡IP),登录用户是否正在发起其他远程调用服务或敏感业务资源访问等。
目标服务的服务特征数据与访问进程特征数据相类似,包括但不限于目标服务对应的进程可执行文件的最近修改时间、可执行文件的大小、可执行文件的MD5、文件版本信息、文件版权信息、可执行文件的文件描述信息、进程名、进程ID、进程的绝对路径、进程签名、进程的版本号、产品名称、进程文件SHA256、根证书、进程可执行文件的数字签名中的签名者名、本地验签结果等信息;其中,本地验签结果包括:数字签名验证通过、数字签名验证失败、数字签名验证超时、进程无数字签名等应用静态特征。还可以包括但不限于目标服务对应的病毒查杀信息、漏洞修复信息、安全加固信息、数据保护信息、心跳检测信息、服务是否正在发起其他远程调用服务或敏感业务资源访问等应用动态特征中的至少其一。
本申请实施例中,管理服务端响应于第一验证获取请求进行目标方验证处理,至少基于安全服务访问策略中的可信应用策略和设备安全策略,检测目标终端动态因子数据、静态因子数据和应用特征数据是否均与其匹配,若匹配,确定目标终端和目标服务均处于健康状态,确定目标方验证结果为通过,满足调用发起条件,反之不通过,不满足调用发起条件。
一些情况下,目标终端的静态因子数据、动态因子数据、目标服务的应用特征数据可以是目标终端的终端管理客户端基于心跳机制上传至管理服务端的最近数据,如此,直接基于本地存储数据进行目标方验证,降低响应时延。
一些情况下,除上述健康状态验证外,目标方验证处理还可以包括活跃状态验证,具体为管理服务端向目标终端发送活跃检测指令,用于检测目标终端和目标服务当前是否为可用状态,若存在目标终端未开启或目标服务卸载等不可用状态时,确定验证不通过,不满足调用发起条件,若二者均可用,且目标终端和目标服务均处于健康状态,则验证通过,满足调用发起条件。如此,确保目标方的活跃状态和健康状态均正常的情况下,才能执行对端服务的调用,进一步降低无效请求的发送,降低带宽占用,提高响应及时性,降低用户业务操作的冗余耗时。
在目标方验证结果用于指示不满足调用发起条件的情况下,控制阻断远程调用请求。调用终端还可以接收并显示目标终端和目标服务的活跃状态、健康状态,以便于用户知晓实时状态和验证不通过详情。
S205:在目标方验证结果用于指示满足调用发起条件的情况下,基于常驻检测服务对调用应用进行权限验证,得到权限验证结果。
本申请实施例中,在目标方验证通过后,常驻检测服务在调用终端本地进行初步安全验证,以确保其具备目标服务的初始访问权限。可以理解的,远程调用事件的发起方可能为终端服务控制进程本身,若基于终端服务控制进程进行验证,易引入安全风险,通过常驻检测服务执行本地验证,能够实现包括终端服务控制进程在内的全面检测,提高验证可靠性。相应的,S205可以包括:
S2051:通过常驻检测服务获取调用应用的应用特征数据;
S2052:通过常驻检测服务,基于本地存储的安全服务访问策略列表和调用应用的应用特征数据进行权限校验,得到权限验证结果。
具体地,调用应用的应用特征数据与前述的目标服务的应用特征数据相类似,不再赘述。本地存储的安全服务访问策略列表为管理服务端基于长连接下发至终端,可以至少包括前述的目标终端策略和目标服务策略,一些情况下,还可以包括可信应用策略。若调用应用的应用特征数据命中目标服务对应的安全服务访问策略列表中的策略规则,或者与目标服务对应的安全服务访问策略相匹配,确定调用应用为终端认证的当前发起端对端服务调用的可信应用,具备初始访问权限,权限验证结果为验证通过,反之为验证不通过。在内网终端服务的远程调用场景下,只有可信应用才能作为目标终端服务的请求发起方,可信应用范围之外的应用则拒绝访问内网终端提供的服务。
一些实施例中,目标方验证结果用于指示满足调用发起条件的情况下,常驻检测服务调用终端服务控制进程,以基于调用应用的应用信息进行特征处理,生成调用应用的应用特征数据。
另一些实施例中,可以预先对应用特征数据进行缓存,相应地,S2051可以具体包括:通过常驻检测服务在缓存中查找调用应用的应用特征数据;若查找到,直接执行S2052;若未查找到,通过常驻检测服务调用终端服务控制进程,以使终端服务控制进程基于调用应用的应用信息,生成调用应用的应用特征数据,进而执行S2052,并存储该应用特征数据,以便于后续读取。
具体地,应用信息可以包括但不限于调用应用的进程ID、进程对应的可执行文件的绝对路径、描述信息、进程名、进程签名、版权信息等,终端服务控制进程根据进程ID和进程的绝对路径计算得到进程可执行文件的最近修改时间,根据进程的绝对路径获取进程的版本号、进程可执行文件的描述信息、进程可执行文件的大小和版权信息;同时终端服务控制进程根据进程的绝对路径并行结算进程的md5和其他HASH值(如SHA256)、进程可执行文件的数字签名中的签名者姓名以及本地验签结果。
如此,通过常驻检测服务,基于本地存储的策略进行应用验证,实现违规调用初筛,以及时阻断,确保检测可靠性,降低管理服务端的校验业务压力和验证流量消耗。
可以理解的,上述权限验证相当于应用的静态特征验证。
一些实施例中,在进行应用特征数据存储的情况下,方法还包括:
S401:响应于终端服务控制进程的启动,通过终端服务控制进程获取第一终端的多个应用的应用信息,多个应用包括调用应用;
S403:通过终端服务控制进程对应用信息进行特征处理,得到多个应用的应用特征数据。
具体地,终端管理客户端启动后,即终端服务控制进程启动,针对指定的多个应用进行应用信息特征计算,得到应用特征数据,并在内存和本地加密缓存文件中存储已计算成功的应用特征数据,可以基于进程文件的绝对路径和最近修改时间作为缓存项的唯一标识,在进程文件的绝对路径不变,且没有修改过的前提下,则确定当前应用的应用特征数据以匹配到的缓存项为准,无需重新计算,若路径变更或存在修改,则触发应用特征数据的重新计算流程。多个应用可以为具备远程调用功能的应用。如此,预先执行特征处理,提高应用特征数据的获取效率和验证效率。可以理解的,终端服务控制进程启动时,可能上一次启动过程中已执行过多个应用的特征处理,则首选在缓存中加载已计算出的所有应用特征数据,构建出内存缓存,若不存在,则触发计算流程。
S207:基于权限验证结果,对远程调用请求进行远程调用控制。
本申请实施例中,权限验证结果可以指示验证通过或验证不通过,在用于指示验证不通过的情况下,控制阻断远程调用请求,以在终端预筛违规调用,实现终端侧阻断,降低代理服务端或者管理服务端的业务处理压力。在权限验证结果用于指示验证通过的情况下,需向管理服务端发送第二验证获取请求,以向服务端请求此次网关访问的网络访问凭证,只有管理服务端校验登录账户具备访问权限,确认设备合法性、应用安全性以及环境状态合规后,才会下发网络访问凭证,网络访问凭证用于指示远程调用请求的授权状态,如指示访问主体有权限访问所需要调用的终端和服务。
一些实施例中,在权限验证结果用于指示验证通过的情况下,请参考图4,S207可以包括S2071-S2072。
S2071:在权限验证结果用于指示验证通过的情况下,基于常驻检测服务向管理服务端发送第二验证获取请求。
基于前述的,终端本地通过常驻检测服务进行了调用应用的初步验证,第二验证获取请求用于指示管理服务端进行调用应用和调用终端的调用方验证处理。
调用方验证结果是基于调用终端的静态因子数据、调用终端的动态因子数据、调用服务的服务特征数据和安全服务访问策略确定的。管理服务端以目标服务对应的安全服务访问策略作为校验标准生成调用方验证结果,用于指示调用终端和调用应用是否有权限进行目标服务的调用。一些情况下,调用方验证处理与前述的目标方验证处理相类似,执行目标终端的静态因子数据、动态因子数据、应用特征数据的整体静态验证和动态验证。另一些情况下,为提高验证效率,管理服务端针对目标终端的静态因子数据、动态因子数据进行全面验证,针对应用特征数据仅进行动态验证,如针对调用服务对应的病毒查杀信息、漏洞修复信息、安全加固信息、数据保护信息、心跳检测信息、服务是否正在发起其他远程调用服务或敏感业务资源访问等应用动态特征进行权限验证。如此,避免冗余处理,提高验证效率。
S2072:基于调用方验证结果,对远程调用请求进行远程调用控制。
具体地,调用方验证结果用于指示调用应用和调用终端的验证通过或不通过,验证通过表征调用应用和调用终端均具备安全调用权限,反之,则表明调用应用和调用终端中的至少其一不具备安全调用权限。
上述实施方式中,在权限验证结果为验证通过的情况下,通过常驻检测服务进行第二验证获取请求的发送,具体为触发终端服务控制进程基于长连接将第二验证请求发送至管理服务端,直接调用管理服务端进行深度权限验证,再发送远程调用请求至代理服务端,进行针对目标服务的远程调用请求转发,将远程调用请求的全部验证过程集成于代理服务端之前,提高验证效率,简化验证流程,降低代理服务端的业务压力,缩短请求阻断链路。
具体地,在调用方验证结果用于指示验证通过的情况下,基于常驻检测服务将远程调用请求发送至代理服务端,以使代理服务端基于远程调用请求建立与目标终端的连接,并触发目标服务的调用。在调用方验证结果用于指示验证不通过的情况下,常驻检测服务阻断远程调用请求,以在终端侧实现不合规调用拦截。仅作为示例,代理服务端部署在被访问的应用程序和数据资源的入口,负责对每一个访问数据资源和应用程序的会话请求进行验证和请求转发,可以为网关设备。
另一些实施例中,通过代理服务端执行调用发验证的触发,相应的,S207可以包括S2073:在权限验证结果用于指示验证通过的情况下,基于常驻检测服务将远程调用请求发送至代理服务端,以使代理服务端基于远程调用请求向管理服务端发送第二验证获取请求,并基于第二验证获取请求对应的调用方验证结果,对远程调用请求进行远程调用控制。
调用方验证结果是管理服务端基于调用终端的静态因子数据、调用终端的动态因子数据、调用服务的服务特征数据和安全服务访问策略确定并发送的。
具体地,在调用方验证处理前,常驻检测服务先转发远程调用请求至代理服务端,由代理服务端发起第二验证获取请求,再统一由代理服务端向管理服务端请求深度权限检测,在深度权限检测通过后,进行针对目标终端的调用请求转发。
具体地,在调用方验证结果用于指示验证通过的情况下,代理服务端将响应于远程调用请求建立与目标终端的连接,进而建立端到端的访问链路,并触发目标服务的调用。在调用方验证结果用于指示验证不通过的情况下,代理服务端阻断远程调用请求。
需要说明的是,在远程访问场景中,除端到端的远程服务调用外,还包括终端到业务服务端的业务访问,服务端到业务服务端的业务访问,存在终端和业务服务端共享代理服务端的布置。相应的,代理服务端需要针对后两种业务访问的请求进行访问控制验证,过程为响应于业务访问请求调用管理服务端进行相应的业务验证。通过上述S2073,将初步检测具备权限的远程调用请求的合流至代理服务端,以将端倒端的访问调用、端到业务服务器的数据访问请求和第三方服务器到业务服务器的数据访问请求合流,无需针对端到端调用服务配置单独的验证和网络流量转发规则,也不需要单独建立终端到管理服务端的验证网络连接,实现不同访问业务的网络流量整合,降低网络配置复杂度。
需要说明的是,安全服务防护策略、终端的动态因子数据和应用特征数据均可能存在更新和变更,使得访问主体发起的端到端服务调用不再满足权限验证,则终端服务控制进程自动阻断当前的端到端的访问链路,阻止新的服务调用,实现调用的动态检测和管理,提高安全性。
具体地,调用终端的终端服务控制进程检测调用终端的动态因子数据更新、调用服务的应用特征数据更新、以及管理服务端下发的安全服务防护策略更新,目标终端的终端服务控制进程检测目标终端的动态因子数据更新、目标服务的应用特征数据更新、以及管理服务端下发的安全服务防护策略更新,管理服务端检测安全服务防护策略更新,在任一更新的情况下,触发网络访问凭证的重认证,认证通过,继续维护端到端链路,认证不通过,判定网络访问凭证失效,阻断访问链路。
终端上还运行有访问代理服务,访问代理是部署于受控设备的发起安全访问的终端代理,负责访问主体可信身份验证的请求发起,验证身份可信,即可以与代理服务端建立加密的访问连接,同时也可以是安全服务防护策略的策略执行点。
结合上述的具体实施方式,基于常驻检测服务将远程调用请求发送至代理服务端包括:
S501:通过常驻检测服务,基于预设引流规则将远程调用请求发送至访问代理服务;
S503:通过访问代理服务将远程调用请求发送至代理服务端。
具体地,网络流量经由访问代理服务转发至代理服务端,最终由代理服务端执行流量代理功能。
具体地,管理服务端向访问代理服务下发不同代理服务站点的转发规则,仅作为示例,将企业内网网段、网关接入点(经过哪个网关访问特定的企业内网设备)等作为转发规则下发至访问代理服务,针对命中该网段的端到端的远程调用请求,访问代理服务将其转发至命中网段对应的代理服务设备(网关),以发起远程调用。例如,企业内网网段是10.91.72/26,通过网关A去访问该网段内的目标终端即为一条转发规则。
具体地,,针对终端上不同的访问代理引流模式设置有不同的预设引流规则,常驻检测服务可以调用终端服务控制进程,以使终端服务控制进程基于不同的预设引流规则将端到端远程调用请求引流到访问代理服务。访问代理服务的引流模式包括但不限于全流量劫持模式、部分流量劫持模式和内核驱动写入模式。
示例性的,全流量劫持模式可以为基于TUN/TAP虚拟网卡和结合主机路由表形成的全流量代理模式,则终端服务控制进程发起针对目标服务所在的目标终端的局域网IP,和目标服务所占用的端口发起转发,被全流量代理模式的访问代理服务劫持后,向代理服务端发起转发。
示例性的,部分流量劫持模式可以为浏览器代理模式,则终端服务控制进程启动的常驻检测服务向访问代理服务的本地端口发起一个预设IP和端口的访问,同时转发请求中包括目标服务所在的目标终端的局域网IP和目标服务的端口。即由调用终端的环回网卡的端口A(常驻检测服务)转发至端口B(访问代理服务),端口A由终端服务控制进程占用,端口B由访问代理占用。
具体地,访问代理服务从远程调用请求的请求体中抽取出目标终端的局域网IP,以向目标终端的局域网IP和目标服务所占用的端口发起转发,下一跳为代理服务端。
示例性的,内核驱动写入模式为终端管理客户端动态地将预设引流规则写入内核驱动,由内核驱动将网络流量引入到访问代理,实现远程调用请求的转发。无需安装虚拟网卡,也不需要修改系统路由表和修改本地DNS配置等操作,可以避免不同版本的系统或特定环境的终端中存在的兼容性问题。通过在驱动层提供内核组件以与访问代理服务交互,由访问代理服务决定需要引流的流量,不需要引流的流量由系统原路径输出,需要引流的流量则自动进入访问代理服务的数据处理入口。当常驻检测服务检测到远程调用请求后,完成全部验证并合规后,将目标终端的局域网IP与目标服务的端口作为动态的预设引流规则下发至内核引流驱动,以将流量(远程调用请求)导入到访问代理中,进而实现转发,在后续终端服务控制进程再次发起远程调用请求,该请求经由内核驱动后,若请求信息命中写入的预设引流规则,即之前已有同样请求信息的流量被成功引流至访问代理服务,则内核引流驱动直接将该远程调用请求导入访问代理服务,无需再经由常驻检测服务进行转发,以提高链路创建效率和流量转发效率。
综上,通过常驻检测服务,按照引流模式(部分流量引流、全流量劫持引流或内核驱动引流)进行向访问代理的请求转发,能够适配终端固有的多种引流模式,无需调整终端的引流配置,适配灵活,同时避免请求漏验。
本申请的技术方案能够于异构网络环境中安全地执行端到端服务调用,由管理客户端、访问代理服务、代理服务端、管理服务端与终端服务控制进程共同实现,能够快速识别和自动处置端到端服务调用,显著降低漏洞被利用的几率,提高异构网络环境中端到端服务调用的安全性,显著增强网络访问控制的可靠性和可用性。
以下结合图9介绍本申请一个具体实施例的服务调用过程,具体地,包括下述步骤。
S1.调用应用发起远程调用事件;
S2.终端服务控制进程确定可达终端列表;
S3.终端服务控制进程确定目标终端;
S4.终端服务控制进程生成远程调用请求;
S5.常驻检测服务触发终端服务控制进程向管理服务端发送第一验证获取请求;
S6.管理服务端进行目标方验证处理;
S7.管理服务端返回目标方验证结果;目标方验证结果用于指示满足调用发起条件,执行S8,反之,执行S16;
S8.常驻检测服务对调用应用进行权限验证,验证通过,执行S9,验证不通过,执行S16;
S9.常驻检测服务将远程调用请求发送至访问代理服务;
S10.访问代理服务将远程调用请求发送至代理服务端;
S11.代理服务端向管理服务端发送第二验证获取请求;
S12.管理服务端进行调用方验证处理;
S13.管理服务端返回调用方验证结果;验证通过,执行S14,反之,执行S16;
S14.代理服务端建立与目标终端的网络连接;
S15.代理服务端将远程调用请求发送至目标终端,以调用目标服务;
S16.阻断远程调用请求。
以下基于上述应用环境介绍本申请的一种服务调用方法,应用于管理服务端,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。请参考图5,图5是本申请实施例提供的一种服务调用方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体地,如图5所示,方法可以包括下述步骤S601-S607。
S601:接收第一验证获取请求,第一验证获取请求是调用终端的常驻检测服务响应于调用应用针对目标服务的远程调用请求发送的,所述目标服务搭载于目标终端;
S603:基于目标服务的服务特征数据和安全服务访问策略确定第一验证获取请求对应的目标方验证结果;
S605:发送目标方验证结果至调用终端,以使调用终端在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;并基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
一些实施例中,方法还包括:
S701:接收第二验证获取请求,第二验证获取请求是调用终端在所述权限验证结果用于指示验证通过的情况下,基于所述常驻检测服务发送的;
S703:基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定所述第二验证获取请求对应的调用方验证结果;
S705:发送调用方验证结果至调用终端,以使调用终端基于所述调用方验证结果,对所述远程调用请求进行远程调用控制。
另一些实施例中,方法还包括:
S707:接收代理服务端基于远程调用请求发送的第二验证获取请求,远程调用请求是在所述权限验证结果用于指示验证通过的情况下,调用终端基于所述常驻检测服务发送至代理服务端的;
S709:基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定所述第二验证获取请求对应的调用方验证结果;
S711:发送调用方验证结果至代理服务端,以使代理服务端基于所述调用方验证结果,对所述远程调用请求进行远程调用控制。
本申请实施例还提供了一种服务调用装置10,应用于调用终端,如图10所示,图10示出了本申请实施例提供的一种服务调用装置的结构示意图,装置可以包括下述模块。
请求发送模块11:用于响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,所述目标服务搭载于目标终端;
结果获取模块12:用于获取所述管理服务端发送的所述第一验证获取请求对应的目标方验证结果,所述目标方验证结果是基于所述目标终端的静态因子数据、所述目标终端的动态因子数据、所述目标服务的服务特征数据和安全服务访问策略确定的;
权限验证模块13:用于在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;
调用控制模块14:用于基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
一些实施例中,调用控制模块14可以包括:
第一请求发送子模块:用于在所述权限验证结果用于指示验证通过的情况下,基于所述常驻检测服务向所述管理服务端发送第二验证获取请求;
第一结果获取子模块:用于获取所述管理服务端发送的所述第二验证获取请求对应的调用方验证结果,所述调用方验证结果是基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定的;
控制子模块:用于基于所述调用方验证结果,对所述远程调用请求进行远程调用控制。
一些实施例中,控制子模块可以具体用于:在所述调用方验证结果用于指示验证通过的情况下,基于所述常驻检测服务将所述远程调用请求发送至代理服务端,以使所述代理服务端基于所述远程调用请求建立与所述目标终端的连接,并触发所述目标服务的调用。
另一些实施例中,调用控制模块14可以包括第二请求发送子模块:用于在所述权限验证结果用于指示验证通过的情况下,基于所述常驻检测服务将所述远程调用请求发送至代理服务端,以使所述代理服务端基于所述远程调用请求向所述管理服务端发送第二验证获取请求,并基于所述第二验证获取请求对应的调用方验证结果,对所述远程调用请求进行远程调用控制;
所述调用方验证结果是所述管理服务端基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定并发送的。
一些实施例中,所述基于所述常驻检测服务将所述远程调用请求发送至代理服务端可以具体包括:通过所述常驻检测服务,基于预设引流规则将所述远程调用请求发送至访问代理服务;通过所述访问代理服务将所述远程调用请求发送至所述代理服务端。
一些实施例中,所述装置还可以包括:
终端列表确定模块:用于在所述响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求之前,响应于所述调用应用针对所述目标服务的远程调用事件,基于终端服务控制进程确定所述调用终端对应的可达终端列表,所述可达终端列表用于指示所述调用终端具备访问权限的且搭载所述目标服务的终端;
终端确定模块:用于基于针对所述可达终端列表的选择操作,将所述选择操作对应的终端确定为所述目标终端;
请求生成模块:用于基于终端服务控制进程生成所述远程调用请求。
一些实施例中,所述装置还可以包括请求阻断模块:
用于在所述目标方验证结果用于指示不满足调用发起条件的情况下,控制阻断所述远程调用请求;
或者,
用于在所述权限验证结果用于指示验证不通过的情况下,控制阻断所述远程调用请求。
一些实施例中,权限验证模块13可以包括:
特征数据获取子模块:用于通过所述常驻检测服务获取所述调用应用的应用特征数据;
权限校验子模块:用于通过所述常驻检测服务,基于本地存储的安全服务访问策略列表和所述调用应用的应用特征数据进行权限校验,得到所述权限验证结果。
一些实施例中,特征数据获取子模块可以包括:
特征数据查找单元:用于通过所述常驻检测服务在缓存中查找所述调用应用的应用特征数据;
特征数据生成单元:用于若未查找到,通过所述常驻检测服务调用终端服务控制进程,以使所述终端服务控制进程基于所述调用应用的应用信息,生成所述调用应用的应用特征数据。
一些实施例中,所述装置还可以包括:
响应于终端服务控制进程的启动,通过所述终端服务控制进程获取所述第一终端的多个应用的应用信息,所述多个应用包括所述调用应用;
通过所述终端服务控制进程对所述应用信息进行特征处理,得到所述多个应用的应用特征数据。
本申请实施例还提供了一种服务调用装置20,应用于管理服务端,如图11所示,图11示出了本申请实施例提供的一种服务调用装置的结构示意图,装置可以包括下述模块。
第一请求接收模块21:用于接收第一验证获取请求,第一验证获取请求是调用终端的常驻检测服务响应于调用应用针对目标服务的远程调用请求发送的,所述目标服务搭载于目标终端;
第一验证模块22:用于基于目标服务的服务特征数据和安全服务访问策略确定第一验证获取请求对应的目标方验证结果;
第一结果发送模块23:用于发送目标方验证结果至调用终端,以使调用终端在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;并基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
一些实施例中,方法还包括:
第二请求接收模块:用于接收第二验证获取请求,第二验证获取请求是调用终端在所述权限验证结果用于指示验证通过的情况下,基于所述常驻检测服务发送的;
第二验证模块:用于基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定所述第二验证获取请求对应的调用方验证结果;
第二结果发送模块:用于发送调用方验证结果至调用终端,以使调用终端基于所述调用方验证结果,对所述远程调用请求进行远程调用控制。
另一些实施例中,装置还包括:
第三请求模块:用于接收代理服务端基于远程调用请求发送的第二验证获取请求,远程调用请求是在所述权限验证结果用于指示验证通过的情况下,调用终端基于所述常驻检测服务发送至代理服务端的;
第三验证模块:用于基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定所述第二验证获取请求对应的调用方验证结果;
第三结果发送模块:用于发送调用方验证结果至代理服务端,以使代理服务端基于所述调用方验证结果,对所述远程调用请求进行远程调用控制。
需要说明的是,上述装置实施例与方法实施例基于相同的实施方式。
本申请实施例提供了一种服务调用设备,该调度设备可以为终端或服务器,包括处理器和存储器,该存储器中存储有至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的服务调用方法。
存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及服务调用。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置等电子设备中执行。图12是本申请实施例提供的一种服务调用方法的电子设备的硬件结构框图。如图12所示,该电子设备900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,CPU)910(处理器910可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器930,一个或一个以上存储应用程序923或数据922的存储介质920(例如一个或一个以上海量存储设备)。其中,存储器930和存储介质920可以是短暂存储或持久存储。存储在存储介质920的程序可以包括一个或一个以上模块,每个模块可以包括对电子设备中的一系列指令操作。更进一步地,中央处理器910可以设置为与存储介质920通信,在电子设备900上执行存储介质920中的一系列指令操作。电子设备900还可以包括一个或一个以上电源960,一个或一个以上有线或无线网络接口950,一个或一个以上输入输出接口940,和/或,一个或一个以上操作系统921,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
输入输出接口940可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备900的通信供应商提供的无线网络。在一个实例中,输入输出接口940包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口940可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图12所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备900还可包括比图12中所示更多或者更少的组件,或者具有与图12所示不同的配置。
本申请的实施例还提供了一种计算机可读存储介质,存储介质可设置于电子设备之中以保存用于实现方法实施例中一种服务调用方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述方法实施例提供的服务调用方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
由上述本申请提供的服务调用方法、装置、设备、服务器、终端、存储介质和程序产品的实施例可见,本申请响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,以获取管理服务端发送的第一验证获取请求对应的目标方验证结果,该目标方验证结果是基于目标终端的静态因子数据、目标终端的动态因子数据、目标服务的服务特征数据和安全服务访问策略确定的;以能够在调用发起前实现对端设备和被调用服务的安全检测,基于目标方的实时检测结果进行服务调用的初步过滤,在提高调用安全性的同时避免发起无效调用;在目标方验证结果用于指示满足调用发起条件的情况下,基于常驻检测服务对调用应用进行权限验证,得到权限验证结果;进而基于权限验证结果,对远程调用请求进行远程调用控制;以在执行远程调用请求前进行调用应用的安全验证,实现实时的远程调用控制,而不是通过网络隧道进行应用的通用调用,基于终端侧进行基于应用验证的调用控制,能够将违规调用的阻断提前到发起调用的终端侧,提高远程调用的安全性、检测时效性和阻断效率,同时降低无效网络流量消耗和带宽占用。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (13)
1.一种服务调用方法,应用于调用终端,其特征在于,所述方法包括:
响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,所述目标服务搭载于目标终端;
获取所述管理服务端发送的所述第一验证获取请求对应的目标方验证结果,所述目标方验证结果是基于所述目标终端的静态因子数据、所述目标终端的动态因子数据、所述目标服务的服务特征数据和安全服务访问策略确定的;
在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;
基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
2.根据权利要求1所述的方法,其特征在于,所述基于所述权限验证结果,对所述远程调用请求进行远程调用控制包括:
在所述权限验证结果用于指示验证通过的情况下,基于所述常驻检测服务向所述管理服务端发送第二验证获取请求;
获取所述管理服务端发送的所述第二验证获取请求对应的调用方验证结果,所述调用方验证结果是基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定的;
基于所述调用方验证结果,对所述远程调用请求进行远程调用控制。
3.根据权利要求2所述的方法,其特征在于,所述基于所述调用方验证结果,对所述远程调用请求进行远程调用控制包括:
在所述调用方验证结果用于指示验证通过的情况下,基于所述常驻检测服务将所述远程调用请求发送至代理服务端,以使所述代理服务端基于所述远程调用请求建立与所述目标终端的连接,并触发所述目标服务的调用。
4.根据权利要求1所述的方法,其特征在于,所述基于所述权限验证结果,对所述远程调用请求进行远程调用控制包括:
在所述权限验证结果用于指示验证通过的情况下,基于所述常驻检测服务将所述远程调用请求发送至代理服务端,以使所述代理服务端基于所述远程调用请求向所述管理服务端发送第二验证获取请求,并基于所述第二验证获取请求对应的调用方验证结果,对所述远程调用请求进行远程调用控制;
所述调用方验证结果是所述管理服务端基于所述调用终端的静态因子数据、所述调用终端的动态因子数据、所述调用服务的服务特征数据和所述安全服务访问策略确定并发送的。
5.根据权利要求3或4所述的方法,其特征在于,所述基于所述常驻检测服务将所述远程调用请求发送至代理服务端包括:
通过所述常驻检测服务,基于预设引流规则将所述远程调用请求发送至访问代理服务;
通过所述访问代理服务将所述远程调用请求发送至所述代理服务端。
6.根据权利要求1-5中任一项所述的方法,其特征在于,在所述响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求之前,所述方法还包括:
响应于所述调用应用针对所述目标服务的远程调用事件,基于终端服务控制进程确定所述调用终端对应的可达终端列表,所述可达终端列表用于指示所述调用终端具备访问权限的且搭载所述目标服务的终端;
基于针对所述可达终端列表的选择操作,将所述选择操作对应的终端确定为所述目标终端;
基于终端服务控制进程生成所述远程调用请求。
7.根据权利要求1-5中任一项所述的方法,其特征在于,所述方法还包括:
在所述目标方验证结果用于指示不满足调用发起条件的情况下,控制阻断所述远程调用请求;
或者,
在所述权限验证结果用于指示验证不通过的情况下,控制阻断所述远程调用请求。
8.根据权利要求1-5中任一项所述的方法,其特征在于,所述基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果包括:
通过所述常驻检测服务获取所述调用应用的应用特征数据;
通过所述常驻检测服务,基于本地存储的安全服务访问策略列表和所述调用应用的应用特征数据进行权限校验,得到所述权限验证结果。
9.根据权利要求8所述的方法,其特征在于,所述通过所述常驻检测服务获取所述调用应用的应用特征数据包括:
通过所述常驻检测服务在缓存中查找所述调用应用的应用特征数据;
若未查找到,通过所述常驻检测服务调用终端服务控制进程,以使所述终端服务控制进程基于所述调用应用的应用信息,生成所述调用应用的应用特征数据。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
响应于终端服务控制进程的启动,通过所述终端服务控制进程获取所述第一终端的多个应用的应用信息,所述多个应用包括所述调用应用;
通过所述终端服务控制进程对所述应用信息进行特征处理,得到所述多个应用的应用特征数据。
11.一种服务调用装置,应用于调用终端,其特征在于,所述装置包括:
请求发送模块:用于响应于调用应用针对目标服务的远程调用请求,基于常驻检测服务向管理服务端发送第一验证获取请求,所述目标服务搭载于目标终端;
结果获取模块:用于获取所述管理服务端发送的所述第一验证获取请求对应的目标方验证结果,所述目标方验证结果是基于所述目标终端的静态因子数据、所述目标终端的动态因子数据、所述目标服务的服务特征数据和安全服务访问策略确定的;
权限验证模块:用于在所述目标方验证结果用于指示满足调用发起条件的情况下,基于所述常驻检测服务对所述调用应用进行权限验证,得到权限验证结果;
调用控制模块:用于基于所述权限验证结果,对所述远程调用请求进行远程调用控制。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-10中任一项所述的服务调用方法。
13.一种计算机设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-10中任一项所述的服务调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211436181.3A CN118055157A (zh) | 2022-11-16 | 2022-11-16 | 服务调用方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211436181.3A CN118055157A (zh) | 2022-11-16 | 2022-11-16 | 服务调用方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118055157A true CN118055157A (zh) | 2024-05-17 |
Family
ID=91052654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211436181.3A Pending CN118055157A (zh) | 2022-11-16 | 2022-11-16 | 服务调用方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118055157A (zh) |
-
2022
- 2022-11-16 CN CN202211436181.3A patent/CN118055157A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073400B (zh) | 一种访问控制方法、系统、装置及计算设备 | |
JP6349579B2 (ja) | 条件付きログインプロモーション | |
US9692743B2 (en) | Securing organizational computing assets over a network using virtual domains | |
US11792179B2 (en) | Computer readable storage media for legacy integration and methods and systems for utilizing same | |
US10873497B2 (en) | Systems and methods for maintaining communication links | |
US11784993B2 (en) | Cross site request forgery (CSRF) protection for web browsers | |
CN114978652A (zh) | 边缘设备的权限控制方法、资源访问方法及装置 | |
US8601544B1 (en) | Computer system employing dual-band authentication using file operations by trusted and untrusted mechanisms | |
US9143510B2 (en) | Secure identification of intranet network | |
US11509465B2 (en) | Computing device and related methods providing virtual session access using group connection leases and user interface (UI) caches | |
US20050097322A1 (en) | Distributed authentication framework stack | |
CN118055157A (zh) | 服务调用方法、装置、设备和存储介质 | |
CN114257406A (zh) | 基于标识算法的设备通信方法、装置和计算机设备 | |
US12034845B2 (en) | Smart card and associated methods for initiating virtual sessions at kiosk device | |
CN117061140A (zh) | 一种渗透防御方法和相关装置 | |
CN115130116A (zh) | 业务资源访问方法、装置、设备、可读存储介质及系统 | |
CN117278562A (zh) | 负载均衡方法、装置、系统、电子设备及存储介质 | |
CN116569538A (zh) | 经由中央网络网格的服务到服务通信和认证 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |