数据分类分级-敏感数据识别工程实践

简介: 在《数据分类分级-结构化数据识别与分类的算法实践》这篇文章中讲到了结构化数据识别与分类的算法实践,那么这些算法能力如何以标准产品的方式落地,并帮助客户解决在数据分类分级过程中遇到的各种问题呢?本文将站在工程的视角,结合我们的思考和经验,从整体的大框架上介绍用九智汇数据分类分级产品敏感数据识别技术方案和能力,希望对大家有所帮助,想了解细节的,欢迎通过公众号联系进行线下沟通。

《数据分类分级-结构化数据识别与分类的算法实践》这篇文章中讲到了结构化数据识别与分类的算法实践,那么这些算法能力如何以标准产品的方式落地,并帮助客户解决在数据分类分级过程中遇到的各种问题呢?本文将站在工程的视角,结合我们的思考和经验,从整体的大框架上介绍用九智汇数据分类分级产品敏感数据识别技术方案和能力,希望对大家有所帮助,想了解细节的,欢迎通过公众号联系进行线下沟通。

背景

       虽然整体上大家做分类分级的背景以及目标基本一致:满足监管要求;为数据合规和安全体系建设打好基础。但是实施落地的过程不尽相同,每个客户所处的行业不同,所要遵循的分类分级标准不同,同时每个客户的数据也是截然不同,定制化需求是普遍存在。

       当前一些业务模式相对简单的公司,使用excel的方式人工进行数据分类分级;规模更大业务更复杂的公司自研或采购第三方数据分类分级产品或服务。市场上大部分供应商采取产品+服务的方式服务客户,其中产品敏感识别能力较弱更多以运营功能为主,敏感数据识别更多的以人力服务的方式帮助客户进行梳理,虽然能满足监管要求,但是存在以下公认的问题:

       1、无法做到持续运营,交付的产物是基于当时的数据情况,后续新增数据要么需要人介入重新进行梳理,要么无法保证能够持续准确识别;

       2、准确率低或不稳定,特别是在数据元信息质量较低的情况;

       3、人力投入成本高。

       仅满足监管要求不是我们的终极目标,我们希望用九智汇分类分级产品在满足监管的前提下,为数据合规和数据安全打下坚实的基础,所以我们:

       1、采集样本数据,走样本数据为主、元数据为辅的技术路线,一方面可以保证已建设的识别能力可持续识别,另一方面准确率稳定性不受元数据质量影响;

       2、提供智能化、 无侵人、开箱即用的同时,打造易用、灵活、强大的自定义功能,满足客户的定制化需求,一方面降低交付成本,另一方面降低门槛让客户可以自助使用产品进行敏感数据识别。

实践方案

       如果没有系统或产品,纯人工来做数据分类分级,基本上大家完成这件事情的步骤都是:找数据在哪里 -> 梳理数据有哪些 -> 找敏感数据 -> 归类 -> 分级。同理,我们的产品也遵循这个思路,设计了一套标准的敏感数据识别流程,如下图:


       在这个流程中,每个节点我们代码层面的设计和实现都遵循可配置的原则,可以根据客户环境、现状和需求等情况调整配置进行适配。另外,尽可能的支持客户自定义,比如在“敏感数据识别”、“自动分类”、“自动审核”等节点我们都添加了易用的自定义功能,方便满足客户的定制化需求。

数据源扫描

       负责数据分类分级落地,碰到的首要问题肯定是:我们有哪些数据,这些数据在哪里,是否有遗漏的数据未找到?为此我们研发了数据源扫描器来帮助发现数据源,尽可能的帮助客户自动发现数据源,尽可能的不遗漏数据源,该扫描器目前具备以下两种能力:

       1、部署到指定网络环境内,扫描和探测网络环境内可能是数据存储的目标,比如可以通过扫描一些常用端口来发现关系数据库;

       2、按照要求给云账号的AK配置权限后,可以通过该AK拉取云账号的所有数据存储资源列表。

数据源集成

       当然除了上面提到的自动扫描,也可以通过输入endpoint手动添加数据源。自动扫描发现或手动添加的数据源,一般情况下是需要鉴权才能访问,这就需要我们找到对应负责人提供账号密码连接到数据源。产品特别提供了一个密钥对管理功能来来解决安全问题:

       1、加密存储鉴权信息(如账号密码),提升安全性;

       2、连接数据源无需直接输入鉴权信息,选择已经维护好的密钥对即可,有效减少接触到明文鉴权信息的人员,降低泄漏风险。

       另外产品交付过程中,实际上每个客户的数据源类型不一样,同种类型的数据源也会有不同版本,为此我们在数据源集成这里采用插件的设计,插件之间、插件和应用之间隔离运行,以帮助我们解决以下问题:

       1、同种类型的数据源,支持不同版本,避免不同版本连接驱动之间依赖冲突问题;

       2、应用无需直接依赖数据源驱动,避免大量数据源驱动依赖带来的各种冲突问题;

       3、满足客户数据源集成的定制化需求,不侵入应用代码。

       目前我们已经支持以下类型数据源:

       1、关系数据库:MySQL、ORACLE、SQLServer、达梦数据库、IBM DB2、MariaDB、PostgreSQL等;

       2、大数据平台:Hive、Maxcompute、ClickHouse、Hbase;

       3、文件存储:阿里云OSS、腾讯云COS、华为云OBS、AWS S3、Ceph、Minio;

       4、文档平台:语雀。

元数据同步

       在数据源连接成功之后,如果要搞清楚到底哪些数据,我们就需要读取数据源内部的结构比如表、字段、文件夹、文件的元信息,这些元信息主要有以下作用:

       1、为抽样提供参考依据,比如可以根据表的数据量采取不同的抽样方法,保证样本的随机性,以及降低对数据源的性能和稳定性影响;

       2、为敏感数据识别提供上下文,帮助进一步确定敏感数据类型,比如根据抽样数据我能确定该字段是姓名,但是如果有字段备注、字段名称、表名、表备注信息以及同表其他字段信息,就有可能进一步确定该字段是否是法人姓名。

       另外,稍微量级大一点的业务就会涉及分库分表,这也是在元数据同步要解决的问题,需要将分库分表的库、表进行合并,抽样的时候也需要考虑去不同的库、不同的的表进行抽样。

数据抽样

       数据抽样是一个体力活,也是一个技术活。说是体力活是因为每一种数据源类型甚至每一个类型的数据源版本可能抽样方法都不一样,需要单独做技术实现。说是技术活是因为无论是哪一种数据源类型,不仅要考虑能否抽到数据,还要保证:

       1、抽样数据的随机性和数量,只有这样才能保证识别准确率;

       2、抽样对数据源的性能和稳定性影响必须要做到最小,即使连接的备库,每个客户都非常在意这一点,如果在这一点无法取得客户信任,项目就非常难往前推进。

       即使解决了上面两个最重要的问题,还有保证抽样性能和稳定性,你可能会遇到以下问题:

       1、大数据平台(如Hive)抽样如果在保证样本随机性的情况下,不触发MR任务;

       2、上百亿的大表,如何进行抽样才能保证样本随机性、性能;

       3、大字段,单次抽太多肯定会引发IO问题,如何进行分批抽样;

       4、同步抽样肯定会存在超时问题,异步化或回调,哪种方式更好。

识别敏感数据

       敏感数据识别是整个流程中最核心的一个环节,也是算法同学发挥的舞台,首先是要把算法能力集成好,算法需要使用的能力涉及到:

       1、正则,由于会有大量的正则匹配,Java自带的正则能力是无法满足性能要求的,需要使用RE2或HyperScan;

       2、PMML,机器学习模型;

       3、ONNX,深度学习模型;

       4、NVIDIA Triton Server,推理服务,主要用于非结构化数据识别。

       由于每个客户所处的行业不一样,业务数据更是截然不同,为根据客户的数据现状实现更好识别效果以及满足客户的定制化需求,我们支持了可自助配置、训练的敏感数据识别能力:

       1、基与YAML格式标准化的识别逻辑配置能力,可自助研发识别能力并录入到产品中;

       2、自助配置规则树,基于规则树进行敏感数据识别;

       3、自助模型训练,目前已支持ID类型的结构化数据,图片、文档。

自动分类

       一般情况下,识别出某种类型敏感数据之后,就能根据映射关系映射到唯一的分类下,并映射到对应的分级,但是某些行业要求更高,比如证券行业,根据证券行业分类分级标准,同种类型的敏感数据可能需要再分类放到不同分类下,如要区分“姓名”是“个人投资者信息”还是“机构投资者法人信息”,这就需要我们在识别出某个字段是“姓名”之后进一步分类,这个时候我们可以根据以下信息进行分类:

       1、元信息,如字段名称、字段备注、表名称、表备注等;

       2、同表其他字段命中的敏感数据类型,比如如果同表其他字段有公司名称,那该字段属于“法人”的概率就更高。

       同时,分类的识别逻辑也基于YAML格式进行了标准化,可自助研发识别能力并录入到产品中。

自动审核

       机器自动识别,大家非常关注的就是准确率,很难做到100%准确,所以我们设置了一个置信度的概念,用来表示识别准确率。除了准确率,每个客户的肯定有一些自己的特殊情况,比如说某个客户每张表都有5个无任何业务含义的“id”、“gmt_create”、“gmt_modified”、“creator”、“modifier”、“is_deleted”字段,其中“creator”、“modifier”虽然是填的姓名,但是并不是敏感数据。为解决这类跟客户数据现状相关的特殊情况,我们特别提供了自定义规则能力,规则可以根据以下特征自动决策是否通过审核:

       1、命中的敏感数据类型,以及对应置信度;

       2、字段/文件的元信息,如文件名称、字段名称、字段备注等;

       3、字段/文件历史人工审核结果。

       以上就是本次分享的所有内容,在数据分类分级领域,用九智汇致力于推出智能化、无侵入、开箱即用的产品,同时提供易用、灵活、强大的自助配置能力,在帮助客户满足监管要求的前提下,为数据合规和分类分级打下坚实的基础。


阅读原文:数据分类分级-敏感数据识别工程实践

相关文章
|
数据采集 运维 供应链
数据的分类和分级
数据的分类和分级
1516 0
|
SQL 存储 数据采集
数据中台建设方法论
数据中台建设方法论
|
监控 安全 API
从WAF到WAAP的研究
从WAF到WAAP的研究
|
1月前
|
人工智能 自然语言处理 API
AI 变身股票分析师!OpenClaw阿里云/本地部署+集成股票 Skill,一键获取A股行情与潜力股推荐
OpenClaw(昵称“大龙虾”)的核心优势在于“既有AI的大脑,又有干活的双手”——它不仅能理解自然语言指令,更能通过Skill(技能)插件执行具体任务。对投资者而言,Stock-Analysis技能的出现彻底改变了传统股票分析模式:无需手动抓取数据、无需编写复杂脚本,仅需一句自然语言指令,就能让AI完成实时行情分析、板块筛选、潜力股推荐、早盘报告生成等专业操作,将原本需要数小时的分析工作压缩至分钟级。
4299 0
|
SQL 安全 数据处理
《敏感数据的保护伞:SQL数据脱敏全解析》
在数据驱动的时代,敏感数据的安全保护至关重要,而数据脱敏成为关键解决方案。数据脱敏通过特定算法将敏感信息转化为低风险数据,既保障安全又保留数据价值。SQL作为强大的数据处理语言,在数据脱敏中发挥核心作用,从查询、更新到转换,提供全流程技术支持。本文深入探讨数据脱敏的概念、重要性及实施步骤,结合SQL功能解析实际应用,并分析性能优化、复杂逻辑处理及合规性保障等挑战与策略,为数据安全筑起坚实防线。
510 27
|
SQL 分布式计算 Hadoop
百川终入海 ,一站式海量数据迁移工具 X2Doris 正式发布
在这一过程中,如何将海量历史数据进行高效迁移成为用户的痛点所在。基于这一目标,我们启动了名为“百川入海”的专项开发任务,开发了**一站式海量数据迁移工具 X2Doris**,集自动建表和数据迁移于一体、提供了对 Apache Hive、ClickHouse、Apache Kudu 以及 StarRocks 等多个数据源的支持,全程界面化、可视化操作,仅通过鼠标操作即可完成大规模数据同步至 Doris 中,并提供了极速和稳定的迁移体验。在经过数个月的公开测试和近百家企业的打磨后,今天我们很高兴地宣布, **X2Doris 正式发布、面向所有社区用户免费下载使用**,数据迁移至 Apache Do
858 0
百川终入海 ,一站式海量数据迁移工具 X2Doris 正式发布
|
边缘计算 物联网 开发者
2024年提升开发效率的十大技巧
2024年,软件开发领域持续快速发展,新技术和工具层出不穷。本文总结了十大提升开发效率的技巧,包括精通Git Hooks自动化流程、利用Docker容器化技术、拥抱无代码/低代码平台、集成AI/ML、关注IoT、重视网络安全、采用云原生开发和微服务架构、探索边缘计算、利用AR和即时应用技术,以及参与开源软件项目。这些技巧旨在帮助开发者适应技术变革,提高工作效率。
|
数据采集 算法 关系型数据库
数据分类分级实践难点
数据分类分级是开展数据全生命周期管理的基础,企业做好数据分类分级才能更好地去落实合规义务以及进行数据安全管控。今天,我们从数据分类分级落地实践的角度,来阐述企业在开展数据分类分级过程中的难点以及如何“破局”。
975 1
|
Kubernetes 负载均衡 安全
【K8S系列】深入解析k8s 网络插件—Antrea
【K8S系列】深入解析k8s 网络插件—Antrea
1311 0
|
人工智能 自然语言处理 前端开发
关于ToB垂直领域大模型的一点探索和尝试
本文分享了物流技术团队在垂直领域大模型开发和部署过程中的技术细节、挑战解决策略以及实际应用案例。