CN109063077B - 一种基于弹性搜索的数据访问方法及装置 - Google Patents

一种基于弹性搜索的数据访问方法及装置 Download PDF

Info

Publication number
CN109063077B
CN109063077B CN201810822053.XA CN201810822053A CN109063077B CN 109063077 B CN109063077 B CN 109063077B CN 201810822053 A CN201810822053 A CN 201810822053A CN 109063077 B CN109063077 B CN 109063077B
Authority
CN
China
Prior art keywords
user
server
login authentication
role
servers
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
Application number
CN201810822053.XA
Other languages
English (en)
Other versions
CN109063077A (zh
Inventor
耿增超
户蕾蕾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN201810822053.XA priority Critical patent/CN109063077B/zh
Publication of CN109063077A publication Critical patent/CN109063077A/zh
Application granted granted Critical
Publication of CN109063077B publication Critical patent/CN109063077B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0645Rental transactions; Leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供了一种基于弹性搜索的数据访问方法和装置,应用于弹性搜索ES服务器集群中的ES服务器,该方法包括:所述ES服务器集群中的任一ES服务器接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;依据所述登录认证信息对所述用户进行登录认证;在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。可以有效提升数据访问的安全性。

Description

一种基于弹性搜索的数据访问方法及装置
技术领域
本申请涉及数据安全访问技术领域,具体而言,涉及一种基于弹性搜索(ES,Elasticsearch)的数据访问方法及装置。
背景技术
大数据(big data)指的是所涉及的资料量以及数据类别量巨大的数据集,可来源于多种数据源,包括半结构化数据源和非结构化数据源。其中,数据集的资料量一般在10TB规模左右,实际应用中,很多企业还可以将多个数据集放在一起,从而形成PB级的数据量。数据集中的数据种类和格式非常丰富,数据类别量非常庞大。
通过共享大数据,可以充分地利用已有用户采集到的大数据资源,减少其他用户大数据采集等重复劳动及成本,并有利于提升大数据的利用效率。但在大数据共享中,需要考虑数据的安全性以及大量用户访问数据的性能,例如,访问速度。
ES是一基于全文搜索引擎(Lucene)的分布式的访问、搜索和分析引擎,可以用于数据访问、全文检索、结构化检索和分析,能够提供较高的数据访问性能、搜索性能和查询效率。因而,在大数据中,内置ES的ES服务器被广泛应用到上亿甚至上百亿条的数据访问中。对于数据的安全性,ES服务器通过设置不同的租户,每一租户对应设置有一索引,该索引对应该租户的数据,不同租户之间的数据相互隔离。不同的用户可以属于同一个租户,只有同一租户上的用户可以访问该租户的索引对应的数据。用户在进行数据访问时,利用ES服务器的IP地址和端口号登录ES服务器,再通过在ES服务器的数据访问界面中输入索引,从而可以访问该索引对应的数据。但该方法,用户只需要获取ES服务器的IP地址和端口号以及相关索引,便可访问该相关索引对应的数据,使得数据访问的安全性较低。
发明内容
有鉴于此,本申请的目的在于提供一种基于弹性搜索的数据访问方法和装置,用于解决现有技术中数据访问安全性较低的问题。
第一方面,本申请实施例提供了一种基于弹性搜索的数据访问方法,应用于弹性搜索ES服务器集群中的ES服务器,该方法包括:
所述ES服务器集群中的任一ES服务器接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;
依据所述登录认证信息对所述用户进行登录认证;
在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。
可选地,所述ES服务器集群包括一个或多个ES服务器,一所述ES服务器集群对应一租户,所述租户包括一个或多个用户。
可选地,所述ES服务器集群中的每一ES服务器的ES服务配置文件中,集群名字段为所述ES服务器集群,主机字段为所述ES服务器集群中的所有ES服务器的标识。
可选地,所述ES服务器集群中的每一ES服务器安装有安全插件;
所述安全插件的配置文件的用户信息子文件中设置有用户的登录认证信息;
所述安全插件的配置文件的角色配置子文件中设置有各角色与索引标识的关联关系;
所述安全插件的配置文件的角色子文件中设置有用户标识与角色的关联关系。
可选地,所述确定所述用户映射的索引标识,包括:
根据所述登录认证信息中的用户标识查询所述用户标识与角色的关联关系,确定所述用户的角色;
根据所述用户的角色查询所述各角色与索引标识的关联关系,确定所述用户映射的索引标识。。
第二方面,本申请实施例提供了一种基于弹性搜索的数据访问装置,该装置包括:
登录认证信息获取模块,用于接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;
登录认证模块,用于依据所述登录认证信息对所述用户进行登录认证;
访问认证模块,用于在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。
可选地,所述ES服务器集群包括一个或多个ES服务器,一所述ES服务器集群对应一租户,所述租户包括一个或多个用户。
可选地,所述ES服务器集群中的每一ES服务器的ES服务配置文件中,集群名字段为所述ES服务器集群,主机字段为所述ES服务器集群中的所有ES服务器的标识。
可选地,所述ES服务器集群中的每一ES服务器安装有搜索卫士SG安全插件;
所述SG安全插件的SG配置文件的用户信息子文件中,设置有用户的登录认证信息;
所述SG安全插件的SG配置文件的角色配置子文件中,设置有各角色与索引标识的关联关系;
所述SG安全插件的SG配置文件的角色子文件中设置有用户标识与角色的关联关系。
可选地,所述访问认证模块具体用于:
根据所述登录认证信息中的用户标识查询所述用户标识与角色的关联关系,确定所述用户的角色;
根据所述用户的角色查询所述各角色与索引标识的关联关系,确定所述用户映射的索引标识。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的方法的步骤。
本申请实施例提供的一种基于弹性搜索的数据访问方法及装置,通过接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;依据所述登录认证信息对所述用户进行登录认证;在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。这样,利用安装在ES服务器中的SG安全插件设置用户的登录认证信息以及索引标识,从而使得ES服务器可以依据用户发送的登录认证信息以及预先设置的索引标识,控制用户对ES服务器上索引标识指向的数据的访问,能够有效提高数据访问的安全性。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的基于弹性搜索的数据访问方法流程示意图;
图2为本申请实施例提供的ES服务器集群结构示意图;
图3为本申请实施例提供的基于弹性搜索的数据访问装置结构示意图;
图4为本申请实施例提供的一种计算机设备400的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的基于弹性搜索的数据访问方法流程示意图。如图1所示,该方法应用于ES服务器集群中的ES服务器,该方法包括:
步骤101,所述ES服务器集群中的任一ES服务器接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;
本申请实施例中,作为一可选实施例,为ES服务器集群中的每一ES服务器安装安全插件,例如搜索卫士(SG,Search Guard)、x-pack等,该安全插件用于用户登录认证以及索引标识管理。这样,通过在ES服务器内安装安全插件,可以为ES服务器提供登录认证以及索引标识管理。后续,以安全插件为SG为例进行说明。
本申请实施例中,ES服务器集群包括一个或多个ES服务器,一所述ES服务器集群对应一租户,所述租户包括一个或多个用户。这样,用户可以通过任一ES服务器进行数据访问。
本申请实施例中,为了提升用户访问ES服务器的数据访问性能,ES服务器可以根据租户的实际规划,例如,租户包含的用户数量以及数据量,确定为该租户配置的ES服务器数量,并将配置的多个ES服务器组成ES服务器集群,为ES服务器集群中的每一ES服务器安装SG安全插件,从而为用户提供多个数据访问入口的数据安全访问。这样,用户可以从ES服务器集群中的任一ES服务器发起数据访问请求,可以有效减少数据访问请求响应时间,该ES服务器对用户进行登录认证通过后,用户登录该ES服务器。
本申请实施例中,数据访问请求中可以只包含登录认证信息,这样,在登录ES服务器后,ES服务器根据该用户对应的索引标识给出相应提示,用户依据给出的提示进行相应数据访问。作为另一可选实施例,数据访问请求中也可以包含登录认证信息和待访问数据标识,这样,在登录ES服务器后,ES服务器查询各索引标识指向的数据,获取待访问数据标识所在的索引标识,若确定该用户具有该索引标识权限,则跳转至该索引标识指向的数据,以使用户对该数据进行数据访问。
本申请实施例中,作为一可选实施例,登录认证信息包括:用户标识和密码。用户设置登录认证信息以及设置用户的索引标识权限具体可以通过SG安全插件提供的功能实现。
步骤102,依据所述登录认证信息对所述用户进行登录认证;
本申请实施例中,如果ES服务器对用户的登录认证通过,例如,查询到存储有登录认证信息中的用户标识,且登录认证信息中的密码与存储的该用户标识对应的密码相同,允许用户登录ES服务器。在用户登录ES服务器后,用户能够访问的具体数据还需依据该用户映射的索引标识来确定。
步骤103,在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。
本申请实施例中,ES服务器在安装SG安全插件后,可以设置各用户与索引标识的映射关系,以使用户只能访问自身映射的索引标识指向的数据。
本申请实施例中,索引标识指向的数据可以是索引标识指向的数据文件夹中的数据。
本申请实施例中,通过在ES服务器中安装开源的SG安全插件,利用SG安全插件设置用户的登录认证信息以及索引标识,从而使得ES服务器可以依据用户发送的登录认证信息以及预先设置的索引标识,控制用户对ES服务器的访问,以及,对ES服务器上索引标识指向的数据的访问。由于用户需要通过登录认证信息进行数据访问,而不同用户的登录认证信息很难被其它用户获知,因而,数据访问的安全性较高。
本申请实施例中,作为一可选实施例,所述ES服务器集群中的每一ES服务器的ES服务配置文件中,集群名字段为所述ES服务器集群,主机字段为所述ES服务器集群中的所有ES服务器的标识。具体地,构建ES服务器集群,包括:
A11,获取第一配置文件;
本申请实施例中,ES服务器依据用户输入的ES服务器集群指令,获取第一配置文件,即ES服务配置文件。第一配置文件为采用另一种标记语言(YAML,Yet Another MarkupLanguage)格式的文件,例如,第一配置文件可以为:elasticsearch.yml。
本申请实施例中,第一配置文件可以为ES服务器在未安装SG安全插件时的配置文件。
A12,配置所述第一配置文件中的集群名字段为所述ES服务器集群;
本申请实施例中,每一ES服务器对应有一第一配置文件,第一配置文件中,至少包括:集群名字段以及主机字段。其中,集群名字段用于表征该ES服务器属于哪一ES服务器集群,若为空,则表明该ES服务器为一独立ES服务器,不属于任何ES服务器集群。主机字段用于表征ES服务器集群包含有哪些ES服务器。ES服务器依据用户输入的集群名字段配置信息,将用户输入的集群名字段配置信息写入集群名字段中。
A13,配置所述第一配置文件中的主机字段为所述ES服务器集群中的所有ES服务器;
本申请实施例中,ES服务器依据用户输入的主机字段配置信息,将用户输入的主机字段配置信息写入主机字段中。通过将主机字段设置为ES服务器集群中的所有ES服务器,表征设置的所有ES服务器属于同一个ES服务器集群。
A14,将配置的第一配置文件分发至所述主机字段中设置的其他ES服务器。
本申请实施例中,在一ES服务器配置第一配置文件完成后,将完成配置的第一配置文件广播至ES服务器集群中的其他ES服务器,即将配置的第一配置文件,分发至主机字段中除自身之外的其他ES服务器,以使其他ES服务器依据接收的第一配置文件,分别更新自身存储的第一配置文件中的集群名字段和主机字段。
本申请实施例中,通过对ES服务器的第一配置文件进行修改或配置以构建ES服务器集群。
图2为本申请实施例提供的ES服务器集群结构示意图。如图2所示,所有的ES服务器构成一大数据集群,包含有成百上千个ES服务器。以为三个租户分别构建ES服务器集群为例,例如,若需要为第一租户构建一包含第一ES服务器至第五ES服务器的第一ES服务器集群,为第二租户构建一包含第六ES服务器和第七ES服务器的第二ES服务器集群,为第三租户构建一包含第八ES服务器至第十ES服务器的第三ES服务器集群。需要对每一租户中的每一个ES服务器的第一配置文件(elasticsearch.yml文件)进行修改和配置。其中,以第一ES服务器集群为例,将elasticsearch.yml文件中的集群名(cluster.name)字段设置为第一ES服务器集群,以表征该第一配置文件对应的ES服务器属于第一ES服务器集群。并在elasticsearch.yml文件中的主机(discovery.zen.ping.unicast.hosts)字段中,添加该租户中所有ES服务器的主机名(hostname),即添加第一ES服务器的主机名至第五ES服务器的主机名。这样,具有相同cluster.name的各ES服务器,组成一ES服务器集群。从而利用多个ES服务器构建租户的ES服务器集群的方式,有效分流用户的数据访问和检索流量,可以提高数据访问和检索效率。
本申请实施例中,在构建ES服务器集群后,可以设置一仅用于登录的统一用户标识和密码,以使租户内的各用户依据统一用户标识和密码登录构建的ES服务器集群中的任一ES服务器,进行用户的登录认证信息设置。在用户的登录认证信息设置完成后,为该用户赋予索引标识权限。因而,作为一可选实施例,ES服务器集群中的每一ES服务器安装的安全插件的配置文件的用户信息子文件中设置有用户的登录认证信息;该安全插件的配置文件的角色配置子文件中设置有各角色与索引标识的关联关系;以及,该安全插件的配置文件的角色子文件中设置有用户标识与角色的关联关系。具体来说,该设置的流程包括:
B11,获取第二配置文件;
本申请实施例中,第二配置文件为安全插件的配置文件。
本申请实施例中,在安全插件的配置文件中设置登录认证信息设置以及索引标识权限,登录认证信息用于用户登录ES服务器集群,索引标识权限用于限定用户访问ES服务器集群的索引标识指向的数据,以达到数据隔离以及数据的安全访问。
B12,在所述第二配置文件的用户信息子文件中,设置用户的登录认证信息;
本申请实施例中,若安全插件为SG,则用户信息子文件可以为sg_internal_users.yml子文件,在sg_internal_users.yml子文件中,添加包含用户标识以及密码的哈希(hash)值的登录认证信息。
本申请实施例中,多个用户可以登录同一ES服务器,进行相应的登录认证信息设置。
B13,在所述第二配置文件的角色配置子文件中,设置各角色与索引标识的关联关系;
本申请实施例中,若安全插件为SG,则角色配置子文件为sg_roles.yml子文件,在sg_roles.yml子文件中,添加预先设置的角色,并为每一角色设置关联的索引标识。
本申请实施例中,可以为角色配置一个或多个索引标识,多个索引标识可以位于ES服务器集群中的同一ES服务器,也可以分别位于ES服务器集群中的不同ES服务器。
B14,在所述第二配置文件的角色子文件中,设置用户标识与角色的关联关系;
本申请实施例中,若安全插件为SG,则角色子文件为sg_roles_mapping.yml子文件,在sg_roles_mapping.yml子文件中,添加用户标识与角色的关联关系,即为用户赋予索引标识。
本申请实施例中,一个用户标识对应一个角色,一个角色中,可以包含多个用户标识。为用户添加角色后,由于角色与索引标识具有关联关系,因而,能够确定该用户映射的索引标识。通过角色的设置,可以将具有相同索引标识的用户归类为一角色,从而可以有效避免需要为每一用户配置索引标识的情形出现。
B15,将配置的第二配置文件分发至所述ES服务器集群中的其他ES服务器。
本申请实施例中,在一ES服务器修改SG的配置文件完成后,将修改的SG配置文件广播至ES服务器集群中的其他ES服务器,使得ES服务器集群中的各ES服务器能够实现SG配置文件的同步,即每一ES服务器均存储有该租户所有用户的登录认证信息和索引标识权限并能同步更新。
本申请实施例中,用户利用用户标识和密码登录到ES服务器集群的一ES服务器上,该ES服务器根据该用户的索引标识,确定该用户可以访问该ES服务器集群中的哪些ES服务器或ES服务器下的哪些索引标识。如果用户没有该ES服务器集群的登录(用户标识、和/或,密码错误),则无法登录,也无法访问ES服务器集群中的数据。
本申请实施例中,依据上述设置的信息,所述确定所述用户映射的索引标识,包括:
根据所述登录认证信息中的用户标识查询所述用户标识与角色的关联关系,确定所述用户的角色;
根据所述用户的角色查询所述各角色与索引标识的关联关系,确定所述用户映射的索引标识。
本申请实施例中,作为一可选实施例,所述确定所述用户映射的索引标识,引导所述用户访问获取的索引标识指向的数据包括:
将确定的所述用户映射的索引标识在所述ES服务器的数据访问界面中展示;
接收对展示的索引标识的选取信息,跳转至选取的索引标识指向的数据。
本申请实施例中,作为一可选实施例,所述依据所述登录认证信息对所述用户进行登录认证包括:
依据所述登录认证信息中包含的用户标识,查询用户标识与密码的映射关系,确定所述用户标识映射的密码;
判断所述登录认证信息中包含的密码是否与确定的所述用户标识映射的密码相同,若相同,确定所述用户的登录认证通过。
本申请实施例中,作为另一可选实施例,在登录认证通过后,该方法还包括:
接收用户输入的搜索关键词,在所述用户登录的ES服务器对应的ES服务器集群的资源中,确定所述搜索关键词的搜索结果,向所述用户展示。
本申请实施例中,用户在登录ES服务器后,可以在该ES服务器所属的ES服务器集群的资源(例如,ES服务器集群的各索引标识指向的数据)中进行搜索,从而获取所需的搜索结果。
图3为本申请实施例提供的基于弹性搜索的数据访问装置结构示意图。如图3所示,该装置包括:
登录认证信息获取模块301,用于接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;
本申请实施例中,作为一可选实施例,登录认证信息包括:用户标识和密码。
登录认证模块302,用于依据所述登录认证信息对所述用户进行登录认证;
本申请实施例中,如果ES服务器查询到存储有登录认证信息中的用户标识,且登录认证信息中的密码与存储的该用户标识对应的密码相同,允许用户登录ES服务器。
访问认证模块303,用于在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。
本申请实施例中,作为一可选实施例,所述ES服务器集群包括一个或多个ES服务器,一所述ES服务器集群对应一租户,所述租户包括一个或多个用户。
本申请实施例中,可以根据租户的实际规划,例如,租户包含的用户数量以及数据量,确定为该租户配置的ES服务器数量,并将配置的多个ES服务器组成ES服务器集群,为ES服务器集群中的每一ES服务器安装SG安全插件,从而为用户提供多个数据访问入口的数据安全访问。
本申请实施例中,作为一可选实施例,ES服务器集群中的每一ES服务器的ES服务配置文件(第一配置文件)中,集群名字段为所述ES服务器集群,主机字段为所述ES服务器集群中的所有ES服务器的标识。即集群构建模块具体用于:
获取安装SG安全插件前的第一配置文件;
配置所述第一配置文件中的集群名字段为所述ES服务器集群;
配置所述第一配置文件中的主机字段为所述ES服务器集群中的所有ES服务器;
将配置的第一配置文件分发至所述主机字段中设置的其他ES服务器。
本申请实施例中,作为一可选实施例,ES服务器集群中的每一ES服务器安装有搜索卫士SG安全插件;所述SG安全插件的SG配置文件的用户信息子文件中,设置有用户的登录认证信息;所述SG安全插件的SG配置文件的角色配置子文件中,设置有各角色与索引标识的关联关系;所述SG安全插件的SG配置文件的角色子文件中设置有用户标识与角色的关联关系。
本申请实施例中,用户信息子文件为sg_internal_users.yml子文件,角色子文件为sg_roles_mapping.yml子文件。
本申请实施例中,可以为用户配置一个或多个索引标识,多个索引标识可以位于ES服务器集群中的同一ES服务器,也可以分别位于ES服务器集群中的不同ES服务器。
本申请实施例中,作为另一可选实施例,该装置还包括:
搜索模块(图中未示出),用于接收用户输入的搜索关键词,在所述用户登录的ES服务器对应的ES服务器集群的资源中,确定所述搜索关键词的搜索结果,向所述用户展示。
本申请实施例中,用户在登录ES服务器后,可以在该ES服务器所属的ES服务器集群内进行搜索,从而获取所需的搜索结果。
本申请实施例中,作为一可选实施例,所述确定所述用户的索引标识,引导所述用户访问获取的索引标识指向的数据包括:
将确定的所述用户的索引标识对应的索引标识在所述ES服务器的数据访问界面中展示;
接收对展示的索引标识的选取信息,跳转至选取的索引标识指向的数据。
本申请实施例中,作为一可选实施例,登录认证模块302具体用于:
依据所述登录认证信息中包含的用户标识,查询用户标识与密码的映射关系,确定所述用户标识映射的密码;
判断所述登录认证信息中包含的密码是否与确定的所述用户标识映射的密码相同,若相同,确定所述用户的登录认证通过。
本申请实施例中,作为一可选实施例,访问认证模块303具体用于:
根据所述登录认证信息中的用户标识查询所述用户标识与角色的关联关系,确定所述用户的角色;
根据所述用户的角色查询所述各角色与索引标识的关联关系,确定所述用户映射的索引标识。
如图4所示,本申请一实施例提供了一种计算机设备400,用于执行图1中的基于弹性搜索的数据访问方法,该设备包括存储器401、处理器402及存储在该存储器401上并可在该处理器402上运行的计算机程序,其中,上述处理器402执行上述计算机程序时实现上述基于弹性搜索的数据访问方法的步骤。
具体地,上述存储器401和处理器402能够为通用的存储器和处理器,这里不做具体限定,当处理器402运行存储器401存储的计算机程序时,能够执行上述基于弹性搜索的数据访问方法,用于解决现有技术中数据访问的安全性较低的问题,本申请通过在ES服务器安装用于对用户进行登录认证以及索引标识权限管理的SG安全插件,利用SG安全插件设置用户的登录认证信息以及索引标识权限,从而使得ES服务器可以依据用户发送的登录认证信息以及预先设置的索引标识权限,控制用户对ES服务器上索引标识指向的数据的访问,能够有效提高数据访问的安全性;而且,通过为租户设置包含多个ES服务器的ES服务器集群的方式,为用户提供多个数据访问入口,可以有效分流用户的数据访问和检索流量,从而提高数据访问和检索效率。
对应于图1中的基于弹性搜索的数据访问方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述基于弹性搜索的数据访问方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述基于弹性搜索的数据访问方法,用于解决现有技术中数据访问的安全性较低的问题,本申请通过在ES服务器安装用于对用户进行登录认证以及索引标识权限管理的SG安全插件,利用SG安全插件设置用户的登录认证信息以及索引标识权限,从而使得ES服务器可以依据用户发送的登录认证信息以及预先设置的索引标识,控制用户对ES服务器上索引标识指向的数据的访问,能够有效提高数据访问的安全性;而且,通过为租户设置包含多个ES服务器的ES服务器集群的方式,为用户提供多个数据访问入口,可以有效分流用户的数据访问和检索流量,从而提高数据访问和检索效率。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种基于弹性搜索的数据访问方法,其特征在于,应用于弹性搜索ES服务器集群中的ES服务器,该方法包括:
所述ES服务器集群中的任一ES服务器接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;
依据所述登录认证信息对所述用户进行登录认证;
在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。
2.如权利要求1所述的方法,其特征在于,所述ES服务器集群包括一个或多个ES服务器,一所述ES服务器集群对应一租户,所述租户包括一个或多个用户。
3.如权利要求2所述的方法,其特征在于,所述ES服务器集群中的每一ES服务器的ES服务配置文件中,集群名字段为所述ES服务器集群,主机字段为所述ES服务器集群中的所有ES服务器的标识。
4.如权利要求3所述的方法,其特征在于,所述ES服务器集群中的每一ES服务器安装有安全插件;
所述安全插件的配置文件的用户信息子文件中设置有用户的登录认证信息;
所述安全插件的配置文件的角色配置子文件中设置有各角色与索引标识的关联关系;
所述安全插件的配置文件的角色子文件中设置有用户标识与角色的关联关系。
5.如权利要求4任所述的方法,其特征在于,所述确定所述用户映射的索引标识,包括:
根据所述登录认证信息中的用户标识查询所述用户标识与角色的关联关系,确定所述用户的角色;
根据所述用户的角色查询所述各角色与索引标识的关联关系,确定所述用户映射的索引标识。
6.一种基于弹性搜索的数据访问装置,其特征在于,该装置应用于弹性搜索ES服务器集群中的ES服务器,包括:
登录认证信息获取模块,用于接收用户的数据访问请求,获取所述数据访问请求中包含的登录认证信息;
登录认证模块,用于依据所述登录认证信息对所述用户进行登录认证;
访问认证模块,用于在所述登录认证通过后,查询各用户与索引标识的映射关系,确定所述用户映射的索引标识,引导所述用户访问确定的索引标识指向的数据。
7.如权利要求6所述的装置,其特征在于,所述ES服务器集群包括一个或多个ES服务器,一所述ES服务器集群对应一租户,所述租户包括一个或多个用户。
8.如权利要求7所述的装置,其特征在于,所述ES服务器集群中的每一ES服务器的ES服务配置文件中,集群名字段为所述ES服务器集群,主机字段为所述ES服务器集群中的所有ES服务器的标识。
9.如权利要求8所述的装置,其特征在于,所述ES服务器集群中的每一ES服务器安装有搜索卫士SG安全插件;
所述SG安全插件的SG配置文件的用户信息子文件中,设置有用户的登录认证信息;
所述SG安全插件的SG配置文件的角色配置子文件中,设置有各角色与索引标识的关联关系;
所述SG安全插件的SG配置文件的角色子文件中设置有用户标识与角色的关联关系。
10.如权利要求6至9任一项所述的装置,其特征在于,所述访问认证模块具体用于:
根据所述登录认证信息中的用户标识查询所述用户标识与角色的关联关系,确定所述用户的角色;
根据所述用户的角色查询所述各角色与索引标识的关联关系,确定所述用户映射的索引标识。
CN201810822053.XA 2018-07-24 2018-07-24 一种基于弹性搜索的数据访问方法及装置 Active CN109063077B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810822053.XA CN109063077B (zh) 2018-07-24 2018-07-24 一种基于弹性搜索的数据访问方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810822053.XA CN109063077B (zh) 2018-07-24 2018-07-24 一种基于弹性搜索的数据访问方法及装置

Publications (2)

Publication Number Publication Date
CN109063077A CN109063077A (zh) 2018-12-21
CN109063077B true CN109063077B (zh) 2020-12-08

Family

ID=64835360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810822053.XA Active CN109063077B (zh) 2018-07-24 2018-07-24 一种基于弹性搜索的数据访问方法及装置

Country Status (1)

Country Link
CN (1) CN109063077B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109063077B (zh) * 2018-07-24 2020-12-08 新华三大数据技术有限公司 一种基于弹性搜索的数据访问方法及装置
CN110083627B (zh) * 2019-04-28 2021-08-24 江苏满运软件科技有限公司 数据处理方法、系统、计算机设备和存储介质
CN110197051A (zh) * 2019-06-13 2019-09-03 浪潮软件股份有限公司 一种权限控制的方法、终端及计算机可读存储介质
CN111026709B (zh) * 2019-12-10 2024-03-12 中盈优创资讯科技有限公司 基于集群访问的数据处理方法及装置
CN111428114B (zh) * 2020-03-27 2024-04-09 中国工商银行股份有限公司 Elasticsearch搜索引擎的索引创建方法及装置
CN113760990A (zh) * 2021-02-09 2021-12-07 北京沃东天骏信息技术有限公司 一种内容权限管理方法和装置
CN113779625A (zh) * 2021-08-31 2021-12-10 成都商汤科技有限公司 一种数据访问的方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101079049A (zh) * 2006-11-15 2007-11-28 腾讯科技(深圳)有限公司 一种搜索系统及方法
CN103455567A (zh) * 2013-08-18 2013-12-18 苏州量跃信息科技有限公司 基于搜索索引项载入应用接口的方法及系统
CN103744960A (zh) * 2014-01-06 2014-04-23 河海大学 一种基于云平台的元数据索引模型及方法
CN106250501A (zh) * 2016-07-28 2016-12-21 五八同城信息技术有限公司 报表处理方法及报表系统
CN107329987A (zh) * 2017-06-02 2017-11-07 广州启辰电子科技有限公司 一种基于mongo数据库的搜索系统
CN109063077A (zh) * 2018-07-24 2018-12-21 新华三大数据技术有限公司 一种基于弹性搜索的数据访问方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10481948B2 (en) * 2015-08-25 2019-11-19 Box, Inc. Data transfer in a collaborative file sharing system
US20170206249A1 (en) * 2016-01-20 2017-07-20 Systems And Methods For Implementing Urban Voices Systems and methods for implementing urban voices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101079049A (zh) * 2006-11-15 2007-11-28 腾讯科技(深圳)有限公司 一种搜索系统及方法
CN103455567A (zh) * 2013-08-18 2013-12-18 苏州量跃信息科技有限公司 基于搜索索引项载入应用接口的方法及系统
CN103744960A (zh) * 2014-01-06 2014-04-23 河海大学 一种基于云平台的元数据索引模型及方法
CN106250501A (zh) * 2016-07-28 2016-12-21 五八同城信息技术有限公司 报表处理方法及报表系统
CN107329987A (zh) * 2017-06-02 2017-11-07 广州启辰电子科技有限公司 一种基于mongo数据库的搜索系统
CN109063077A (zh) * 2018-07-24 2018-12-21 新华三大数据技术有限公司 一种基于弹性搜索的数据访问方法及装置

Also Published As

Publication number Publication date
CN109063077A (zh) 2018-12-21

Similar Documents

Publication Publication Date Title
CN109063077B (zh) 一种基于弹性搜索的数据访问方法及装置
EP3726411B1 (en) Data desensitising method, server, terminal, and computer-readable storage medium
CN109936571B (zh) 一种海量数据共享方法、开放共享平台及电子设备
US9712534B2 (en) Modifying permission trees in a virtualization environment
US8468120B2 (en) Systems and methods for tracking and reporting provenance of data used in a massively distributed analytics cloud
US8200628B2 (en) Multi-tenancy data storage and access method and apparatus
US20170364697A1 (en) Data interworking method and data interworking device
US20140289286A1 (en) System and method for performance tuning of garbage collection algorithms
Coro et al. Cloud computing in a distributed e‐infrastructure using the web processing service standard
US9953639B2 (en) Voice recognition system and construction method thereof
CN110413595B (zh) 一种应用于分布式数据库的数据迁移方法和相关装置
US11477179B2 (en) Searching content associated with multiple applications
US20150095973A1 (en) Cloud database lockdown
CN110086836B (zh) 获取元数据的方法和装置
CN110659418A (zh) 内容搜索方法、装置、存储介质及计算设备
CN111506611A (zh) 数据的查询方法、装置、设备及存储介质
CN108154024B (zh) 一种数据检索方法、装置及电子设备
CN116028466A (zh) 数据库结构迁移方法、装置、设备、存储介质
US9317553B2 (en) Declarative partitioning for data collection queries
US20130262662A1 (en) Methods and systems for smart adapters in a social media content analytics environment
US10951600B2 (en) Domain authentication
WM Ribeiro et al. OLAP parallel query processing in clouds with C‐ParGRES
CN112416875B (zh) 日志管理方法、装置、计算机设备及存储介质
CN111159214B (zh) 一种api的访问方法、装置、电子设备及存储介质
CN115827589A (zh) 一种权限验证方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant