日志共享与隐私

把报错日志发给外部排查前,怎样遮住联系方式并检查自定义账号 ID?

从 API 报错中提取最小复现片段,用规则遮蔽邮箱,再人工替换租户号、账号 ID 和凭据。保留错误码、字段类型与事件关联,避免脱敏后问题也消失。

撰文: 3sec 编辑部 资料核对日期: 4 分钟阅读 1832 字

报错日志发给外部人员前,先截取足以说明错误的片段,删除凭据,再遮蔽联系方式并人工处理租户号、自定义账号 ID 和内部地址。最后核对错误码、字段类型和事件关联是否仍然成立;星号数量不能决定样本是否可以发送。

先留下排查所需的结构,缩小共享范围

先问对方需要定位哪个错误,再准备单独的共享副本。不要把整天日志、完整请求头或生产数据库导出一起发过去;保留原件在原有受控位置,共享副本只承载本次排查必要的证据。

例如对方要检查某个接口为什么返回 422,通常可以先描述接口、字段类型、错误码和相关事件顺序,而不是附上每个真实用户的数据。若问题依赖字符串长度、特殊字符或空值,替代数据也要保留该属性;随手把所有值改成「测试」可能让错误无法重现。

OWASP 日志指南把访问令牌、密码、连接字符串和敏感个人数据列为通常不应直接记录的内容,并要求向第三方传送前做相应审查。这里借用这些原则检查共享副本,不代表网页工具已经替你完成日志系统整改或授权流程。

用虚构 API 片段看清规则留下了什么

先用不含真实数据的样本观察结果,再处理获准使用的片段。打开个人信息遮蔽工具,五项规则默认勾选;输入变化会更新右侧,也可以点击遮蔽按钮。

示意输入是一行 POST /v1/orders status=422 [email protected] tenant=tenant_acme_042 account=acct_007 error=INVALID_POSTCODE。这些值是教学设定,没有真实接口调用或个人资料。当前邮箱规则的预期输出是 qa*@example.com,其余这几个字段原样保留。因此右侧会是 POST /v1/orders status=422 email=qa*@example.com tenant=tenant_acme_042 account=acct_007 error=INVALID_POSTCODE。

这是根据当前组件规则核对的预期结果,不是已经通过外部支持系统的复现记录。邮箱域名完整保留,自定义租户号和账号 ID 没有对应规则;接收人可能仍能从这些线索推断组织或用户。

在另一份可编辑的文字副本中,把邮箱整体换成 USER_A_EMAIL,把租户换成 TENANT_A,账号换成 ACCOUNT_A。本例人工处理后的预期片段是 POST /v1/orders status=422 email=USER_A_EMAIL tenant=TENANT_A account=ACCOUNT_A error=INVALID_POSTCODE。若同一账号出现在下一行,也使用同一个占位符;不要每一行都换不同名字而破坏关联。占位符映射若需要保存,应留在内部,不能随样本一起发送。

用搜索和对照验证真正要发送的版本

验证必须针对最终附件或粘贴内容,不能只检查网页右侧。复制结果后,在准备发送的文字中搜索原邮箱、example.com、tenant_acme_042 和 acct_007;本例最终人工版本中都应找不到,同时 422 和 INVALID_POSTCODE 应仍然存在。

接着逐行检查 token、Authorization、cookie、连接字符串、内部域名、设备名和路径等字段。搜索关键词只是线索:凭据可能没有明显标签,编码后的参数也可能藏着原始值,因此仍要通读上下文。没有命中不证明没有敏感信息。

对需要追踪事件的多行样本,核对同一账号是否始终是 ACCOUNT_A,另一个账号是否采用不同占位符。如果时区或请求顺序与错误有关,保持可解释的时间关系,并明确哪些时间或标识已经替换。

可以用文本差异比对工具检查两份已获准处理的文字,确认只改了计划替换的字段。它不会理解日志语义;对比还会显示原文,不适合在共享屏幕上操作。若要确认复现,需由有权限的人在隔离环境使用合成输入验证,本文没有执行该应用测试。

漏遮、误遮和无法复现分别怎么处理

如果邮箱已经出现星号,租户号却仍可读,这是规则范围有限,不是工具卡住。手动替换业务标识,检查 URL、文件路径和后续行中的重复值。姓名、电话和证件也不能依靠标签名称推断支持范围;当前证件规则不是大陆十八位身份证校验器。

如果错误片段被改成另一种内容,先检查规则是否误匹配了数字串或人名样式。不要为减少星号而直接取消检查后发送原文,应在共享副本中恢复必要结构并改用经过检查的合成值。

如果接收人说样本不再报错,检查替换是否改变了字段长度、字符集、空值与字段缺失的区别。需要保留特殊字符时,在替代值中保留同类字符,并注明这是合成数据。若真实值本身是唯一触发条件,先走内部受控排查流程,不要自行扩大外发范围。

工具边界与发送前的最后核对

pii-mask 只处理粘贴文字,不会读取日志文件、编辑 DOCX 或 XLSX,也不会自动识别令牌和所有组织字段。组件在浏览器中匹配,不能据此宣称整个站点没有外部连接;左侧原文、系统剪贴板和实际发送渠道仍需分别管理。

统计数字是替换命中次数,不是人数或剩余风险评分。清除按钮清空页面两栏及统计,不会清理已经复制出去的材料。发送前请确认接收方、共享目的、批准范围与最终附件版本;本文不是法律意见,涉及客户或员工数据时应按正式来源和组织流程确认处理要求。

常见问题

工具为什么没遮住 tenant 字段?

租户号属于自定义标识,没有通用匹配规则。列出业务字段并人工替换,还要搜索它在其他位置的重复出现。

邮箱变成星号后能直接发送吗?

不能只凭星号判断。规则保留域名及用户名片段;若这些信息不需要共享,应在最终副本中整体替换。

能把每一行账号都改成同一个值吗?

只有原本确实属于同一账号时才这样处理。不同账号合并会改变事件关系,导致排查结论失真。

复制结果会覆盖原日志文件吗?

不会。复制只是把右侧文字放入剪贴板,实际日志保持原状;最终共享副本仍需要另行保存和检查。

参考资料