fujian_water_biz_doc/output/06_Sensitive_Data_Encryption.html

708 lines
32 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<meta name="author" content="系统设计团队" />
<title>福建水务营收系统-敏感数据加密方案</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
div.columns{display: flex; gap: min(4vw, 1.5em);}
div.column{flex: auto; overflow-x: auto;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
/* The extra [class] is a hack that increases specificity enough to
override a similar rule in reveal.js */
ul.task-list[class]{list-style: none;}
ul.task-list li input[type="checkbox"] {
font-size: inherit;
width: 0.8em;
margin: 0 0.8em 0.2em -1.6em;
vertical-align: middle;
}
.display.math{display: block; text-align: center; margin: 0.5rem auto;}
</style>
<link rel="stylesheet" href="output/document_style.css" />
<meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<header id="title-block-header">
<h1 class="title">福建水务营收系统-敏感数据加密方案</h1>
<p class="author">系统设计团队</p>
<p class="date">2024年12月19日</p>
</header>
<nav id="TOC" role="doc-toc">
<ul>
<li><a href="#用户敏感数据加密存储技术方案"
id="toc-用户敏感数据加密存储技术方案"><span
class="toc-section-number">1</span> 用户敏感数据加密存储技术方案</a>
<ul>
<li><a href="#文档信息" id="toc-文档信息"><span
class="toc-section-number">1.1</span> 文档信息</a></li>
<li><a href="#一方案背景" id="toc-一方案背景"><span
class="toc-section-number">1.2</span> 一、方案背景</a>
<ul>
<li><a href="#为什么要做加密" id="toc-为什么要做加密"><span
class="toc-section-number">1.2.1</span> 为什么要做加密?</a></li>
<li><a href="#涉及哪些数据" id="toc-涉及哪些数据"><span
class="toc-section-number">1.2.2</span> 涉及哪些数据?</a></li>
</ul></li>
<li><a href="#二技术方案概述" id="toc-二技术方案概述"><span
class="toc-section-number">1.3</span> 二、技术方案概述</a>
<ul>
<li><a href="#核心思路" id="toc-核心思路"><span
class="toc-section-number">1.3.1</span> 核心思路</a></li>
<li><a href="#采用的技术" id="toc-采用的技术"><span
class="toc-section-number">1.3.2</span> 采用的技术</a></li>
</ul></li>
<li><a href="#三加密存储方案" id="toc-三加密存储方案"><span
class="toc-section-number">1.4</span> 三、加密存储方案</a>
<ul>
<li><a href="#加密前后对比" id="toc-加密前后对比"><span
class="toc-section-number">1.4.1</span> 加密前后对比</a></li>
<li><a href="#mybatis-plus-加密插件原理"
id="toc-mybatis-plus-加密插件原理"><span
class="toc-section-number">1.4.2</span> MyBatis-Plus
加密插件原理</a></li>
</ul></li>
<li><a href="#四搜索功能方案" id="toc-四搜索功能方案"><span
class="toc-section-number">1.5</span> 四、搜索功能方案</a>
<ul>
<li><a href="#为什么加密后还能搜索" id="toc-为什么加密后还能搜索"><span
class="toc-section-number">1.5.1</span> 为什么加密后还能搜索?</a></li>
<li><a href="#支持的查询类型" id="toc-支持的查询类型"><span
class="toc-section-number">1.5.2</span> 支持的查询类型</a></li>
<li><a href="#查询流程示例" id="toc-查询流程示例"><span
class="toc-section-number">1.5.3</span> 查询流程示例</a></li>
</ul></li>
<li><a href="#五数据库表设计" id="toc-五数据库表设计"><span
class="toc-section-number">1.6</span> 五、数据库表设计</a>
<ul>
<li><a href="#表结构说明" id="toc-表结构说明"><span
class="toc-section-number">1.6.1</span> 表结构说明</a></li>
<li><a href="#字段对照表" id="toc-字段对照表"><span
class="toc-section-number">1.6.2</span> 字段对照表</a></li>
</ul></li>
<li><a href="#六等保符合性说明" id="toc-六等保符合性说明"><span
class="toc-section-number">1.7</span> 六、等保符合性说明</a>
<ul>
<li><a href="#安全控制措施对照" id="toc-安全控制措施对照"><span
class="toc-section-number">1.7.1</span> 安全控制措施对照</a></li>
<li><a href="#安全架构" id="toc-安全架构"><span
class="toc-section-number">1.7.2</span> 安全架构</a></li>
</ul></li>
<li><a href="#七实施计划" id="toc-七实施计划"><span
class="toc-section-number">1.8</span> 七、实施计划</a>
<ul>
<li><a href="#实施时间表" id="toc-实施时间表"><span
class="toc-section-number">1.8.1</span> 实施时间表</a></li>
<li><a href="#实施步骤" id="toc-实施步骤"><span
class="toc-section-number">1.8.2</span> 实施步骤</a></li>
</ul></li>
<li><a href="#八风险控制" id="toc-八风险控制"><span
class="toc-section-number">1.9</span> 八、风险控制</a>
<ul>
<li><a href="#风险识别与应对" id="toc-风险识别与应对"><span
class="toc-section-number">1.9.1</span> 风险识别与应对</a></li>
<li><a href="#应急预案" id="toc-应急预案"><span
class="toc-section-number">1.9.2</span> 应急预案</a></li>
</ul></li>
<li><a href="#九方案优势总结" id="toc-九方案优势总结"><span
class="toc-section-number">1.10</span> 九、方案优势总结</a>
<ul>
<li><a href="#核心优势" id="toc-核心优势"><span
class="toc-section-number">1.10.1</span> 核心优势</a></li>
<li><a href="#投入产出分析" id="toc-投入产出分析"><span
class="toc-section-number">1.10.2</span> 投入产出分析</a></li>
</ul></li>
<li><a href="#十结论与建议" id="toc-十结论与建议"><span
class="toc-section-number">1.11</span> 十、结论与建议</a>
<ul>
<li><a href="#方案结论" id="toc-方案结论"><span
class="toc-section-number">1.11.1</span> 方案结论</a></li>
<li><a href="#建议" id="toc-建议"><span
class="toc-section-number">1.11.2</span> 建议</a></li>
</ul></li>
</ul></li>
</ul>
</nav>
<h1 data-number="1" id="用户敏感数据加密存储技术方案"><span
class="header-section-number">1</span> 用户敏感数据加密存储技术方案</h1>
<h2 data-number="1.1" id="文档信息"><span
class="header-section-number">1.1</span> 文档信息</h2>
<table>
<thead>
<tr>
<th>项目信息</th>
<th>详情</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>项目名称</strong></td>
<td>福建水务营收系统</td>
</tr>
<tr>
<td><strong>文档类型</strong></td>
<td>技术方案汇报</td>
</tr>
<tr>
<td><strong>适用范围</strong></td>
<td>用户个人信息加密存储与搜索</td>
</tr>
<tr>
<td><strong>编写日期</strong></td>
<td>2025年12月</td>
</tr>
<tr>
<td><strong>文档版本</strong></td>
<td>V1.0</td>
</tr>
</tbody>
</table>
<hr />
<h2 data-number="1.2" id="一方案背景"><span
class="header-section-number">1.2</span> 一、方案背景</h2>
<h3 data-number="1.2.1" id="为什么要做加密"><span
class="header-section-number">1.2.1</span> 为什么要做加密?</h3>
<p>根据<strong>等保测评要求</strong>,用户的敏感个人信息(身份证、手机号、银行卡等)必须<strong>加密存储</strong>,否则无法通过安全检查。</p>
<pre class="text"><code> ┌─────────────────────────────────────┐
│ 等保测评要求 │
└─────────────────────────────────────┘
┌──────────────────────────────┼──────────────────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ 存储加密 │ │ 传输加密 │ │ 访问控制 │
│ ✓ 必须做 │ │ ✓ 已完成 │ │ ✓ 已完成 │
└───────────────┘ └───────────────┘ └───────────────┘</code></pre>
<h3 data-number="1.2.2" id="涉及哪些数据"><span
class="header-section-number">1.2.2</span> 涉及哪些数据?</h3>
<table>
<thead>
<tr>
<th>敏感数据类型</th>
<th>示例</th>
<th>加密要求</th>
</tr>
</thead>
<tbody>
<tr>
<td>身份证号</td>
<td>350xxx19900101xxxx</td>
<td>✅ 必须加密</td>
</tr>
<tr>
<td>手机号</td>
<td>138xxxx8888</td>
<td>✅ 必须加密</td>
</tr>
<tr>
<td>银行卡号</td>
<td>6222xxxxxxxx1234</td>
<td>✅ 必须加密</td>
</tr>
<tr>
<td>邮箱地址</td>
<td>xxx@xxx.com</td>
<td>✅ 必须加密</td>
</tr>
<tr>
<td>真实姓名</td>
<td>张xx</td>
<td>✅ 必须加密</td>
</tr>
</tbody>
</table>
<hr />
<h2 data-number="1.3" id="二技术方案概述"><span
class="header-section-number">1.3</span> 二、技术方案概述</h2>
<h3 data-number="1.3.1" id="核心思路"><span
class="header-section-number">1.3.1</span> 核心思路</h3>
<p><strong>“先加密存储,再建立索引”</strong> ——
既保证安全,又保证能搜索</p>
<pre class="text"><code>┌─────────────────────────────────────────────────────────────────────┐
│ 技术方案整体架构 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 应用层 │ ──────► │ 加密插件 │ ──────► │ 数据库 │ │
│ │ (业务代码) │ │(MyBatis-Plus)│ │ (加密存储) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ 搜索索引 │ │
│ │ (支持查询) │ │
│ └─────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘</code></pre>
<h3 data-number="1.3.2" id="采用的技术"><span
class="header-section-number">1.3.2</span> 采用的技术</h3>
<table>
<colgroup>
<col style="width: 37%" />
<col style="width: 25%" />
<col style="width: 37%" />
</colgroup>
<thead>
<tr>
<th>技术组件</th>
<th>说明</th>
<th>选择理由</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>MyBatis-Plus 加密插件</strong></td>
<td>自动对数据进行加密和解密</td>
<td>框架自带功能,改造成本低</td>
</tr>
<tr>
<td><strong>SM4 加密算法</strong></td>
<td>国产加密算法,符合等保要求</td>
<td>安全等级高,符合等保要求</td>
</tr>
<tr>
<td><strong>搜索索引技术</strong></td>
<td>支持加密后的数据查询</td>
<td>保证业务搜索功能正常使用</td>
</tr>
</tbody>
</table>
<hr />
<h2 data-number="1.4" id="三加密存储方案"><span
class="header-section-number">1.4</span> 三、加密存储方案</h2>
<h3 data-number="1.4.1" id="加密前后对比"><span
class="header-section-number">1.4.1</span> 加密前后对比</h3>
<p><strong>加密前(明文存储,不安全):</strong> | id | real_name |
id_card | phone | |—-|———–|———|——-| | 1 | 张三 | 350102199001011234 |
13812345678 |</p>
<p><strong>加密后(密文存储,安全):</strong> | id | real_name |
id_card | phone | |—-|———–|———|——-| | 1 | aGF4ZmRz… | YmVydGlu… |
c2VjdXJl… |</p>
<h3 data-number="1.4.2" id="mybatis-plus-加密插件原理"><span
class="header-section-number">1.4.2</span> MyBatis-Plus
加密插件原理</h3>
<pre class="text"><code> 【自动加密/解密流程】
┌──────────┐ ┌──────────┐
│ 保存数据 │ │ 查询数据 │
└────┬─────┘ └────┬─────┘
│ │
▼ ▼
┌──────────┐ ┌──────────┐
│ 明文数据 │ │ 密文数据 │
│ 张三 │ │ aGF4ZmRz │
└────┬─────┘ └────┬─────┘
│ │
│ 【加密插件自动处理】 │ 【加密插件自动处理】
│ │
▼ ▼
┌──────────┐ ┌──────────┐
│ 密文数据 │ │ 明文数据 │
│ aGF4ZmRz │ │ 张三 │
└────┬─────┘ └────┬─────┘
│ │
▼ ▼
┌──────────┐ ┌──────────┐
│ 数据库 │ ◄────────────────────────── │ 数据库 │
└──────────┘ └──────────┘</code></pre>
<p><strong>优势说明:</strong> - ✅ <strong>对业务代码透明</strong> ——
开发人员无需修改业务逻辑 - ✅ <strong>自动加密解密</strong> ——
框架自动处理,不易出错 - ✅ <strong>改造成本低</strong> ——
只需添加配置和注解</p>
<hr />
<h2 data-number="1.5" id="四搜索功能方案"><span
class="header-section-number">1.5</span> 四、搜索功能方案</h2>
<h3 data-number="1.5.1" id="为什么加密后还能搜索"><span
class="header-section-number">1.5.1</span> 为什么加密后还能搜索?</h3>
<p>加密后的数据是乱码无法直接用SQL的 <code>LIKE</code>
查询。我们的解决方案是:<strong>建立搜索索引</strong></p>
<pre class="text"><code>┌───────────────────────────────────────────────────────────────────┐
│ 搜索索引设计思路 │
├───────────────────────────────────────────────────────────────────┤
│ │
│ 原始数据 索引数据 用途 │
│ ────── ────── ──── │
│ 身份证350102199001011234 ➜ 哈希值a1b2c3... 精确查询 │
│ 手机号13812345678 ➜ 前7位1381234 前缀查询 │
│ 姓名:张三 ➜ 拼音zhangsan 模糊查询 │
│ │
└───────────────────────────────────────────────────────────────────┘</code></pre>
<h3 data-number="1.5.2" id="支持的查询类型"><span
class="header-section-number">1.5.2</span> 支持的查询类型</h3>
<table>
<thead>
<tr>
<th>查询类型</th>
<th>适用场景</th>
<th>实现方式</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>精确查询</strong></td>
<td>身份证查用户</td>
<td>哈希索引(完全匹配)</td>
</tr>
<tr>
<td><strong>前缀查询</strong></td>
<td>手机号前几位</td>
<td>前缀索引(部分匹配)</td>
</tr>
<tr>
<td><strong>模糊查询</strong></td>
<td>姓名搜索</td>
<td>拼音索引(支持模糊)</td>
</tr>
</tbody>
</table>
<h3 data-number="1.5.3" id="查询流程示例"><span
class="header-section-number">1.5.3</span> 查询流程示例</h3>
<p><strong>场景:根据身份证号查询用户</strong></p>
<pre class="text"><code>用户输入身份证号
┌──────────────┐
│ 计算哈希索引 │ ──────► a1b2c3d4e5...
└──────────────┘
┌──────────────┐
│ 查询索引字段 │ ──────► SELECT * FROM user WHERE id_card_hash = &#39;a1b2c3d4e5...&#39;
└──────────────┘
┌──────────────┐
│ 返回匹配记录 │ ──────► 找到用户张三
└──────────────┘</code></pre>
<hr />
<h2 data-number="1.6" id="五数据库表设计"><span
class="header-section-number">1.6</span> 五、数据库表设计</h2>
<h3 data-number="1.6.1" id="表结构说明"><span
class="header-section-number">1.6.1</span> 表结构说明</h3>
<pre class="text"><code>┌─────────────────────────────────────────────────────────────────────┐
│ 用户信息表 (user_info) │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ 【加密存储的字段】 【搜索索引字段】 │
│ ──────────────── ──────────────── │
│ • real_name真实姓名 • id_card_hash身份证哈希
│ • id_card身份证号 • phone_prefix手机号前缀
│ • phone手机号 • name_pinyin姓名拼音
│ • email邮箱 • bank_card_prefix银行卡前缀
│ • bank_card银行卡号
│ │
└─────────────────────────────────────────────────────────────────────┘</code></pre>
<h3 data-number="1.6.2" id="字段对照表"><span
class="header-section-number">1.6.2</span> 字段对照表</h3>
<table>
<thead>
<tr>
<th>敏感字段</th>
<th>存储方式</th>
<th>对应索引字段</th>
<th>索引用途</th>
</tr>
</thead>
<tbody>
<tr>
<td>id_card</td>
<td>SM4加密</td>
<td>id_card_hash</td>
<td>精确匹配</td>
</tr>
<tr>
<td>phone</td>
<td>SM4加密</td>
<td>phone_prefix</td>
<td>前缀查询</td>
</tr>
<tr>
<td>real_name</td>
<td>SM4加密</td>
<td>name_pinyin</td>
<td>模糊搜索</td>
</tr>
<tr>
<td>bank_card</td>
<td>SM4加密</td>
<td>bank_card_prefix</td>
<td>前缀查询</td>
</tr>
<tr>
<td>email</td>
<td>SM4加密</td>
<td></td>
<td>不支持搜索</td>
</tr>
</tbody>
</table>
<hr />
<h2 data-number="1.7" id="六等保符合性说明"><span
class="header-section-number">1.7</span> 六、等保符合性说明</h2>
<h3 data-number="1.7.1" id="安全控制措施对照"><span
class="header-section-number">1.7.1</span> 安全控制措施对照</h3>
<table>
<thead>
<tr>
<th>等保要求</th>
<th>我们的方案</th>
<th>符合性</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>个人信息加密存储</strong></td>
<td>SM4算法加密</td>
<td>✅ 完全符合</td>
</tr>
<tr>
<td><strong>数据传输安全</strong></td>
<td>HTTPS + 加密字段</td>
<td>✅ 完全符合</td>
</tr>
<tr>
<td><strong>访问权限控制</strong></td>
<td>数据库权限 + 应用权限</td>
<td>✅ 完全符合</td>
</tr>
<tr>
<td><strong>安全审计</strong></td>
<td>操作日志 + 加解密审计</td>
<td>✅ 完全符合</td>
</tr>
<tr>
<td><strong>密钥安全管理</strong></td>
<td>配置加密 + 独立存储</td>
<td>✅ 完全符合</td>
</tr>
</tbody>
</table>
<h3 data-number="1.7.2" id="安全架构"><span
class="header-section-number">1.7.2</span> 安全架构</h3>
<pre class="text"><code> ┌─────────────────────────────────────┐
│ 密钥管理中心 │
│ (独立安全存储) │
└─────────────────────────────────────┘
│ 获取密钥
┌─────────────┐ HTTPS ┌─────────────────┐ 加密写入 ┌─────────────┐
│ 前端应用 │ ────────► │ 应用服务器 │ ────────────► │ 数据库 │
│ │ ◄──────── │ (加密/解密) │ ◄──────────── │ (密文存储) │
└─────────────┘ 脱敏显示 └─────────────────┘ 解密读取 └─────────────┘
┌─────────────────────────────────────┐
│ 审计日志系统 │
│ (记录所有操作) │
└─────────────────────────────────────┘</code></pre>
<hr />
<h2 data-number="1.8" id="七实施计划"><span
class="header-section-number">1.8</span> 七、实施计划</h2>
<h3 data-number="1.8.1" id="实施时间表"><span
class="header-section-number">1.8.1</span> 实施时间表</h3>
<table>
<thead>
<tr>
<th>阶段</th>
<th>工作内容</th>
<th>时间</th>
<th>负责人</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>第一阶段</strong></td>
<td>基础加密功能开发</td>
<td>1-2天</td>
<td>开发团队</td>
</tr>
<tr>
<td><strong>第二阶段</strong></td>
<td>搜索索引功能开发</td>
<td>2-3天</td>
<td>开发团队</td>
</tr>
<tr>
<td><strong>第三阶段</strong></td>
<td>历史数据迁移加密</td>
<td>1天</td>
<td>运维 + 开发</td>
</tr>
<tr>
<td><strong>第四阶段</strong></td>
<td>测试与验收</td>
<td>1天</td>
<td>测试团队</td>
</tr>
<tr>
<td><strong>合计</strong></td>
<td></td>
<td><strong>5-7个工作日</strong></td>
<td></td>
</tr>
</tbody>
</table>
<h3 data-number="1.8.2" id="实施步骤"><span
class="header-section-number">1.8.2</span> 实施步骤</h3>
<pre class="text"><code> 第1-2天 第3-5天 第6天 第7天
│ │ │ │
▼ ▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
│ 加密功能 │ ────► │ 搜索功能 │ ────► │ 数据迁移 │ ────► │ 测试验收 │
│ 开发 │ │ 开发 │ │ 执行 │ │ 上线 │
└─────────┘ └─────────┘ └─────────┘ └─────────┘
│ │ │ │
▼ ▼ ▼ ▼
配置加密器 精确搜索 备份数据 功能测试
添加注解 前缀搜索 执行迁移 性能测试
测试验证 模糊搜索 验证完整 安全测试</code></pre>
<hr />
<h2 data-number="1.9" id="八风险控制"><span
class="header-section-number">1.9</span> 八、风险控制</h2>
<h3 data-number="1.9.1" id="风险识别与应对"><span
class="header-section-number">1.9.1</span> 风险识别与应对</h3>
<table>
<thead>
<tr>
<th>风险类型</th>
<th>风险描述</th>
<th>应对措施</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>密钥泄露风险</strong></td>
<td>加密密钥被窃取</td>
<td>密钥独立存储,定期轮换</td>
</tr>
<tr>
<td><strong>数据迁移风险</strong></td>
<td>迁移过程数据丢失</td>
<td>先备份后迁移,分批执行</td>
</tr>
<tr>
<td><strong>性能影响风险</strong></td>
<td>加解密影响系统性能</td>
<td>添加索引,使用缓存优化</td>
</tr>
<tr>
<td><strong>功能影响风险</strong></td>
<td>现有功能受影响</td>
<td>充分测试,灰度发布</td>
</tr>
</tbody>
</table>
<h3 data-number="1.9.2" id="应急预案"><span
class="header-section-number">1.9.2</span> 应急预案</h3>
<pre class="text"><code>┌───────────────────────────────────────────────────────────────────┐
│ 应急处理流程 │
├───────────────────────────────────────────────────────────────────┤
│ │
│ 发现问题 ────► 评估影响 ────► 启动回滚 ────► 恢复服务 │
│ │
│ · 监控告警 · 影响范围 · 数据回滚 · 验证功能 │
│ · 用户反馈 · 业务影响 · 代码回滚 · 恢复上线 │
│ │
└───────────────────────────────────────────────────────────────────┘</code></pre>
<hr />
<h2 data-number="1.10" id="九方案优势总结"><span
class="header-section-number">1.10</span> 九、方案优势总结</h2>
<h3 data-number="1.10.1" id="核心优势"><span
class="header-section-number">1.10.1</span> 核心优势</h3>
<table>
<thead>
<tr>
<th>优势</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>安全性高</strong></td>
<td>采用SM4国产加密算法符合等保要求</td>
</tr>
<tr>
<td><strong>搜索能力强</strong></td>
<td>加密后仍支持精确、前缀、模糊多种搜索</td>
</tr>
<tr>
<td><strong>改造成本低</strong></td>
<td>使用MyBatis-Plus插件对业务代码侵入小</td>
</tr>
<tr>
<td><strong>实施周期短</strong></td>
<td>5-7个工作日可完成全部改造</td>
</tr>
<tr>
<td><strong>运维友好</strong></td>
<td>自动加解密,无需人工干预</td>
</tr>
</tbody>
</table>
<h3 data-number="1.10.2" id="投入产出分析"><span
class="header-section-number">1.10.2</span> 投入产出分析</h3>
<pre class="text"><code>┌───────────────────────────────────────────────────────────────────┐
│ 投入产出分析 │
├───────────────────────────────────────────────────────────────────┤
│ │
│ 【投入】 【产出】 │
│ ──── ──── │
│ · 开发工时5-7个工作日 · 通过等保测评检查 │
│ · 测试工时1-2个工作日 · 符合数据安全法规要求 │
│ · 运维工时1个工作日 · 降低数据泄露风险 │
│ · 提升用户数据安全保障 │
│ │
│ 【总计约7-10个工作日】 【价值:等保合规 + 安全保障】│
│ │
└───────────────────────────────────────────────────────────────────┘</code></pre>
<hr />
<h2 data-number="1.11" id="十结论与建议"><span
class="header-section-number">1.11</span> 十、结论与建议</h2>
<h3 data-number="1.11.1" id="方案结论"><span
class="header-section-number">1.11.1</span> 方案结论</h3>
<p>本方案采用<strong>MyBatis-Plus加密插件 +
搜索索引</strong>的技术路线,能够:</p>
<ol type="1">
<li><strong>满足等保要求</strong> —— 敏感数据全部加密存储</li>
<li><strong>保持业务功能</strong> —— 加密后仍可正常搜索查询</li>
<li><strong>低成本实施</strong> —— 对现有系统改动小,周期短</li>
<li><strong>安全可控</strong> —— 密钥独立管理,审计可追溯</li>
</ol>
<h3 data-number="1.11.2" id="建议"><span
class="header-section-number">1.11.2</span> 建议</h3>
<table>
<thead>
<tr>
<th>建议事项</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>1. 尽快启动</strong></td>
<td>等保测评时间紧迫,建议尽快安排实施</td>
</tr>
<tr>
<td><strong>2. 分阶段实施</strong></td>
<td>先完成核心功能,再优化性能</td>
</tr>
<tr>
<td><strong>3. 充分测试</strong></td>
<td>上线前做好功能和性能测试</td>
</tr>
<tr>
<td><strong>4. 保留回滚方案</strong></td>
<td>确保出现问题可快速回滚</td>
</tr>
</tbody>
</table>
<hr />
<p><strong>如有疑问,请随时沟通!</strong></p>
</body>
</html>