企业如何遵守数据安全法规进行SAP数据脱敏处理?

为什么谈SAP数据脱敏?
SAP进入中国市场超过30年,作为一个典型的德国思维的产品,我们很难找到另一个市值这么大的软件,在过去的几十年中,一直活的这么滋润,没有太多的挑战,而且软件本身的变化肉眼可见的不大。

但近年来,这个固有的套路不断的被挑战,背后的推手有很多,我个人理解较大有两个。一个是AI的技术,使得传统SAP顾问不敢去想的一些功能,例如预测性分析,自然语言处理(NLP),图像识别,RPA,Machine Learning,AI驱动的业务流程优化等等,变成了可能,另一个是数据治理和隐私保护的日益重视。不管是法律法规还是大家的意识,都需要实现更先进的数据治理和隐私保护功能,以确保数据的质量、安全和合规性。

本篇是个知识分享篇,更多的是想借助团队刚刚完成的SAP数据脱敏的项目,聊聊相关的业务需求,系统架构和技术实现的关键点。

SAP数据脱敏的需求有哪些
这里不去谈什么高大上的定义和论述。更多的引述我们实际项目的需求。

第一个项目,一个体量庞大的德国S记跨国集团,需要把一块业务板块整体切割出去,属于Carve Out 项目。切出去的系统除了SAP,还有若干个其他系统,SAP是这些系统的骨干系统(Backbone system)。项目的公司代码拆分部分,和第三方系统与SAP集成部分,都需要有大量的业务数据来支撑测试。因此,项目组同事以生产机为源系统(Source System),刷新(System Refresh)了一个新的系统,其中只包含待切出业务板块的数据。以这个新系统为测试系统,提供给各路人马进行集成及测试工作。但这个德国企业严格遵循GDPR的要求,这个测试系统的数据必须对敏感数据进行脱敏操作。待处理的数据主要是员工的个人信息(包含姓名,生日,住址,银行信息,联系方式,个人薪资,个人合同等等)。

第二个项目,是日本的一家生产办公用品的A记公司。该公司需要升级SAP系统,并集成更多的外围系统。与S记公司类似,A记公司也准备了包含生产机数据的测试系统。A记公司希望,除了员工数据,也希望对BP数据进行脱敏工作。

SAP数据脱敏的工具
市场上有几款能完成SAP数据脱敏的工具产品。下面主要是介绍是SNP公司的TDO工具技术路径讲解和截图。

SAP数据脱敏的关键要点 – 系统架构
考虑到方案的严谨性和运作的持续性,用源系统-控制机-目标系统的三位一体的架构更好。 架构可以参照一下图例:

中间的Cockpit 控制机可以装在SOLMAN上,如果SOLMAN条件不具备,也可以装在源系统上。上述的功能点可以通过在安装过程中引入TR的方式来实现。在此过程中,也需要注意权限的管控。

SAP数据脱敏的关键要点 – 敏感数据的池化数据(Pool Data)
举个例子说明这个要点。某员工的家庭住址信息需要脱敏,他的住址是上海市浦东新区金海路x弄x号,邮编201209。我们怎样做一个masking,用一个新的地址去替换呢?

我们不能用同一个地址强行付给所有的员工(或者BP),例如,北京市东长安街天安门广场。 这个不太严谨,而且后续的一些业务流程也需要要到地址信息。

我们也不能用太虚假或自相矛盾的一个masking 数据,例如,我们不能有一个地址是类似是天津市凯达格兰大道这样的。还例如,我们在脱敏员工姓名及性别数据时,不能太多的出现,姓名王金刚,性别女这样的数据。

脱敏的目标是,以假乱真。数据本身要合理严谨完整。

SNP TDO中提供了Pool table的模板及部分数据。模板参见下图列表

我们以第一个pool table,address data啊(地址信息)为例。我们可以运行程序上载SAP中的PA0006表,或者BUT***表中的地址信息,可以在SE16中直接维护这张表(/SNP/CM05ADRPOOL)内容。我们维护的结果如下(仅供示例之用)。

有了这张表,我们做data masking就有准星了。我们可以从这张表中,由程序随机挑选一条数据去替换员工的正式地址数据。当然在实际项目中,我们可以选择国家是否要替换,城市是否要替换。Masking程序会带入这些选择条件在Pool Table中随机找到满足条件的记录来完成替换。

另外多说一句,这个随机替换,有Random的实现,也有Hash实现。这个是底层技术,不清楚这个算法的同学直接跳过。但结果是确定的,就是SAP用户们不可能根据新的地址去猜到这个员工(或者BP)是谁,或者他的真实地址是哪一个。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/357358.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java-Swing

Swing 课程:14、Swing之JFrame窗体_哔哩哔哩_bilibili 一.JFrame和容器 构造方法 Constructor and DescriptionJFrame() 构造一个最初不可见的新框架。 JFrame(GraphicsConfiguration gc) 在屏幕设备的指定 GraphicsConfiguration中创建一个 Frame和一个空白标题。…

Linux系统——正则表达式

有一段时间本机访问量过高,如何查看日志提取出访问量前十的信息 1.使用提取命令(cut、awk、sed)提取出ip地址的那一列 2.使用sort按数字排序,将相同的地址整合到一起 3.使用uniq -c统计出数量 4.使用sort 数字 数字倒序排序 5.最…

使用OpenCV实现一个简单的实时人脸跟踪

简介: 这个项目将通过使用OpenCV库来进行实时人脸跟踪。实时人脸跟踪是一项在实际应用中非常有用的技术,如视频通话、智能监控等。我们将使用OpenCV中的VideoCapture()函数来读取视频流,并使用之前加载的Haar特征级联分类器来进行人脸跟踪。 …

[React源码解析] Fiber

在React15及以前, Reconciler采用递归的方式创建虚拟Dom, 但是递归过程不可以中断, 如果组件的层级比较深的话, 递归会占用线程很多时间, 那么会造成卡顿。 为了解决这个问题, React16将递归的无法中断的更新重构为异步的可中断更新, Fiber架构诞生。 文章目录 1.Fiber的结构2…

22.云原生之GitLab CICD实战及解析【干货】

云原生专栏大纲 文章目录 准备工作gitlab-ci.yml流水线mven打包项目制作并推送镜像kaniko方式docker方式 部署到k8s验证执行情况 GitLab Runner k8s执行器工作流程注册配置kubernetes runnerkubernetes runner配置通过修改 Pod 规范为每个构建作业创建一个 PVC自定义卷装载持久…

C++ Qt开发:运用QJSON模块解析数据

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QJson组件的实现对JSON文本的灵活解析…

【python】求矩阵的特征值和特征向量

使用np.linalg.eig同时求特征值和特征向量 import numpy as np#输入矩阵 A np.array([[1, 1/2, 1/6, 1/9],[2, 1, 1/3, 1/5],[6, 3,1,1/2],[9, 5,2,1]])#求解特征值和其对应的特征向量 eigval,eigvec np.linalg.eig(A) for i in range(len(eigval)):print(f特征值&#xff1a…

Flask使用Jinja2渲染模版使用变量实战

前言: Flask 使用 Jinja2 作为其默认模板引擎,这意味着您可以直接在 Flask 应用程序中使用 Jinja2 模板。您可以创建模板文件,然后在视图函数中渲染这些模板,将动态数据传递给模板进行渲染,并最终生成最终的 HTML 页面…

349. 两个数组的交集(力扣LeetCode)

文章目录 349. 两个数组的交集题目描述数组解题set容器解题该思路数组版解题 349. 两个数组的交集 题目描述 给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入&a…

MATLAB知识点:创建MATLAB的脚本

​讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili 节选自第2章 在实际应用中,直接在命令行窗口中输…

Phoncent博客,探索Rie Kudan的GPT创作之举

近日,大家都在谈论日本作家Rie Kudan,她凭借其小说《东京共鸣塔》("Tokyo-to Dojo-to")荣获了日本极具声望的芥川奖。这本小说引起了广泛的讨论和思考,因为令人惊讶的是,Kudan在其中直接引用了人…

伊恩·斯图尔特《改变世界的17个方程》毕达哥拉斯定理笔记

它告诉我们什么? 直角三角形的三个边之间有什么关系。 为什么重要? 它提供了几何和代数之间的重要联系,使我们能够根据坐标计算距离。它也催生出了三角学。 它带来了什么? 测绘、导航,以及较近代出现的狭义和广义相对论…

solr的原理是什么

1 Java程序里如果有无限for循环的代码导致CPU负载超高,如何排查? 排查Java程序中由于无限循环导致的CPU负载过高的问题,可以按照以下步骤进行: 资源监控: 使用系统命令行工具(如Linux上的top或htop&#xf…

Pytest 识别case规则

一、Python测试框架,主要特点有以下几点: 简单灵活,容易上手;支持参数化;能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytestrequests…

JavaWeb中的Filter(过滤器)和 Listener(监听器)

提示:这两个东西听起来似乎很难,实际上是非常简单的,按照要求写就行了,一定不要被新名词给吓到了。 JavaWeb中的Filter(过滤器) 一、Filter(过滤器)1.如何编写 Filter2.Filter 中的细…

翻译: GPT-4 Vision征服LLM幻觉hallucinations 升级Streamlit六

GPT-4 Vision 系列: 翻译: GPT-4 with Vision 升级 Streamlit 应用程序的 7 种方式一翻译: GPT-4 with Vision 升级 Streamlit 应用程序的 7 种方式二翻译: GPT-4 Vision静态图表转换为动态数据可视化 升级Streamlit 三翻译: GPT-4 Vision从图像转换为完全可编辑的表格 升级St…

探索Pyecharts:绘制多彩日历图的艺术与技巧

Pyecharts绘制多种炫酷日历图参数说明代码实战 导言 在数据可视化领域,日历图是一种直观展示时间和数据关系的方式。Pyecharts是一个基于Echarts的Python库,可以方便地绘制各种图表,包括炫酷的日历图。本篇博客将介绍Pyecharts中绘制多种炫…

Maya---补洞 桥接 连接

14.maya常用命令4.补洞 桥接 连接_哔哩哔哩_bilibili 边模式下: shift右键--->填充洞 对象模式下,可一次填充多个洞 桥接 连接工具 ctrlshift右键

SNP干货分享:SAP数据脱敏的具体实施步骤

随着信息技术的飞速发展,大数据时代的到来使得数据成为国家经济、企业竞争力和个人隐私的重要载体。在这种背景下,数据安全问题日益凸显,各国政府纷纷出台相关法规以保护数据安全。我国也不断完善数据安全法规体系,以确保国家利益…

HCIA-Datacom实验指导手册:4.1 实验一:访问控制列表配置实验,fragment分片acl演示。

HCIA-Datacom实验指导手册:4.1 实验一:访问控制列表配置实验 一、实验介绍:二、实验拓扑:三、实验目的:四、配置步骤:步骤 1 掌握ACL的配置方法 配置方法步骤 2 掌握 ACL在接口下应用方法步骤 3 掌握 流量过滤 的基本方式步骤 4 掌握 禁止分片报文通过的方法验证五、结果…