当前位置: 首页 > news >正文

Elasticsearch:Redact(编辑) processor

Redact 处理器使用 Grok 规则引擎来隐藏输入文档中与给定 Grok 模式匹配的文本。该处理器可用于隐藏个人身份信息 (Personal Identifying Information - PII),方法是将其配置为检测已知模式,例如电子邮件或 IP 地址。与 Grok 模式匹配的文本将被替换为可配置的字符串,例如与电子邮件地址匹配的 <EMAIL>,或者如果愿意,只需将所有匹配项替换为文本 <REDACTED>。

Elasticsearch 附带了许多有用的预定义模式,Redact 处理器可以方便地引用这些模式。如果其中一个不符合你的需求,请使用自定义模式定义创建新模式。Redact 处理器会替换匹配的每一个出现位置。如果有多个匹配项,则所有匹配项都将替换为模式名称。

Redact 处理器与 Elastic Common Schema (ECS) 模式兼容。不支持旧版 Grok 模式。

注意:这个 redact 处理器器需要需要订阅白金或者企业版才可以使用。

在管道中使用 Redact 处理器

Redact 选项
名称必须默认值描述

field

yes

-

要编辑的字段

patterns

yes

-

用于匹配和编辑命名捕获的 grok 表达式列表

pattern_definitions

no

-

模式名称和模式元组的映射,定义处理器要使用的自定义模式。与现有名称匹配的模式将覆盖预先存在的定义

prefix

no

<

使用此标记开始编辑部分

suffix

no

>

以此标记结束编辑部分

ignore_missing

no

true

如果为 true 且字段不存在或为空,则处理器会悄悄退出,而不会修改文档

description

no

-

处理器的描述。用于描述处理器的用途或其配置。

if

no

-

有条件地执行处理器。请参阅有条件地运行处理器。

ignore_failure

no

false

忽略处理器的故障。请参阅处理管道故障。

on_failure

no

-

处理处理器故障。请参阅处理管道故障。

tag

no

-

处理器的标识符。对于调试和指标很有用。

skip_if_unlicensed

no

false

如果为真,且当前许可证不支持运行修订处理器,则处理器会悄悄退出,不修改文档

在此示例中,预定义的 IP Grok 模式用于匹配和编辑 message 文本字段中的 IP 地址。使用 Simulate API 测试管道。

POST _ingest/pipeline/_simulate
{"pipeline": {"description" : "Hide my IP","processors": [{"redact": {"field": "message","patterns": ["%{IP:client}"]}}]},"docs":[{"_source": {"message": "55.3.244.1 GET /index.html 15824 0.043"}}]
}

如果没有授权,我们可以看到如上所示的错误信息。我们可以启动白金试用。然后再运行和上面的命令:

响应中的文档仍然包含 message 字段,但现在 IP 地址 55.3.244.1 被文本 <client> 替换。

IP 地址被替换为单词 client,因为这是 Grok 模式 %{IP:client} 中指定的。模式名称周围的 < 和 > 标记可使用前缀和后缀选项进行配置。

下一个示例定义了多个模式,它们都替换为单词 REDACTED,前缀和后缀标记设置为 *

POST _ingest/pipeline/_simulate
{"pipeline": {"description": "Hide my IP","processors": [{"redact": {"field": "message","patterns": ["%{IP:REDACTED}","%{EMAILADDRESS:REDACTED}"],"prefix": "*","suffix": "*"}}]},"docs": [{"_source": {"message": "55.3.244.1 GET /index.html 15824 0.043 test@elastic.co"}}]
}

在响应中,IP 55.3.244.1 和电子邮件地址 test@elastic.co 都已被 *REDACTED* 替换。

自定义模式

如果现有的 Grok 模式之一不符合你的要求,可以使用 pattern_definitions 选项添加自定义模式。新模式定义由模式名称和模式本身组成。模式可以是正则表达式或引用现有的 Grok 模式。

此示例定义自定义模式 GITHUB_NAME 以匹配 GitHub 用户名。模式定义使用以文字 @ 为前缀的现有 USERNAME Grok 模式。

注意:Grok 调试器是用于构建自定义模式的真正有用的工具。

POST _ingest/pipeline/_simulate
{"pipeline": {"processors": [{"redact": {"field": "message","patterns": ["%{GITHUB_NAME:GITHUB_NAME}"],"pattern_definitions": {"GITHUB_NAME": "@%{USERNAME}"}}}]},"docs": [{"_source": {"message": "@elastic-data-management the PR is ready for review"}}]
}

用户名在响应中已被删除。

Grok 看门狗

看门狗会中断执行时间过长的表达式。中断后,Redact 处理器会失败并出现错误。控制 Grok Watchdog 超时的相同设置也适用于 Redact 处理器。

许可

Redact 处理器是一项商业功能,需要适当的许可证。有关更多信息,请参阅 https://www.elastic.co/subscriptions。

可以在 redact 处理器上设置 skip_if_unlicensed 选项,以控制集群许可证不足以运行此类处理器时的行为。skip_if_unlicensed 默认为 false,如果集群许可证不足,redact 处理器将抛出异常。但是,如果将 skip_if_unlicensed 选项设置为 true,则在许可证不足的情况下,redact 处理器不会抛出异常(它什么也不做)。

相关文章:

Elasticsearch:Redact(编辑) processor

Redact 处理器使用 Grok 规则引擎来隐藏输入文档中与给定 Grok 模式匹配的文本。该处理器可用于隐藏个人身份信息 (Personal Identifying Information - PII)&#xff0c;方法是将其配置为检测已知模式&#xff0c;例如电子邮件或 IP 地址。与 Grok 模式匹配的文本将被替换为可…...

O2OA结合备份脚本和定时任务进行数据库的备份,我们以MySQL数据库为例

概述 系统运行一段时间后&#xff0c;可能发生各种情况导致数据丢失&#xff0c;如硬件故障、人为错误、软件错误、病毒攻击等。定期备份可以帮助您保护数据免受这些风险的影响&#xff0c;以便在需要时能够恢复数据。 O2OA应用本身可以通过dump配置每天自定备份数据&#xff…...

Python自动化办公:批量提取PDF中的表格到Excel

在现代办公环境中&#xff0c;处理大量的PDF文件并提取其中的表格数据是一项常见而繁琐的任务。手动复制粘贴不仅耗时耗力&#xff0c;还容易出错。Python作为一种功能强大的编程语言&#xff0c;提供了丰富的工具包&#xff0c;可以高效地解决这一问题。本文将介绍如何使用Pyt…...

selenium有多个frame页时的操作方法(5)

之前文章我们提到&#xff0c;在webdriver.WebDriver类有一个switch_to方法&#xff0c;通过switch_to.frame()可以切换到不同的frame页然后才再定位某个元素做一些输入/点击等操作。 比如下面这个测试网站有2个frame页&#xff1a;http://www.sahitest.com/demo/framesTest.h…...

谷歌外链的周期性维护!

外链建设不是一次性的工作&#xff0c;它需要长期的维护和更新&#xff0c;才能持续为网站带来稳定的流量和SEO提升。很多网站在初期通过短期内大规模获取外链的方式&#xff0c;确实能看到排名的提升&#xff0c;但这种方法往往难以维持长期的效果。谷歌更喜欢自然、持续增长的…...

CATIA软件许可管理最佳实践

在当今的工程设计领域&#xff0c;CATIA软件已成为众多企业不可或缺的工具。然而&#xff0c;随着软件使用的广泛普及&#xff0c;许可管理变得尤为关键。本文将为您探讨CATIA软件许可管理的最佳实践&#xff0c;助您在确保合规性的同时&#xff0c;实现成本效益的最大化。 一、…...

大华智能云网关注册管理平台 SQL注入漏洞复现(CNVD-2024-38747)

0x01 产品简介 大华智能云网关注册管理平台是一款专为解决社会面视频资源接入问题而设计的高效、便捷的管理工具,平台凭借其高效接入、灵活部署、安全保障、兼容性和便捷管理等特点,成为了解决社会面视频资源接入问题的优选方案。该平台不仅提高了联网效率,降低了联网成本,…...

什么是思维导图,手把手教你做经典思维导图

在信息爆炸的时代&#xff0c;如何高效整理思绪、激发创意、提升学习效率成为了我们共同面临的挑战。思维导图&#xff0c;这一源自脑科学的思维工具&#xff0c;以其直观、灵活的特点&#xff0c;成为了众多学习者、管理者和创意人士的得力助手。今天&#xff0c;就让我们一起…...

使用GSEA读‘gmt文件‘时最后一行未遂问题解决

最近工作中&#xff0c;使用GSEA网站自定义库下载的gmt文件用函数读取的时候报错&#xff1a; 这种问题在文本文件读取中经常出现&#xff0c;往往因为最后一行未留出/n&#xff0c;也就是最后一行没有换行留出空行。 可以使用notepad打开gmt文件&#xff1a; 发现果然最后一行…...

C++中vector常用函数总结

一&#xff0c;vector vector可以理解为一个边长数组&#xff0c;可以存储不同的类型&#xff0c;int ,double,char,结构体等。 也可以才能出STL标准容器&#xff0c;如set,string,vector等 二&#xff0c;构造函数 vector(size_t n,T val) …...

手撕数据结构 —— 队列(C语言讲解)

目录 1.什么是队列 2.如何实现队列 3.队列的实现 Queue.h中接口总览 具体实现 结构的定义 初始化 销毁 入队列 出队列 取队头元素 取队尾元素 判断是否为空 获取队列的大小 4.完整代码附录 Queue.h Queue.c 1.什么是队列 队列是一种特殊的线性表&#xff0…...

Java知识巩固(五)

目录 基本数据类型 基本类型和包装类型的区别&#xff1f; 自动装箱与拆箱了解吗?原理是什么&#xff1f; 为什么浮点数运算的时候回邮精度丢失的风险&#xff1f; 如何解决浮点数运算的精度丢失问题&#xff1f; 超过 long 整型的数据应该如何表示&#xff1f; 基本数据…...

C# 中 yield关键字的使用

yield return有以下优点&#xff1a; 每次迭代时生成一个值&#xff0c;并且在下次迭代时继续从上次离开的地方开始。 延迟执行&#xff1a;只有在实际需要时才会生成下一个值&#xff0c;这对于处理大量数据非常有用。 节省内存&#xff1a;不需要一次性将所有数据加载到内存中…...

YoloDotNet 的基本使用方法详解

文章目录 一、创建项目与引用库二、模型加载与初始化三、图像数据的处理与输入四、目标检测结果的获取与解析五、性能优化与参数调整一、创建项目与引用库 在使用 YoloDotNet 之前,首先需要在开发环境中创建一个新的项目。可以选择使用 Visual Studio 等开发工具,创建一个 C#…...

0x12 Dapr Dashboard configurations 未授权访问漏洞 CVE-2022-38817

参考: Dapr Dashboard configurations 未授权访问漏洞 CVE-2022-38817 | PeiQi文库 (wgpsec.org)免责声明 欢迎访问我的博客。以下内容仅供教育和信息用途: 合法性:我不支持或鼓励非法活动。请确保遵守法律法规。信息准确性:尽管我尽力提供准确的信息,但不保证其完全准确…...

Android activity 启动流程

Android activity 启动流程 本文主要记录下acitivty的启动流程. 1: Activity 我们都知道启动activity调用方法: startActivity(Intent intent)startActivity(Intent intent, Nullable Bundle options)startActivityForResult(RequiresPermission Intent intent, int reques…...

使用 Go 语言实现 WebSocket的核心逻辑

文章目录 WebSocket 简介时序图核心逻辑Client 结构与功能创建新客户端消息读取逻辑 (ReadPump)发送消息逻辑 (Send)客户端管理器 (ClientManager)WebSocket 处理器处理心跳与长连接 总结 本文将基于 Go 语言&#xff0c;通过使用 gorilla/websocket 库来实现一个简单的聊天应用…...

Linux下的杀毒软件介绍

Linux下的杀毒软件介绍 一、Linux杀毒软件的基本概念和作用二、Linux杀毒软件的选择三、Linux杀毒软件推荐四、Linux杀毒软件对应用进程的影响五、结论在当今数字化和网络化的环境中,保护计算机系统的安全至关重要。尽管Linux操作系统因其开源、稳定且相对安全的特性而较少受到…...

JSONP详解

JSONP&#xff08;JSON with Padding&#xff09;是一种非官方的协议&#xff0c;它允许在服务器端集成Script tags返回至客户端&#xff0c;通过JavaScript callback的形式实现跨域访问。以下是对JSONP的详细解释&#xff1a; 一、JSONP的背景与原理 背景&#xff1a; 由于浏…...

Leetcode—1115. 交替打印 FooBar【中等】(多线程)

2024每日刷题&#xff08;180&#xff09; Leetcode—1115. 交替打印 FooBar C实现代码 class FooBar { private:int n;sem_t fooSem;sem_t barSem;public:FooBar(int n) {this->n n;sem_init(&fooSem, 0, 1);sem_init(&barSem, 0, 0);}~FooBar() {sem_destroy(&…...

Visual Studio Code基础:使用debugpy调试python程序

相关阅读 VS codehttps://blog.csdn.net/weixin_45791458/category_12658212.html?spm1001.2014.3001.5482 一、安装调试器插件 在VS code中可以很轻松地调试Python程序&#xff0c;首先需要安装Python调试器插件&#xff0c;如图1所示。 图1 安装调试器插件 Python Debugge…...

超全!一文详解大型语言模型的11种微调方法

导读&#xff1a;大型预训练模型是一种在大规模语料库上预先训练的深度学习模型&#xff0c;它们可以通过在大量无标注数据上进行训练来学习通用语言表示&#xff0c;并在各种下游任务中进行微调和迁移。随着模型参数规模的扩大&#xff0c;微调和推理阶段的资源消耗也在增加。…...

C 主要函数解析

1、fseek 函数 int fseek(FILE *stream, long offset, int fromwhere); 第一个参数stream为文件指针 第二个参数offset为偏移量&#xff0c;正数表示正向偏移&#xff0c;负数表示负向偏移 第三个参数origin设定从文件的哪里开始偏移,可能取值为&#xff1a;SEEK_CUR、 SEE…...

vue3学习:数字时钟遇到的两个问题

在前端开发学习中&#xff0c;用JavaScript脚本写个数字时钟是很常见的案例&#xff0c;也没什么难度。今天有时间&#xff0c;于是就用Vue的方式来实现这个功能。原本以为是件非常容易的事&#xff0c;没想到却卡在两个问题上&#xff0c;一个问题通过别人的博文已经找到答案&…...

吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)3.7-3.8

目录 第四门课 卷积神经网络&#xff08;Convolutional Neural Networks&#xff09;第三周 目标检测&#xff08;Object detection&#xff09;3.7 非极大值抑制&#xff08;Non-max suppression&#xff09;3.8 Anchor Boxes 第四门课 卷积神经网络&#xff08;Convolutional…...

【Linux】最基本的字符设备驱动

前面我们介绍到怎么编译出内核模块.ko文件&#xff0c;然后还加载了这个驱动模块。但是&#xff0c;那个驱动代码还不完善&#xff0c;驱动写好后怎么在应用层使用也没有介绍。 字符设备抽象 Linux内核中将字符设备抽象成一个具体的数据结构&#xff08;struct cdev&#xff…...

利用 Llama 3.1模型 + Dify开源LLM应用开发平台,在你的Windows环境中搭建一套AI工作流

文章目录 1. 什么是Ollama&#xff1f;2. 什么是Dify&#xff1f;3. 下载Ollama4. 安装Ollama5. Ollama Model library模型库6. 本地部署Llama 3.1模型7. 安装Docker Desktop8. 使用Docker-Compose部署Dify9. 注册Dify账号10. 集成本地部署的 Llama 3.1模型11. 集成智谱AI大模型…...

Docker常用命令分享二

docker的用户组管理过程&#xff1a; 1、sudo : 可以让普通用户临时获得root用户的权限&#xff0c;来新建docker用户组 2、普通用户并没有使用sudo的权限 3、先要让root用户把testing用户加入到sudoers的授权文件中 4、sudoers的文件居然是只读的&#xff0c;先解决这个问…...

【一步步开发AI运动小程序】二十、AI运动小程序如何适配相机全屏模式?

引言 受小程序camera组件预览和抽帧图像不一致的特性影响&#xff0c;一直未全功能支持全屏模式&#xff0c;详见本系列文件第四节小程序如何抽帧&#xff1b;随着插件在云上赛事、健身锻炼、AI体测、AR互动场景的深入应用&#xff0c;各开发者迫切的希望能在全屏模式下应用&am…...

[Java基础] 运算符

[Java基础] 基本数据类型 [Java基础] Java HashMap 的数据结构和底层原理 目录 算术运算符 比较运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 常见面试题 Java语言支持哪些类型的运算符&#xff1f; 请解释逻辑运算符&&和&的区别? 请解释条件运…...