CN102799645B - 安全搜索装置和安全搜索方法 - Google Patents
安全搜索装置和安全搜索方法 Download PDFInfo
- Publication number
- CN102799645B CN102799645B CN201210222690.6A CN201210222690A CN102799645B CN 102799645 B CN102799645 B CN 102799645B CN 201210222690 A CN201210222690 A CN 201210222690A CN 102799645 B CN102799645 B CN 102799645B
- Authority
- CN
- China
- Prior art keywords
- search
- safe
- search results
- security
- security attribute
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种安全搜索装置,包括:为搜索数据源设置安全属性,并设置所述安全属性的字段值的装置;响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的装置。本发明还提供了一种安全搜索方法。通过本发明的技术方案,能够解决企业内部搜索和安全权限控制问题,满足企业内部安全搜索的需要。
Description
技术领域
本发明涉及数据检索技术领域,具体而言,涉及一种安全搜索装置和一种安全搜索方法。
背景技术
在互联网应用方面,WEB应用搜索已经取得了巨大的商业成功,搜索技术也获得了突破性的发展,获得了良好的用户体验,当前市场上已经拥有成熟的搜索技术和产品。
在企业应用方面,由于企业信息系统的建立,产生了大量的业务信息,其中包括系统基础数据、业务交易信息、财务信息、采购销售信息、客户信息、服务记录……等等。从这些信息资源中找到用户所需要的信息是一个企业IT部门面临的一个巨大挑战。为了解决数据查找困难问题,企业也需要自己内部Google,要求能够对企业信息进行快速搜索和过滤,类似于web搜索功能的企业内部搜索,但由于企业所处行业,组织架构以及信息化程度差异等原因,导致了企业对于自身企业信息安全管理机制和权限控制也存在较大差异,导致目前市场上缺少成熟的解决方案和产品。
因此,需要一种数据检索技术,能够解决企业内部搜索和安全权限控制问题,满足企业内部安全搜索的需要。
发明内容
针对上述问题,本发明提供了一种数据检索技术,能够解决企业内部搜索和安全权限控制问题,满足企业内部安全搜索的需要。
根据本发明的一个方面,提出一种安全搜索装置,包括:为搜索数据源设置安全属性,并设置所述安全属性的字段值的装置;响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的装置。
在该技术方案中,通过对搜索数据源设置安全属性,不同权限的企业用户只能搜索到该用户权限范围内的数据,确保了企业信息的安全。企业用户的权限可以沿用企业系统中既存的用户权限设置。
优选地,还包括:过滤所述第一搜索结果中包含特定字段的数据,得到第二搜索结果的装置。
在该技术方案中,可以对搜索结果进行二次处理,提供了对搜索结果数据进行进一步过滤和加工的机会。例如,企业可能不希望某些字段值出现在搜索结果中,即可通过该方案将包含这些字段值的数据过滤掉。
优选地,所述用户权限包括SQL安全定义片段;则所述响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的装置包括:获取所述SQL安全定义片段的装置;将所述SQL安全定义片段和所述安全属性的字段值生成搜索过滤语句的装置;根据所述搜索过滤语句从所述搜索数据源中获取第一搜索结果的装置。
多集团、多公司、多组织的企业由于搜索安全控制繁琐、权限变更困难,因此采用SQL形式的组合权限控制。该技术方案通过将安全属性SQL组合片段转换成搜索过滤语句,实现对搜索安全的语句级别控制。
优选地,所述搜索数据源包括:企业数据库、网页、文件系统、单据。
在该技术方案中,支持对多种类型的数据进行安全搜索。
优选地,还包括:将所述第一搜索结果或所述二搜索结果提供给用户的装置。
在该技术方案中,如果启用了对搜索结果的二次处理,将处理后的搜索结果提供给用户;如果没有启用对搜索结果的二次处理,则直接将搜索结果提供给用户。
根据本发明的另一方面,提出一种安全搜索方法,包括:为搜索数据源设置安全属性,并设置所述安全属性的字段值;响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果。
在该技术方案中,通过对搜索数据源设置安全属性,不同权限的企业用户只能搜索到该用户权限范围内的数据,确保了企业信息的安全。企业用户的权限可以沿用企业系统中既存的用户权限设置。
优选地,还包括:过滤所述第一搜索结果中包含特定字段的数据,得到第二搜索结果。
在该技术方案中,可以对搜索结果进行二次处理,提供了对搜索结果数据进行进一步过滤和加工的机会。例如,企业可能不希望某些字段值出现在搜索结果中,即可通过该方案将包含这些字段值的数据过滤掉。
优选地,所述用户权限包括SQL安全定义片段;则所述响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的步骤包括:获取所述SQL安全定义片段;将所述SQL安全定义片段和所述安全属性的字段值生成搜索过滤语句;根据所述搜索过滤语句从所述搜索数据源中获取第一搜索结果。
多集团、多公司、多组织的企业由于搜索安全控制繁琐、权限变更困难,因此采用SQL形式的组合权限控制。该技术方案通过将安全属性SQL组合片段转换成搜索过滤语句,实现对搜索安全的语句级别控制。
优选地,所述搜索数据源包括:企业数据库、网页、文件系统、单据。
在该技术方案中,支持对多种类型的数据进行安全搜索。
优选地,还包括:将所述第一搜索结果或所述二搜索结果提供给用户。
在该技术方案中,如果启用了对搜索结果的二次处理,将处理后的搜索结果提供给用户;如果没有启用对搜索结果的二次处理,则直接将搜索结果提供给用户。
通过上述技术方案,可以解决企业内部搜索和安全权限控制问题,满足企业内部安全搜索的需要。
附图说明
图1示出了根据本发明的实施例的安全搜索装置的框图;
图2示出了根据本发明的实施例的安全搜索方法的流程图;
图3示出了根据本发明的另一实施例的安全搜索系统框架的原理示意图;
图4示出了根据本发明的又一实施例的安全搜索方法的流程图;
图5示出了根据本发明的又一实施例的安全搜索方法的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围不受下面公开的具体实施例的限制。
下面结合附图和实施例对本发明做进一步说明。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
图1示出了根据本发明的实施例的安全搜索装置的框图。
如图1所示,根据本发明的实施例的安全搜索装置100包括:安全属性设置单元102,为搜索数据源设置安全属性,并设置安全属性的字段值;搜索单元104,响应用户的搜索操作,从安全属性的字段值在用户的权限范围之内的搜索数据源中获取第一搜索结果。
在该技术方案中,通过对搜索数据源设置安全属性,不同权限的企业用户只能搜索到该用户权限范围内的数据,确保了企业信息的安全。企业用户的权限可以沿用企业系统中既存的用户权限设置。
优选地,还包括:搜索结果过滤单元106,过滤第一搜索结果中包含特定字段的数据,得到第二搜索结果。
在该技术方案中,可以对搜索结果进行二次处理,提供了对搜索结果数据进行进一步过滤和加工的机会。例如,企业可能不希望某些字段值出现在搜索结果中,即可通过该方案将包含这些字段值的数据过滤掉。
优选地,用户权限包括SQL安全定义片段;则搜索单元104还包括:获取子单元1042,获取SQL安全定义片段;转换子单元1044,将SQL安全定义片段和安全属性的字段值生成搜索过滤语句;搜索单元104根据搜索过滤语句从搜索数据源中获取第一搜索结果。
多集团、多公司、多组织的企业由于搜索安全控制繁琐、权限变更困难,因此采用SQL形式的组合权限控制。该技术方案通过将安全属性SQL组合片段转换成搜索过滤语句,实现对搜索安全的语句级别控制。
优选地,搜索数据源包括:企业数据库、网页、文件系统、单据。
在该技术方案中,支持对多种类型的数据进行安全搜索。
优选地,还包括:搜索结果处理单元108,将第一搜索结果或二搜索结果提供给用户。
在该技术方案中,如果启用了对搜索结果的二次处理,将处理后的搜索结果提供给用户;如果没有启用对搜索结果的二次处理,则直接将搜索结果提供给用户。
图2示出了根据本发明的实施例的安全搜索方法的流程图。
如图2所示,根据本发明的实施例的安全搜索方法包括:步骤202,为搜索数据源设置安全属性,并设置安全属性的字段值;步骤204响应用户的搜索操作,从安全属性的字段值在用户的权限范围之内的搜索数据源中获取第一搜索结果。
在该技术方案中,通过对搜索数据源设置安全属性,不同权限的企业用户只能搜索到该用户权限范围内的数据,确保了企业信息的安全。企业用户的权限可以沿用企业系统中既存的用户权限设置。
优选地,还包括:过滤第一搜索结果中包含特定字段的数据,得到第二搜索结果。
在该技术方案中,可以对搜索结果进行二次处理,提供了对搜索结果数据进行进一步过滤和加工的机会。例如,企业可能不希望某些字段值出现在搜索结果中,即可通过该方案将包含这些字段值的数据过滤掉。
优选地,用户权限包括SQL安全定义片段;则步骤204还包括:获取SQL安全定义片段;将SQL安全定义片段和安全属性的字段值生成搜索过滤语句;根据搜索过滤语句从搜索数据源中获取第一搜索结果。
多集团、多公司、多组织的企业由于搜索安全控制繁琐、权限变更困难,因此采用SQL形式的组合权限控制。该技术方案通过将安全属性SQL组合片段转换成搜索过滤语句,实现对搜索安全的语句级别控制。
优选地,搜索数据源包括:企业数据库、网页、文件系统、单据。
在该技术方案中,支持对多种类型的数据进行安全搜索。
优选地,还包括:将第一搜索结果或二搜索结果提供给用户。
在该技术方案中,如果启用了对搜索结果的二次处理,将处理后的搜索结果提供给用户;如果没有启用对搜索结果的二次处理,则直接将搜索结果提供给用户。
参见图3,是根据本发明的另一实施例的安全搜索系统框架的原理示意图。
按照实际功能进行划分,安全搜索框架核心功能主要由搜索元数据信息模型302、安全属性模型304、安全插件管理器306、安全引擎308、搜索SQL翻译转换引擎310、查询引擎组成312。
搜索元数据模型302:对不同的搜索源进行搜索建模,根据需要搜索的信息,定义成类似于数据库表列的搜索内容模型。定义搜索字段名称、字段类型、索引分词策略、是否存储、是否索引等索引信息。搜索字段作为权限控制字段,参与SQL安全搜索。
安全属性模型304:主要负责对搜索数据源搜索内容的安全属性定义,若需要进行安全控制,则至少需要定义一个安全属性。安全属性和搜索属性相对应,安全属性是搜索属性的子集。对于安全属性,不进行搜索分词、采用整体索引、整体搜索策略。
安全插件管理器306:通过插件定义模块和结果过滤插件定义,安全插件控制管理器负责安全插件的加载、实例化和初始化。
安全引擎308:根据用户和搜索源信息、以及搜索安全策略调用安全插件和SQL翻译转换引擎,获取安全搜索权限控制片段。
搜索SQL翻译转换引擎310:通过词法分析和语法分析,将搜索SQL语句和搜索语言之间的语言翻译转换功能,转为为搜索引擎可识别的搜索查询过滤语言。
查询引擎312:通过搜索元数据分词策略,完成对搜索内容的分词、对索引文件进行搜索,以及对搜索结果的分组、渲染、将结果返回给安全引擎进行处理。
本系统可提供两种方式控制企业搜索安全,一种是基于安全属性控制的搜索权限控制,另一种是基搜索SQL语句的组合属性权限控制。第一种主要解决企业简单权限控制方案,满足企业简单安全需求,第二种解决复杂企业的权限控制方案,满足复杂企业安全控制应用要求。
在搜索数据源上定义安全控制插件和结果过滤插件,简单控制方式需要在搜索数据源上定义搜索安全属性,一个数据源至少要定义一个安全属性,未配置安全属性的数据源系统默认不进行搜索安全控制。
用户搜索时,系统根据用户搜索的搜索源,获取安全插件,调用安全控制服务获取当前用户的安全属性,搜索引擎根据当前用户的安全属性字段值进行本次用户搜索查询,获取查询结果。对于已经通过安全检查的数据,企业有时需要做搜索字段级别的安全控制,某些字段值可能不希望出现在搜索结果中,通过搜索结果过滤插件可以对搜索结果进行二次包装处理,并且可以对结果数据进行进一步的筛选和加工,实现具有相同权限的用户可以搜索查询不同的结果视图。具体流程参见图4所示。
步骤402,用户进行搜索操作;
步骤404,获取查询数据源分组;
步骤406,判断是否启用权限控制;
步骤408,在步骤406的判断结果为是时,读取权限控制属性;
步骤410,通过安全插件获取用户权限阈值;
步骤412,获取查询结果数据;
步骤414,判断是否启用二次权限过滤;
步骤416,在步骤414的判断结果为是时,结果过滤插件二次过滤搜索数据。
基于安全属性控制方式可以解决企业基本的搜索权限控制,对于多集团、多公司、多组织企业搜索安全控制会存在控制繁琐、权限变更困难问题,因此提出SQL形式的组合属性权限控制。
多数企业数据的权限控制通过抽象归结后都可以变成一个SQL片段,用于控制当前用户查询权限,基于这一结论,通过对安全属性控制进行改进,实现组合权限控制。
组合权限控制的本质是对搜索索引的结构化查询过滤,用户查询时,系统根据查询的数据源获取搜索安全插件,通过调用安全服务获取权限控制安全属性SQL组合片段。然后通过搜索引擎的翻译引擎将SQL片段翻译成可以过滤索引的搜搜过滤语句,实现对搜索安全的语句级别控制。详细搜索流程图如图5所示。
步骤502,用户进行搜索操作;
步骤504,获取查询数据源分组;
步骤506,判断是否启用复合权限控制;
步骤508,在步骤506的判断结果为是时,通过安全插件获取SQL安全定义片段;
步骤510,将SQL语句转换成搜索查询过滤语句;
步骤512,获取查询结果数据;
步骤514,判断是否启用二次权限过滤;
步骤516,在步骤514判断结果为是时,结果过滤插件二次过滤搜索数据。
根据本发明的该实施例具有以下特点:
1.通用性强,根据企业实际需要进行多个层次的权限控制,满足企业对权限控制的个性化需求,并且实现了对不同搜索数据源的搜索安全控制。
2.配置调整灵活,对于搜索权限的变化和调整,可以通过配置安全属性和调整安全插件控制信息,便可以完成,不需要调整程序,方便企业灵活应用,帮助企业构建符合自身特性的搜索引擎安全策略。
3.安全性高,通过安全控制过滤和搜索结果过滤插件的双重权限控制方案,使企业在数据搜索安全性方面得到了很好的保证。
综上,根据本发明可以解决企业内部搜索和安全权限控制问题,满足企业内部安全搜索的需要。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种安全搜索装置,其特征在于,包括:
为搜索数据源设置安全属性,并设置所述安全属性的字段值的装置;
响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的装置;
所述用户权限包括SQL安全定义片段;
所述响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的装置包括:
获取所述SQL安全定义片段的装置;
将所述SQL安全定义片段和所述安全属性的字段值生成搜索过滤语句的装置;
根据所述搜索过滤语句从所述搜索数据源中获取第一搜索结果的装置。
2.根据权利要求1所述的安全搜索装置,其特征在于,还包括:
过滤所述第一搜索结果中包含特定字段的数据,得到第二搜索结果的装置。
3.根据权利要求1所述的安全搜索装置,其特征在于,所述搜索数据源包括:企业数据库、网页、文件系统、单据。
4.根据权利要求2所述的安全搜索装置,其特征在于,还包括:
将所述第一搜索结果或所述第二搜索结果提供给用户的装置。
5.一种安全搜索方法,其特征在于,包括:
为搜索数据源设置安全属性,并设置所述安全属性的字段值;
响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果;
所述用户权限包括SQL安全定义片段;
所述响应用户的搜索操作,从所述安全属性的字段值在所述用户的权限范围之内的搜索数据源中获取第一搜索结果的步骤包括:
获取所述SQL安全定义片段;
将所述SQL安全定义片段和所述安全属性的字段值生成搜索过滤语句;
根据所述搜索过滤语句从所述搜索数据源中获取第一搜索结果。
6.根据权利要求5所述的安全搜索方法,其特征在于,还包括:
过滤所述第一搜索结果中包含特定字段的数据,得到第二搜索结果。
7.根据权利要求5所述的安全搜索方法,其特征在于,所述搜索数据源包括:企业数据库、网页、文件系统、单据。
8.根据权利要求6所述的安全搜索方法,其特征在于,还包括:
将所述第一搜索结果或所述第二搜索结果提供给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210222690.6A CN102799645B (zh) | 2012-06-28 | 2012-06-28 | 安全搜索装置和安全搜索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210222690.6A CN102799645B (zh) | 2012-06-28 | 2012-06-28 | 安全搜索装置和安全搜索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102799645A CN102799645A (zh) | 2012-11-28 |
CN102799645B true CN102799645B (zh) | 2016-05-04 |
Family
ID=47198755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210222690.6A Active CN102799645B (zh) | 2012-06-28 | 2012-06-28 | 安全搜索装置和安全搜索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102799645B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104796432A (zh) * | 2015-05-07 | 2015-07-22 | 浪潮电子信息产业股份有限公司 | 一种数据保护方法及安全堡垒机 |
CN107229644A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 搜索方法及装置 |
CN106453425A (zh) * | 2016-12-09 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种多用户使用主机插件的权限管理方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320373A (zh) * | 2008-06-13 | 2008-12-10 | 华中科技大学 | 网站支撑数据库安全搜索引擎系统 |
CN101576920A (zh) * | 2009-06-19 | 2009-11-11 | 用友软件股份有限公司 | 搜索引擎系统 |
CN101944127A (zh) * | 2010-09-26 | 2011-01-12 | 用友软件股份有限公司 | 数据权限控制方法和装置 |
-
2012
- 2012-06-28 CN CN201210222690.6A patent/CN102799645B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320373A (zh) * | 2008-06-13 | 2008-12-10 | 华中科技大学 | 网站支撑数据库安全搜索引擎系统 |
CN101576920A (zh) * | 2009-06-19 | 2009-11-11 | 用友软件股份有限公司 | 搜索引擎系统 |
CN101944127A (zh) * | 2010-09-26 | 2011-01-12 | 用友软件股份有限公司 | 数据权限控制方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102799645A (zh) | 2012-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299102B (zh) | 一种基于Elastcisearch的HBase二级索引系统及方法 | |
CN110908997B (zh) | 数据血缘构建方法、装置、服务器及可读存储介质 | |
CN106547796B (zh) | 数据库的执行方法及装置 | |
US7464084B2 (en) | Method for performing an inexact query transformation in a heterogeneous environment | |
US11893046B2 (en) | Method and apparatus for implementing a set of integrated data systems | |
US8782096B2 (en) | Virtual repository management | |
CN109446279A (zh) | 基于neo4j大数据血缘关系管理方法、系统、设备及存储介质 | |
US7424470B2 (en) | Local data repository generation | |
US20120166620A1 (en) | System and method for integrated real time reporting and analytics across networked applications | |
CN111382226A (zh) | 一种数据库查询检索方法、装置和电子设备 | |
CN102129539A (zh) | 基于访问控制列表的数据资源权限管理方法 | |
CN103678520A (zh) | 一种基于云计算的多维区间查询方法及其系统 | |
WO2012125166A1 (en) | Data source analytics | |
WO2016018201A1 (en) | Searching relational and graph databases | |
Campinas et al. | The Sindice-2011 dataset for entity-oriented search in the web of data | |
CN103377336A (zh) | 一种计算机系统用户权限的控制方法和系统 | |
CN109902114A (zh) | Es集群数据复用方法、系统、计算机装置及存储介质 | |
US11100152B2 (en) | Data portal | |
CN108319608A (zh) | 访问日志存储查询的方法、装置及系统 | |
CN102708203A (zh) | 一种基于xml元数据的数据库动态管理方法 | |
CN106815353A (zh) | 一种数据查询的方法及设备 | |
CN102214235A (zh) | 一种基于实时权限控制的企业管理软件搜索引擎集成方法 | |
KR101224800B1 (ko) | 정보를 찾기 위해 데이터베이스를 크롤링하는 시스템 및 방법 | |
CA2461871A1 (en) | An efficient index structure to access hierarchical data in a relational database system | |
CN106055546A (zh) | 基于Lucene的光盘库全文检索系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100094 Haidian District North Road, Beijing, No. 68 Applicant after: Yonyou Network Technology Co., Ltd. Address before: 100094 Beijing city Haidian District North Road No. 68, UFIDA Software Park Applicant before: UFIDA Software Co., Ltd. |
|
COR | Change of bibliographic data | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |