PostgreSQL 数据脱敏方式盘点

在 PostgreSQL 中,如何实现数据的脱敏处理? 在 PostgreSQL 中,数据脱敏是指对敏感数据进行处理,以在不影响数据使用的前提下,保护敏感信息不被泄露。常见的数据脱敏方式包括屏蔽、加密、哈希、模糊等。下面将详细介绍几种常见的数据脱敏方法,并提供相应的示例代码和解释。 阅读详情

数据脱敏是一种广泛采用的保护敏感数据(如信用卡,社保卡,地址等信息)的方法。脱敏数据不仅仅是为了保护你和客户的数据安全,在一些情况下,法律也有相应要求,最著名的例子就是 GDPR。

市面上也有各种不同的数据脱敏方法,例如遮挡,替换,洗牌和加密,适用于不同场景。通过对敏感数据进行脱敏处理,组织能够降低数据泄露和未经授权访问的风险,同时仍然能够使用真实数据进行开发、测试和分析等任务。

本文来盘点一下 PostgreSQL 的几种常用脱敏方式。

PostgreSQL Anonymizer

file

PostgreSQL Anonymizer 是个社区贡献的扩展 ,可以为 PostgreSQL 添加不同的数据脱敏选项和方法。它将脱敏配置存储在 PostgreSQL 的 SECURITY LABEL(安全标签)中。

动态脱敏

PostgreSQL Anonymizer 实现动态脱敏的方式是通过将定义某个角色为 “MASKED” 以及脱敏规则。被授予 “MASKED” 角色的用户将无法访问原始数据,而其他角色仍然可以访问。它现已支持多种的脱敏语法,你甚至可以编写自己的规则。

file

这种方法有一定的局限性,例如在他们文档中 有提到,如果你同时使用脱敏插件和 GUI 工具如 DBeaver 或 pgAdmin 进行查询的时候可能会出现问题;对于某些查询来说,动态脱敏可能非常慢。此外,不同的脱敏变体需要不同的视图,在角色或底层表发生变化时,这又很快变得难以管理起来。

静态脱敏

PostgreSQL Anonymizer 还支持静态脱敏,可以直接转换原始数据集。比如可以用虚假数据替换原始数据,添加噪音或者混淆数据以隐藏敏感信息。
静态脱敏的原则是更新包含至少一个被脱敏列的所有表的所有行。基本上意味着 PostgreSQL 将重写磁盘上的所有数据。所以请注意,这种方法会破坏原始数据,并且是一个比较缓慢的过程。因此,在使用静态脱敏之前,请三思而后行。

Bytebase 动态数据脱敏

file

Bytebase 动态数据脱敏 不依赖于 PostgreSQL 视图或其用户,而是通过 Bytebase 内部管理脱敏策略和授权管理。当用户通过 SQL 编辑器查询时,会自动应用动态脱敏策略。

file

Bytebase 动态数据脱敏包括以下组件:

  • 全局脱敏规则:工作空间的「管理员」和「DBA」可以批量定义全局脱敏规则。例如,可以将所有名为 email 的列脱敏程度设置为「半脱敏」。这样,修改脱敏策略就无需手动修改数千列了,还节省了维护视图的麻烦。

file

  • 列脱敏规则:工作空间的「管理员」和「DBA」可以将列设置为不同的脱敏级别。列脱敏规则优先于全局脱敏规则。

file

  • 访问未脱敏数据:对于脱敏数据,工作空间的「管理员」和「DBA」可以授予特定用户访问未脱敏数据的权限。

file

📣 工作空间的「管理员」和「DBA」均为 Bytebase 的角色。

对比

file

PostgreSQL Anonymizer 的优势在于它是在数据库本身中实现的。因此,无论查询如何发送到数据库,数据脱敏规则都会被强制执行。对于 Bytebase 动态数据脱敏,查询必须通过 SQL 编辑器才会强制执行。

Bytebase 动态数据脱敏的优势在于其与所有 PostgreSQL 发行版(和 MySQL 发行版🐬)都兼容,且支持细粒度的脱敏策略和访问权限。只要团队通过 Bytebase SQL 编辑器来查询数据库,那么 Bytebase 动态数据脱敏可以保障组织敏感数据的安全。

🔧 欢迎跟着教程来试试 Bytebase 动态数据脱敏。


💡 更多资讯,请关注 Bytebase 公号:Bytebase

PostgreSQL数据库列级脱敏:后端开发进阶技巧 数据识别挑战:如何系统性识别和分类敏感数据?不同行业和地区有不同的合规要求(GDPR的PII、PCI DSS的卡数据、HIPAA的医疗信息等)。粒度控制挑战:如何在列级基础上实现更精细的控制?例如同一列数据对不同部门或职位应显示不同脱敏程度。性能平衡挑战:脱敏操作不可避免地带来性能开销,如何在安全需求与系统性能间取得平衡?可用性保持挑战:脱敏后的数据应尽可能保留统计特性和业务规则,以便在开发、测试和分析场景中仍然可用。透明集成挑战:脱敏机制应尽可能对应用透明,减少代码修改需求,同时提供明确的权限管理接口。 阅读详情

相关推荐

PostgreSQL:详解 pgAudit 插件的使用(数据脱敏与审计)

pgAudit是PostgreSQL官方推荐的审计日志插件,用于记录数据库操作行为,如用户执行的SQL语句、操作对象和时间戳等,满足GDPR、HIPAA等合规要求。它不提供数据脱敏功能,需通过视图、RLS或anon扩展实现。安装需加载共享库并创建扩展,通过参数控制审计粒度,可基于角色或数据库配置。典型应用包括记录敏感表访问、DDL操作等。pgAudit日志可与会话或对象级审计结合,并需注意日志轮转和分析。数据脱敏可通过视图+RLS、anon扩展或应用层实现,与pgAudit协同构建完整安全体系。

数据知道的博客 2453

postgresql_anonymizer使用

postgresql_anonymizer是对数据库中的个人识别信息或商业敏感数据进行屏蔽或替换的扩展。

HighGO 1376

postgresql-anonymizer:用于匿名化PostgreSQL数据库的命令行工具

PostgreSQL匿名器 这个命令行工具使PostgreSQL数据库匿名化变得容易。 它使用YAML定义文件来定义应对哪些表和字段进行匿名化,并提供各种匿名化方法。 内容 使用多种方法匿名化数据级别条目上的PostgreSQL表(下表) 根据正则表达式排除数据以进行匿名化 截断整个表以获取不需要的数据 场地 价值 提供者 输出 first_name 约翰 choice (鲍勃|拉里|丽莎) title 博士 clear street 欧文街 faker.street_name 米勒站 password dsf82hFxcM mask XXXXXXXXXX email md5 0cba00ca3da1b283a57287bcceb17e35 ip 157.50.1.20 set 127.0.0.1 有关提供的匿名化方法的更详细说明,请参见文档。 2

postgresql数据脱敏技术介绍以及使用字符替换数据库脱敏示例代码

在 PostgreSQL 数据库中实现数据脱敏(Data Masking)可以帮助保护敏感数据的隐私和安全。数据脱敏是通过修改或替换敏感数据的方法来隐藏或模糊数据的真实值,以防止未经授权的访问者获取敏感信息。

没刮胡子的程序员专栏 2914

pg-anonymizer:使用NodeJS CLI转储匿名的PostgreSQL数据库

pg匿名器 匿名导出您的PostgreSQL数据库。 多亏了faker替换了所有敏感数据。 输出到一个可以使用psql轻松导入的文件。 用法 通过提供连接字符串和输出文件名运行此命令(由于npx无需首先安装): npx pg-anonymizer postgres://user:secret@localhost:1234/mydb -o dump.sql :index_pointing_up: 此命令需要pg_dump 。 安装PostgreSQL后可能已经安装了它。 指定要匿名的列列表 使用--list选项和以逗号分隔的列名列表: npx pg-anonymizer postgres://localhost/mydb

华为2021年天线工程师笔试题目回忆总结(持续更新)

1. 判定长线和短线 所谓长线是指传输线的几何长度和线上传输电磁波的波长的比值(即电长度)大于或接近于1。反之称为短线。是相对于波长而言的。 1000m的传输线,对于频率为50hz(即波长为6000km)的交流电来说,仍远小于波长,应视为短线。长线和短线的区别还在于:长线为分布参数电路,而短线是集总参数电路。 2. 判定传输线的容性和感性 传输线上的输入阻抗具有以下特点: 1/4波长变换性:感性负载与容性负载变换,开路与短路变换; 1/2波长重复性:相距1/2波长的整数倍的两个点输入阻抗都相等。1/4开路传

ludashi3的博客 9531

PostgreSQL数据脱敏插件介绍

数据脱敏插件Anonymizer介绍

多米爸比的专栏 839

Vivado 2018.3 安装步骤及 license 获取

本文的主要内容是介绍 Vivado 2018.3 版本的安装步骤及其 license 的获取与加载。

西岸贤 4万+

PostgreSQL数据库字段脱敏的实现方式

这篇文章探讨了PostgreSQL数据库中的敏感数据保护问题,重点介绍了动态脱敏技术的重要性。主要内容包括: PostgreSQL的强大功能也带来了数据安全风险,尤其是灵活查询方式可能绕过传统防护; 动态脱敏与静态脱敏的区别,前者能根据不同用户实时返回不同结果; DBG数据库加密网关的三个关键特性:透明代理、精准识别JSONB嵌套数据、灵活多样的脱敏策略; 实际案例展示如何在不影响业务的前提下保护医保数据; 比较了动态脱敏与PostgreSQL行级安全(RLS)的差异; 强调数据保护不是成本而是建立信任的必

安当加密 1395

LS-DYNA超高速碰撞仿真入门:从SPH算法配置到铝靶板穿孔分析(附K文件模板)

本文详细介绍了使用LS-DYNA中的SPH(光滑粒子流体动力学)算法进行超高速碰撞仿真的完整流程。以铝弹丸撞击铝靶板为例,从SPH算法原理、LS-PrePost前处理、材料模型与状态方程设置,到接触定义、边界条件及K文件生成,提供了系统的入门指导和关键参数调试经验,帮助工程师高效模拟材料破碎、穿孔等极端变形问题。

h0i1j2k3l的博客 735

【第三只眼:Oracle通过归档日志查看系统的业务高峰sql】

根据oracle归档的业务高峰量,查找业务sql,进行优化

霍然的专栏 579

在 PostgreSQL 中如何实现数据的脱敏和加密存储策略平衡?

在 PostgreSQL 中实现数据的脱敏和加密存储策略平衡是一个复杂但必要的任务。需要综合考虑性能、可用性、密钥管理和合规性等多个因素,根据数据的特点和业务需求选择合适的方法和策略,并不断进行优化和调整。通过合理的设计和实施,可以在保护数据安全的同时,最大程度地保证业务的正常运行和数据的有效利用。以上内容仅是一个全面而概括性的介绍,实际的应用场景可能会更加复杂,需要更深入的技术研究和专业的安全知识来确保数据的万无一失。

发现生活,分享智慧,一起成长! 1489

Linux ARM平台开发系列讲解(调试篇) 1.6.4 NVIDIA AGX Xavier以太网MAC TO MAC模式

内核发展了那么多年,早已经将这种场景集成到了内核里,具体添加方式如下,本次针对。具体详细描述,可参考本专栏的网络篇和交换机篇,这里就简单的提一句,想要使用。速率和双工状态固定死,使其和交换机的模式一模一样,双方就可以建立通信了。2. MAC TO MAC原理。3. 开启无PHY模式进入内核。模式,本章节记录调试过程。模式,简单来说就是字面意思,以太网部分需要与交换机。,其他芯片也是一样的。修改设备树文件,将与。

DSMGUOGUO的博客 1530

PostgreSQL必装扩展推荐:开源数据脱敏工具PostgreSQL Anonymizer

是一个由 Dalibo 开发维护的开源 PostgreSQL 数据脱敏(Data Masking)与匿名化扩展插件,专门用于隐藏、替换或伪造数据库中的个人敏感信息(PII)和商业敏感数据,帮助企业满足 GDPR、HIPAA、个人信息保护法等数据合规要求。

Tony.Dong的专栏 611

外骨骼机器人(五):步态分析之正常步态

研究病理步态之前,需要了解正常步态,作为判断标准。但是需要记住两个问题:1.“正常”因人而异,性别、年龄、身体情况都需要考虑在内,因此,需要对不同的个体选择合适的正常标准;2.即使病人的步态与正常步态有某种不同,这也不能说明这是不可取的,也不能说明应该把它变成“正常”步态。许多步态异常是对病人的一些问题的一种补偿,尽管异常,但它们仍然是有用的。步态周期的定义是连续为两次发生重复行走事件之间的时间间隔。尽管可以选择任何事件来定义步态周期,但通常使用一只脚接触地面的瞬间(“初始接触”)是方便的。

行者无疆的博客 1997

基于Simulink实现电动汽车电机驱动系统的建模与仿真

通过上述步骤,我们成功实现了基于Simulink的电动汽车电机驱动系统的建模与仿真。该系统能够全面评估电机驱动系统的性能,验证控制策略的有效性,并通过优化设计提高车辆的动力性和效率。引入智能预测:结合人工智能技术,实现更智能的控制策略。扩展功能:增加对多种电机类型的支持,提升系统通用性。实验验证:将仿真模型应用于实际硬件,进行实验验证,评估其在实际工况下的表现。

xiaoheshang_123的博客 318

如何在PostgreSQL中实现数据脱敏以保护敏感信息的安全?

数据脱敏是保护敏感信息安全的重要手段之一。在PostgreSQL中,可以通过使用函数和触发器、视图以及扩展模块等多种方法实现数据脱敏。根据具体的需求和场景,可以选择合适的脱敏策略和技术来保护数据的安全。同时,需要注意在实施数据脱敏时遵循相关的法律法规和隐私政策,确保合规性和数据的可用性。相关阅读推荐PostgreSQL入门到精通.PDF 领取Postgres专栏推荐如何在PostgreSQL中备份和恢复整个数据库,包括相关的用户和权限设置。

发现生活,分享智慧,一起成长! 1707

Python经典编程习题100例:第25例:求各个阶乘的和

不要自卑,去提升实力 互联网行业谁技术牛谁是爹 如果文章可以带给你能量,那是最好的事!请相信自己 加油o~ 本人初学Python,只为熟悉语法编写,大神请勿理会 点击下面链接 Python经典编程100例习题汇总 题目描述: 求1+2!+3!+…+20!的和。 解题思路: > 调用math模块中的factorial函数 代码: import math sum=0 for i in range(1,21): sum+=math.factorial(i) print(sum) ..

优快云 精品推荐 2736

Patroni数据脱敏:保护敏感信息的PostgreSQL集群配置

在当今数据驱动的时代,数据库中的敏感信息保护变得尤为重要。PostgreSQL作为广泛使用的开源数据库,其高可用方案Patroni在构建可靠集群的同时,也需要考虑数据安全问题。本文将详细介绍如何在Patroni管理的PostgreSQL集群中实现数据脱敏,保护敏感信息不被未授权访问。 ## 数据脱敏的重要性与挑战 数据脱敏(Data Masking)是一种在保留数据格式和可用性的同时,通过替换...

gitblog_01033的博客 694

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

PostgreSQL数据脱敏插件postgresql_anonymizer实战指南

数据脱敏是数据库安全领域的关键技术,通过在保留数据结构的同时替换敏感信息,有效解决开发测试环境使用生产数据的隐私合规问题。其核心技术原理包括替换、泛化、扰乱等算法,结合数据库钩子机制实现查询重写。PostgreSQL生态中的postgresql_anonymizer插件提供了声明式规则配置、高性能批量处理等工程实践方案,特别适用于金融、电商等需要保护用户隐私信息的场景。该插件支持保持数据关联性的脱敏操作,通过SEED机制确保如用户ID等关键字段的一致性处理,同时提供丰富的内置函数和自定义扩展能力。

weixin_31292729的博客 221

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

PostgreSQL数据库字段级加密与脱敏技术深度剖析-DBG数据库网关

摘要: 随着数据安全法规趋严,PostgreSQL数据库字段级加密与脱敏需求凸显。DBG数据库加密网关通过SQL解析重写技术,在不修改应用代码的情况下实现透明加密与动态脱敏,支持SM4等国密算法,并与KSP密钥管理平台深度集成,解决传统方案密钥管理复杂、性能损耗大的问题。该方案支持行列级组合安全策略,通过语法树缓存、连接池优化保障性能,已在金融、医疗等行业落地,实现敏感数据的精细权限控制与安全防护。

安当加密 1344

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

什么是动态数据脱敏?

SDM 的主要应用场景是创建安全、经过「消毒」的产品数据,供非生产环境使用。而 DDM 则主要用于生产环境,根据用户角色、许可或其他关联因素,动态控制对敏感数据的访问。对于那些受支持的数据库,DDM 是通过扩展 SQL 语法实现的。鉴于 DDM 的动态特性,其中一个关键挑战是如何最大限度地降低与实时脱敏相关的性能开销。这就需要优化脱敏逻辑,确保其既高效又可扩展,尤其是在高流量环境中。动态数据脱敏(DDM)动态更改返回给应用程序或用户的数据库记录,以此来实时保护敏感数据,且不会更改静态数据。

Bytebase的博客 1238

PostgreSQL动态数据脱敏实战:保护敏感数据的最佳实践

数据脱敏是数据库安全领域的关键技术,通过在查询时实时处理敏感信息,既保护原始数据又满足合规要求。PostgreSQL生态中的postgresql_anonymizer插件采用查询重写机制,实现低开销的列级脱敏控制,特别适合开发测试环境与数据分析场景。该方案支持姓名、电话、身份证等常见字段的灵活脱敏策略,结合角色权限管理可构建企业级数据安全体系。以移动云He3DB为例,动态脱敏技术解决了敏感数据保护与数据一致性维护的双重挑战,实测性能损耗控制在8%以内。

weixin_31421613的博客 298

PostgreSQL脱敏示例

mydb=# create table test_desensitization(id integer, name varchar(32), phone_num varchar(11)); CREATE TABLE mydb=# insert into test_desensitization select num, 'name_'||num, 18500000000+(rand...

dimawei2225的博客 873

postgresql客户名称脱敏

脱敏规则 1个字符,不脱敏; 2个字符,后一个字符脱敏; 3个字符,中间一个字符脱敏; 4个字符,中间两个字符脱敏; 超过4个字符,认为是政企客户,不做脱敏处理; postgresql函数实现 CREATE OR REPLACE FUNCTION f_59791_tm(str character varying) RETURNS character varying LANGUAGE plpgsql AS $function$ declare num numeric := length($1);

qq_33445829的博客 1804

PostgreSQL动态脱敏插件原理与实践指南

数据脱敏是数据库安全领域的核心技术,通过在保留数据特征的同时隐藏敏感信息,满足GDPR等合规要求。其实现原理主要依赖SQL重写和钩子函数机制,在查询执行阶段对结果集进行实时变形处理。postgresql_anonymizer作为PostgreSQL生态的成熟插件,同时支持动态脱敏和静态脱敏两种模式,可直接集成到He3DB等企业级数据库产品中。该技术特别适用于数据分析、测试数据生成等场景,能显著降低数据合规成本。通过内置的伪装、遮蔽、加密等算法,开发者无需改造现有SQL即可实现字段级隐私保护,其中动态脱敏方案

weixin_33146151的博客 246
上一篇: Star History 十月开源精选 |AI for Postgres
下一篇: Docker 犯下的三个致命错误:一号员工十周年的反思
Bytebase
博客等级 码龄5年 1348粉丝 258原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值