一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种用于在弱客户端进行快速授权访问的方法与流程

2022-02-22 09:48:11 来源:中国专利 TAG:


1.本发明涉及一种授权客户端访问外部url的方法。


背景技术:

2.目前在网络安全的环境中,客户端对于外部网络的访问一般是通过服务器端或者是云端授权完成。授权常用的模式是通过dns系统。如图1所示,客户端需要访问外部的一个url,客户端首先通过dns系统向服务端查询相关的dns信息,如果这个网站是被允许的,dns将返回该url的ip地址信息,但是如果这个url是不被允许的,dns将会返回一个本地地址或者是空地址,这样客户端就不能访问外部的url。
3.如图1所示的客户端-服务端的处理模式,能够对请求进行集中管理,通过在服务器端增加策略或者是其他处理方式,可以实现对客户端授权的灵活处理。另外由于授权处理需要规则库的支持,在服务器端进行授权,也在一定程度上保护了规则库的知识产权,防止盗版等。但前述处理模型也存在以下问题:
4.第一、在该方式下,客户端所有的请求都会被送往服务端,当客户端的数量急剧增加的时候,对服务端的压力也会等比增加。一般来说解决这类问题的做法是通过增加服务端的计算资源,网络资源等来处理业务需求,但是这无疑也会增加相应的成本。
5.第二、客户端需要将所有的请求发往服务端进行授权认证,当客户端与服务端的网络延时较大,或者是服务端的压力较大时,会造成客户端的用户体验变差。


技术实现要素:

6.本发明要解决的技术问题是:客户端所有的请求都会被送往服务端,需要服务端具有较强的计算能力,并且也会影响客户端的用户体验。
7.为了解决上述技术问题,本发明的技术方案是提供了一种用于在弱客户端进行快速授权访问的方法,其特征在于,设置分布到各个客户端的本地加密规则库,根据不同的安全等级对访问请求进行不同处理:
8.在安全等级较低的情况下:客户端先使用本地加密规则库对访问请求进行授权验证,仅将被禁止的访问请求送至服务端,由服务端使用远端规则库对客户端上传的访问请求进行授权验证;
9.在安全等级较高的情况下:客户端先使用本地加密规则库对访问请求进行一次授权验证,仅将被允许的访问请求送至服务端,由服务端使用远端规则库对客户端上传的访问请求进行二次授权验证。
10.优选地,使用概率性滤波器对所述本地加密规则库进行压。
11.优选地,在客户端,同时使用黑名单以及白名单构建两个所述本地加密规则库;在服务端,使用全名单构建所述远端规则库。
12.优选地,在安全等级较低的情况下,根据客户的设定,使用本地加密规则库对访问请求进行授权验证时,基于白名单进行授权验证,或者基于黑名单进行授权验证。
13.优选地,在安全等级较高的情况下,对于本地加密规则库或者远端规则库未收录的规则,使用人工智能规则分析模块对于访问请求进行人工智能分析,根据分析的结果来决定访问请求是否被授权。
14.优选地,在安全等级较高的情况下,若访问请求不在黑名单、白名单以及全名单中,则使用人工智能规则分析模块对于访问请求进行人工智能分析,根据分析的结果来决定访问请求是否被授权,依据访问请求是否被授权的结果更新黑名单、白名单或全名单。
15.针对传统的云端授权或者是服务端授权的缺陷,本发明提出的改进方案具有如下优势:
16.(1)计算资源被移到客户端之后,能够极大地减少云端或者是服务端的负载,从而可以降低云端的运营成本;
17.(2)授权在本地完成,可以减小客户端的授权时间,减少安全特性对于业务的影响,提升客户的体验;
18.(3)当授权在本地完成之后,可以做到端到端的安全,去除中间设施对于安全的影响;例如在dns授权体系中,在应用本发明之后,dns的授权在本地完成,可以有效地避免中间dns缓存对于安全造成的漏洞。
附图说明
19.图1为客户端访问外部url的常规流程;
20.图2为本发明的原理图;
21.图3为宽松模式处理流程图;
22.图4为严格模式处理流程图。
具体实施方式
23.下面结合具体实施例进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本技术所附权利要求书所限定的范围。
24.如图2所示,本发明提出的方式在客户端增加本地化的处理,通过增加本地加密规则库,来消减服务端压力。增加本地加密规则库之后,根据不同的安全等级:
25.在低安全等级的情况(宽松模式)下,访问请求可以在客户端进行本地处理,对于本地加密规则库不能处理的部分,仍需要上送服务端进行处理,但是上送服务端的部分,数量将大大减少,从而降低服务端的压力,提升客户端的体验。
26.在高安全等级的情况(严格模式)下,访问请求先在本地进行一次验证,对于本地加密规则库允许访问的访问请求,再次上送服务端进行二次验证,对于被本地加密规则库拒绝访问的访问请求,则不需要上送服务端。通过这种方式,可以二次对放行的访问请求进行二次确认,提升安全等级,又可以有效地减少恶意应用对于服务端的攻击,降低服务端在极限情况下的压力。
27.要实现上述方式所设想的效果,需要做到如下几个方面:
28.第一、分布到客户端的本地加密规则库需要做到比较小,方便实时更新。一般来
说,加密规则库都通过数据库进行存储,当需要授权时,在数据库进行查询,根据查询的结果,决定授权还是拒绝。规则库一般都很大,一般需要容纳上千万条url数据,以及规则数据等,如何能够将数量如此庞大的规则数据放到客户端,是本发明能否实行的关键。
29.第二、客户端需要能够快速地在本地进行授权处理。授权处理在本地运行,计算资源跟服务端相比比较差,如何能够快速在本地处理,不影响客户的体验,不过量增加客户端计算负担,也是本发明能否实行的关键。
30.第三、安全等级化处理流程。网络安全责任重大,需要做到安全、严格。如何能够设计一套可靠的处理流程,根据不同的安全等级,调度本地处理与服务端处理的能力,也是本发明能否成功的关键。
31.为了满足上述需求,本发明提出了如下解决方法:
32.为了能够将庞大的规则库压缩到设备端能够承载的大小,保护规则库的ip,提升规则库的访问速度,本发明引入了概率性滤波器(probabilistic data structures),这种类型的滤波器以极小的存储占用空间以及极高的查询速度著称。在客户端使用概率性滤波器,在服务端仍然使用传统的规则数据库的方式进行规则访问授权。
33.本实施例中,概率性滤波器具体采用了xor滤波器技术(https://arxiv.org/abs/1912.08258),xor滤波器技术能够将千万规则库压缩到几兆的空间内。在实际应用过程中也适合其他类型的概率性滤波器。xor滤波器的构建速度比传统的滤波器,例如bloom滤波器,要慢,但是其查询速度比传统的bloom滤波器要快很多。在本发明提出的应用场景中,客户端使用xor滤波器的查询功能而不是使用构建功能,故而xor滤波器比较弱的构建功能对本发明无影响。
34.在网络安全中,一般分为三种类型的规则数据:白名单:在该名单中的访问请求都是被允许的;黑名单:在该名单中的访问请求都是被禁止的;全名单:收录的所有的规则的数据。一般的场景下,对于一个确定性的环境中,只会提供一种名单,例如提供白名单,对于不在白名单的访问,都默认为拒绝访问。而概率性滤波器在使用的过程中会引入伪阳性(false positive)的特征,即当结果事实上不在测试集中,但是给出的结果是却在测试集中。对于在测试集中的数据,概率性滤波器确保能够给出阳性的结果。
35.由于存在伪阳性(false positive),对于不在规则库中的数据,也可能被认定为真,从而造成测试的不准确性。本发明同时使用白名单、黑名单以及由黑白名单二者共同组成的全名单,使用这三个名单构成三个规则库。在实际使用过程中,如果不使用黑名单,则黑名单为空,白名单亦然。根据各个名单的特点,结合伪阳性,可以得到一张确定性的真值表,如下表所示。
36.[0037][0038]
在宽松模式中,可以完全信赖规则库,因为规则库的伪阳性的概率很小,例如在一个百万级别的规则库中,通过叠加处理,其伪阳性的概率只有百万分之6。但是对于一个严格的安全等级环境,需要做到100%的安全,真值表反映了在概率性滤波技术条件下的准确值,这个表格为本发明后面设计严格模式下的流程提供参考。
[0039]
本发明提出的使用概率性滤波器技术的客户端授权技术能够适应不同的安全等级。在不同的安全等级下,本发明提出了不同的处理流程来协调服务器端处理与客户端处理流程。本发明将根据宽松模式与严格模式两种安全等级进行描述说明。
[0040]
宽松模式,即宽松安全等级是指用户在体验方面的需求较高,当存在不能确定的访问时,允许访问优先,以此带来比较好的用户体验,同时又具备一定的安全性。当处理宽松安全等级时,本发明提出的流程将忽略规则库的伪阳性可能带来微小的安全性问题,例如,可能会导致极其微小不按照安全设计执行请求的情形。
[0041]
如图3所示,宽松模式的流程如下:
[0042]
在宽松模式下,客户端根据客户的设定对访问鉴权类别进行判断,判断是基于白名单进行授权认证还是基于黑名单进行授权认证。
[0043]
当使用白名单进行授权认证时,客户端基于白名单进行访问请求的授权验证,若不在白名单上,则该访问请求将被阻止,若在白名单中,则该访问请求将被允许。
[0044]
对于被阻止的访问请求,将其送给服务器端,服务器端基于全名单对访问请求进行授权验证。如果服务器端允许其访问,则允许该访问请求,否则阻止该访问请求。
[0045]
当使用黑名单进行授权认证时,客户端基于黑名单进行访问请求的授权验证,若不在黑名单上,则该访问请求将被允许,若在白名单中,则该访问请求将被阻止。
[0046]
对于被阻止的访问请求,将其送给服务器端,服务器端基于全名单对访问请求进行授权验证。如果服务器端允许其访问,则允许该访问请求,否则阻止该访问请求。
[0047]
从上面的流程可知:为了使得客户获得最好的体验,本发明中只有被阻止的访问请求才需要送到服务端进行确认。在宽松模式下,对于被允许的访问请求存在伪阳性错误,这也是称之为宽松模式的原因。
[0048]
严格模式,即严格安全等级是指用户在安全方面的需求较高,当存在不能确定的访问时,阻止访问优先,以此带来比较好的安全效果。当处理严格安全等级时,本发明提出的流程将充分考虑规则库的伪阳性的问题,所有的访问都会送往服务端进行授权认证,在该种情形下,任何微小的安全漏洞都不被允许。
[0049]
如图4所示,严格模式的流程如下:
[0050]
客户端根据客户的设定对访问鉴权类别进行判断,若基于白名单进行授权认证,则进入下面的步骤1,若基于黑名单进行授权认证,则进入下面的步骤2,若即不基于白名
单,也不基于黑名单进行授权认证,则基于可扩展黑名单进行授权认证,进入下面的步骤3:
[0051]
步骤1、客户端基于白名单进行访问请求的一次授权验证,若不在白名单上,则直接阻止该访问请求,若在白名单中,则将该访问请求送至服务端利用全名单进行二次授权验证,若服务端拒绝,则阻止该访问请求。
[0052]
步骤2、客户端基于黑名单进行访问请求的一次授权验证,若在黑名单上,则直接阻止该访问请求,若不在黑名单中,则将该访问请求送至服务端利用全名单进行二次授权验证,若服务端拒绝,则阻止该访问请求。
[0053]
步骤3、基于可扩展黑名单进行授权认证,具体包括以下步骤:
[0054]
步骤301、客户端基于本地的全名单进行授权验证,若在本地的全名单中,则进入步骤303,否则进入步骤302;
[0055]
步骤302、使用人工智能规则分析模块对于访问请求进行人工智能分析,根据分析的结果来决定访问请求是否被授权,依据访问请求是否被授权的结果更新服务端的全名单;
[0056]
使用的人工智能的方式包括,但是不限于以下的技术:神经网络语义分析技术、智能中文分词技术、海量关键词匹配技术、图片语义分析技术等;
[0057]
步骤303、将访问请求发送至服务端,由服务端基于远端的全名单进行授权验证,若在远端的全名单中,则进入步骤304,否则进入步骤302;
[0058]
步骤304、客户端利用本地加密规则库对当前访问请求进行匹配,先判断是否在黑名单,若不在黑名单中,则允许当前访问请求,否在黑名单中,则进入步骤305;
[0059]
步骤305、判断是否在白名单中,若不在白名单中,则直接阻止当前访问请求,若在白名单中,则进入步骤306;
[0060]
步骤306、将当前访问请求送至服务端,由服务端基于全名单对访问请求进行授权验证。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献