【数据库】信息数据脱敏处理
实验名称:信息数据脱敏处理
实验目的:
利用python后端代码处理对从数据库调取的信息进行脱敏处理,保证用户个人信息的安全。
实验环境:
数据库环境:phpstudy集成数据库环境
登录地址:192.168.184.152 登录账户:root 登录密码:123456 ( 虚拟机中内网部署环境)
编写 语言:python
操作 环境:window11操作系统
操作 软件:vscode
实验过程:
1.开启数据库
我们在虚拟机安装部署好phpstudy环境,配置好数据库,并开启远程登录服务权限;
并且在数据库中创建并写入我们实验所需要的数据(如图所示),关于环境的搭建,在这里就不做过多赘述,后面会补充一篇关于数据库环境部署的操作记录;

2.关于pymysql库的下载获取
电脑第一次使用时可能会因为计算机本地没有安装python的库,所以我们需要下载这个库;操作如下:
打开计算机cmd窗口,输入 pip install pymysql 即可下载这个库文件;

3.编写python程序
我们打开VScode,编写代码连接到数据库并且查询对应数据中的内容并通过终端打印出来;

import pymysql
db = pymysql.connect(host="192.168.184.152", user="root",password="123456",database="lzh")
connect = db.cursor(cursor=pymysql.cursors.DictCursor)
sql = "select id,saleNo,saleName,sex from seller;"
connect.execute(sql)
data = connect.fetchall()
for i in data:
print (
"|",i["id"],"|",i["saleNo"],"|",i["saleName"],"|",i["sex"]
import pymysql
db = pymysql.connect(host="192.168.184.152", user="root",password="123456",database="lzh")
connect = db.cursor(cursor=pymysql.cursors.DictCursor)
sql = "select id,saleNo,saleName,sex from seller;"
connect.execute(sql)
data = connect.fetchall()
for i in data:
print (
"|",i["id"],"|",i["saleNo"],"|",i["saleName"],"|",i["sex"]
运行结果:

在这里我们可以看到通过执行我们编写的python程序已经查询到了我们数据库中的数据信息,包括id、编号、姓名、性别这些存储在数据库中信息数据。
但是为了数据安全与个人隐私信息不被泄露,我们在对外展示信息数据的时候就需要对数据进行脱敏处理,这样做可以有效的保证个人信息安全;
4.接下来我们对代码中的sql查询语句进行修改数据再一次输出;

import pymysql
#加载pymysql库
db = pymysql.connect(host="192.168.184.152", user="root",password="123456",database="lzh")
# 配置数据库信息(主机,登录账户,登录密码,查询数据库)
connect = db.cursor(cursor=pymysql.cursors.DictCursor)
#调用数据库
connect.execute("select id, replace(saleNo,substr(saleNo,2),'*'),replace(saleName,substr(saleName,2,1),'*'),sex from seller;")
#查询数据库信息
data = connect.fetchall()
for i in data:
print (
"|",i['id'],i["replace(saleNo,substr(saleNo,2),'*')"], "|",i["replace(saleName,substr(saleName,2,1),'*')"],"|", i["sex"],
)
#输出内容信息
import pymysql
#加载pymysql库
db = pymysql.connect(host="192.168.184.152", user="root",password="123456",database="lzh")
# 配置数据库信息(主机,登录账户,登录密码,查询数据库)
connect = db.cursor(cursor=pymysql.cursors.DictCursor)
#调用数据库
connect.execute("select id, replace(saleNo,substr(saleNo,2),'*'),replace(saleName,substr(saleName,2,1),'*'),sex from seller;")
#查询数据库信息
data = connect.fetchall()
for i in data:
print (
"|",i['id'],i["replace(saleNo,substr(saleNo,2),'*')"], "|",i["replace(saleName,substr(saleName,2,1),'*')"],"|", i["sex"],
)
#输出内容信息
5.这时我们执行python代码输出结果

这个时候我们就已经对目标信息进行了脱敏处理;
分类:
数据库
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通