从 Excel 到 HSE 仪表板与事故分析,全程不外传个人数据。第一阶段:离线脱敏工具

从 Excel 到 HSE 仪表板与事故分析,全程不外传个人数据。第一阶段:离线脱敏工具

11 九月 2026 🇷🇺 原文: русский 1 分钟阅读

面向 vibe coding 与云端 AI 智能体的安全数据准备实践。

方法的核心思路:工作数据始终留在企业内部。传给外部 AI 环境的只有脱敏副本,或者已经做过遮蔽处理的文档。个人信息的还原在本地完成。

为什么需要一个单独的脱敏工具

人工智能在职业安全与工业安全中的实际应用,很快就会撞上原始数据这个问题。工作表格和事故材料里可能包含姓名、工号、承包商名称、联系方式、金额以及其他信息,未经风险评估不能直接上传到外部服务。

与此同时,要做出真正有用的工具,恰恰需要真实的数据结构。仪表板必须理解表格中真实的字段和关联,事故分析智能体必须理解说明材料、初始报告和其他文件的结构。因此我们把数据和工具分开。

结果是,离线脱敏工具同时成为两个方向的基础环节:为后续 vibe coding 准备脱敏的 Excel 模板,以及为用云端 AI 智能体分析事故材料准备 Word 文档。

图 1. 数据安全处理总体方案
图 1. 数据安全处理总体方案

在哪里做 vibe coding,提示词粘贴到哪里

对新手来说,这比看上去简单得多:文末《现成提示词》一节中的 Prompt 1 并不需要粘贴到某个专门的代码编辑器里。把它当作普通文字,输入到能够创建和修改应用或程序代码的 AI 服务中即可。做法始终一样:打开开发模式,完整粘贴 Prompt 1,得到第一版,检查之后再在同一对话里依次给出 Prompt 2、Prompt 3 和 Prompt 4。

实际操作中有几种选择。在 ChatGPT 里是「工作」模式或 Codex(如果你的账号有);在 Claude 里是 Artifacts;在 Gemini 里是 Canvas;在 Perplexity 里是 Create files and apps 模式(如果你的套餐支持);在 Replit 里是 Agent。例如在 ChatGPT 中,只需打开「工作」或 Codex,新建一个任务,把 Prompt 1 的文本粘贴到消息框里。在 Gemini 中:「添加文件」→ Canvas → 粘贴提示词。在 Perplexity 中:选择 Create files and apps,把提示词粘贴到查询栏。在 Replit 中:打开 Agent,必要时先启用 Plan,粘贴提示词,构建完成后在 Preview 中检查结果。

文中模式名称为发布时的情况;这些服务的界面和功能可用性可能会随时间变化。

第一次尝试,我建议从 ChatGPT、Claude 或 Gemini 开始:在那里更容易用日常语言交流,并逐步细化需求。如果程序已经做出来,需要更深入地改动代码,那么 Replit、Codex 以及其他专业开发工具会更顺手。

重要:无论选择哪个平台,都要在请求开头单独写明一条要求:「结果是一个自包含的 HTML 文件,不使用外部 API、CDN 和任何网络依赖,断网也能工作」。还有一条规则:绝不把含有个人数据的真实 Excel/Word 工作文件上传到 vibe coding 服务。开发阶段只使用经过检查的脱敏副本或测试文件。

方向一。Excel:供后续 vibe coding 使用的脱敏模板

为了对大量数据做分析,我们需要保留表格的结构:工作表和列的名称、数据类型、日期、分类、「企业—车间—工段」层级、流程以及其他属性。而真实的姓氏和标识号,对开发程序外壳来说并不需要。

因此,把工作用的 Excel 表格加载到本地 HTML 脱敏工具中。程序在用户的电脑上找出可能敏感的值,在替换前展示出来,并允许手工调整规则。例如:「伊万·伊万诺维奇·伊万诺夫 → Employee_001」「承包商有限公司 → Organization_001」「工号 → ID_001」。

输出是一份保留了原表逻辑的脱敏副本。用它就已经可以和 AI 一起构建程序:筛选器、KPI、交互式图表、检索以及细化到单条记录的钻取。而原始的 Excel 文件仍然留在企业内部。

开发完成后,真实数据库根本不应该放在生成的 HTML 里面。成品程序中会提供一个本地加载源 Excel 的按钮:文件由用户电脑上的浏览器读取,仪表板在本地会话内重新计算指标。这将是本系列的第二阶段。

创建该模式的基本任务说明见 Prompt 1 和 Prompt 2(见文末《现成提示词》)。

图 2. 把模板交给 AI 之前对 Excel 做脱敏
图 2. 把模板交给 AI 之前对 Excel 做脱敏
图 2.1. Excel 脱敏:离线加载文件
图 2.1. Excel 脱敏:离线加载文件
图 2.2. Excel 脱敏:选择替换规则
图 2.2. Excel 脱敏:选择替换规则
图 2.3. Excel 脱敏:检查替换并下载副本
图 2.3. Excel 脱敏:检查替换并下载副本

方向二。Word:不泄露个人数据的事故材料

脱敏工具的第二个用途,是把事故文件准备好,交给云端 AI 做后续分析。初始阶段可能是初始报告、说明材料、员工陈述以及其他 Word 文件。

脱敏工具会生成一份脱敏的 Word 副本:姓名和其他选定的值被替换成稳定的占位标记。重要的是,同一个人在整套文件中必须保持同一个占位名称,否则智能体会失去陈述与事件之间的联系。

与此同时,本地会另外生成一个加密的还原密钥文件。密钥中保存着占位标记与原始值之间的对应关系。用户为它设置密码,该密码不会随文件一起传出,也不会保存在云端智能体里。

此后,交给 AI 的只有做过遮蔽处理的 Word 文件。智能体可以分析时间线、比对说明、发现矛盾、提出澄清问题、寻找因果关系,并准备调查分析材料的草稿。当然,正式调查和最终决定仍然由委员会和相关责任专家负责。

当修改后的遮蔽文档从云端返回时,还原同样在本地完成。向离线脱敏工具中加载三样东西:收到的 Word 文件、与之配套的密钥文件和密码。凡是文本中仍保留占位标记的位置,程序都会把它们还原为原始值。

这样,云端智能体处理的是事件的逻辑,却拿不到原始姓名和其他被遮蔽的值。还原密钥和密码不会传到云端环境。

Word 双向工作的架构见 Prompt 3(见文末《现成提示词》)。

图 3. Word 流程:脱敏 → AI 分析 → 本地还原
图 3. Word 流程:脱敏 → AI 分析 → 本地还原
图 3.1. Word 流程:下载脱敏后的源文件
图 3.1. Word 流程:下载脱敏后的源文件
图 3.2. Word 流程:生成本地还原密钥
图 3.2. Word 流程:生成本地还原密钥

这个工具本身是怎么做出来的

脱敏工具本身也是用 vibe coding 做出来的。这里重要的是,不要把这种方式理解成一句「给我做个程序」然后期待完美结果。实际的做法是另一种:先说清一个功能,检验它,记录缺陷或新的要求,之后再进入下一个版本。

第一条要求是:一个自包含、无需安装的 HTML 文件。随后陆续加入了替换结果的人工核对、「额外替换」列表、「不要更改」列表、清空当前会话、对 Word 的支持、生成独立的加密密钥以及文档的本地还原。

单独的一个阶段是技术自查。这一次 AI 拿到的不是开发者的角色,而是自己代码的审计者:检查 fetch、XMLHttpRequest、WebSocket、外部库、CDN、API、iframe、本地存储以及其他可能让数据离开电脑、或在工作结束后仍被保留的机制。这样的自查并不能代替 IT 与信息安全部门的审核,但可以在原型阶段就消除显而易见的风险。

检查用的请求见 Prompt 4(见文末《现成提示词》)。

图 3.3. Word 流程:AI 处理后还原个人数据
图 3.3. Word 流程:AI 处理后还原个人数据

最终得到什么

一个本地工具解决两项不同的任务。对 Excel 来说,它让你先准备出安全的模板,并在此基础上借助 AI 为大量数据搭建离线分析。对 Word 来说,它让你把事故材料交给云端 AI,而不泄露被遮蔽的个人信息,分析之后再在本地把文档还原。

关键原则始终不变:先把 AI 为完成任务并不需要知道的内容排除在外部环境之外,然后再使用它的能力。

在后续文章里,我会分别展示这套方案的两条延伸线:如何用脱敏的 Excel 模板做出可本地加载真实数据库的独立 HSE 仪表板,以及如何用 AI 智能体分析事故调查材料。

用于创建和检查本地 Excel/Word 脱敏工具的现成提示词

这些表述用于分步开发,并可按照具体的企业场景加以调整。

Prompt 1. 自包含的 Excel 与 Word 脱敏工具的基础架构

创建一个自包含的本地应用,用于对 Excel (.xlsx) 和 Word (.docx) 中的数据做脱敏处理。

应用形式:单个 HTML 文件,用普通浏览器即可打开,无需安装任何额外软件即可工作。

关键要求:
1. 打开之后,应用不得访问互联网。
2. 不使用外部 API、telemetry、云端处理,也不自动上传用户文件。
3. 所有需要的库都必须本地内嵌在 HTML 中。
4. 用户必须能够从电脑加载一个或多个 Excel/Word 文件。
5. 不修改源文件。结果另存为单独的副本。
6. 所有操作都在当前浏览器标签页的内存中完成。
7. 增加一个彻底清空当前会话的按钮。

脱敏功能:
- 查找姓名、带首字母缩写的姓氏以及其他选定的个人信息;
- 查找机构名称以及其他手工指定的值;
- 必要时对号码、联系方式和金额做脱敏;
- 同一个原始值在同一会话中必须获得同一个占位标记;
- 保存之前,按「位置 / 原值 / 替换后」的形式向用户展示替换清单;
- 允许手工关闭或修改任意一条替换;
- 增加「额外替换」输入框;
- 增加「保持不变」输入框,其优先级高于替换。

对 Excel,保留表格结构以及后续分析所需的字段。对 Word,尽可能保留文档结构。

第一版完成后,另外列出自动识别的局限,以及用户必须手工检查的地方。

Prompt 2. Excel 模式:用于 vibe coding 和 HSE 分析的脱敏模板

完善本地 HTML 脱敏工具,使其能够安全地准备 Excel 模板,之后可用于借助 AI 开发分析程序。

目标:AI 应当看到工作表格的结构,但看不到真实的个人信息以及其他选定的敏感值。

要求:
1. 保留工作表名称、列标题、数据类型、日期、分类和层级属性,除非用户指定要替换它们。
2. 把姓名替换为稳定标记,形如 Employee_001、Employee_002 等。
3. 把机构名称替换为标记 Organization_001、Organization_002 等。
4. 如果标识号和工号被选中做脱敏,则替换为标记 ID_001、ID_002 等。
5. 同一个原始值在当前会话的所有 Excel 文件中必须获得相同的替换。
6. 展示全部替换的预览清单,并允许用户手工修正。
7. 不要仅因为程序用不到就删除行和列。
8. 不要修改源文件。
9. 处理完成后,提供单独的脱敏副本供下载。
10. 添加醒目的提示:在把结果交给外部 AI 之前,用户必须手工检查脱敏后的文件。

重要:Excel 不需要反向还原。真实的工作数据库留在企业内部;脱敏副本只用于设计未来 HTML 仪表板的逻辑和界面。

Prompt 3. Word 模式:脱敏、独立密钥与本地还原

完善自包含的 HTML 脱敏工具,使其支持与 Word (.docx) 的双向工作。

场景:
1. 用户加载事故相关的原始 Word 文档。
2. 程序在本地把姓名、机构名称和其他选定的值替换为稳定的占位标记。
3. 用户检查并确认替换清单。
4. 程序生成:
   a) 一份做过遮蔽处理的 Word 文档;
   b) 一个单独的加密密钥文件,其中保存「占位标记 ↔ 原始值」的精确对应关系。
5. 用户为密钥文件设置不少于 10 个字符的密码。不要把密码保存在应用中,也不要以明文写入密钥。
6. 遮蔽后的 Word 文档随后可以交给外部 AI 智能体做内容分析。
7. 收到修改后的 Word 文档后,用户回到本地应用。
8. 还原时需要加载:
   - 修改后的遮蔽 Word 文档;
   - 与之配套的密钥文件;
   - 并输入密码。
9. 程序在本地把仍然保留的占位标记还原为原始值,并生成一份单独的还原后 Word 文档。

安全要求:
- 还原密钥和密码绝不能自动通过网络传输;
- 密钥与遮蔽文档分开保存;
- 密钥使用现代加密方式(例如通过 Web Crypto API 的 AES-256-GCM);
- 密码错误时,不得透露密钥的内容;
- 工作结束后,提供彻底清空当前会话的可能;
- 提示用户:被外部 AI 删除或大幅改动的占位标记无法自动还原;
- 不自动识别图片内部的文字,并明确提醒用户必须用肉眼检查图片和标识。

尽技术所能保留 Word 的结构:段落、表格、样式、页眉页脚和图片。不要修改源文件。

Prompt 4. 自包含性与潜在泄露通道的技术审计

请对已创建的 HTML 应用做一次技术审计,把它当作处理敏感数据的本地离线工具。

检查全部代码,列出所有可能造成网络交换、或长期保存用户文件内容的机制。

分别检查:
- fetch;
- XMLHttpRequest;
- WebSocket;
- EventSource;
- navigator.sendBeacon;
- 外部 script src;
- 外部 CSS 与字体;
- CDN;
- 外部 API;
- iframe;
- HTML 表单的自动提交;
- Service Worker;
- localStorage;
- sessionStorage;
- IndexedDB;
- cookies;
- 库和代码中的外部 URL;
- telemetry、分析统计与 crash-reporting。

要求达到的结果:
1. 程序在断网状态下必须完全可用。
2. 用户的 Excel/Word 文件不得通过网络传输。
3. 还原密钥和密码不得被应用自动发送或保存。
4. 如果使用了浏览器本地存储,请说明用途;对源数据、密钥和密码则排除使用。
5. 添加严格的 Content-Security-Policy,在与应用运行相兼容的范围内禁止网络连接和嵌入外部内容。
6. 执行「全部清除」命令后,从应用状态中删除当前会话的数据。
7. 修改之后重新检查代码,并给出简短报告:发现了哪些潜在通道、删除了什么、保留了什么以及原因。

重要:请说明,这样的代码自查并不能代替企业 IT/信息安全部门的审核,也不能代替对具体使用场景是否合规的法律评估。
实用原则:交给外部 AI 环境的只能是经过检查的脱敏副本。还原密钥文件和密码必须留在本地范围内,不得随请求一起发给智能体。

专家博客

阅读安全领域领袖的文章

所有博客文章
我们使用 Cookie 来改善您的体验 · Cookie 通知

加入领袖行列

14,000+ 专业人士 · 128+ 国家

1
联系方式
2
个人资料

注册

介绍一下自己

必填项
必填项
请输入有效邮箱
号码无效

注册

职业信息

必填项
必填项
必填项

请同意接收新闻通讯,这将大大提升您的平台体验。

注册完成

我们已将登录信息发送到您的邮箱。请使用收到的密码登录。

没有收到邮件?
请检查垃圾邮件文件夹
已有账户? 登录 · 忘记密码?

欢迎!

您已成功登录。

没有账户? 注册 · 忘记密码?

找回密码

输入邮箱以找回密码

请输入有效邮箱

链接已发送

密码重置链接已发送到您的邮箱,链接有效期为1小时。

没有收到邮件?
请检查垃圾邮件文件夹
想起密码了? 登录 · 注册