0.6.1 像保安一样思考——安全设计原则
认知重构:先有底线,再谈功能
安全设计不是“补漏洞”,而是从一开始就定义最小权限、最小暴露、面向失败,并配套日志脱敏与安全审计。
本质还原:五大原则
- 最小权限:用户与服务只拥有完成任务所需的最小权限。
- 最小暴露:接口只返回必要字段,隐藏内部实现与错误细节。
- 面向失败:异常默认拒绝,失败路径清晰且安全。
- 日志脱敏:从日志采集到存储全链路不包含明文密钥或个人敏感信息。
- 安全审计:定期检查账户权限、依赖漏洞与暴露面。
落地与实战
- 权限建模:
- 基于角色(RBAC)或能力(ABAC)进行授权,提供默认“最小角色”。
- 管理后台与 API 分离权限域,避免越权调用。
- 接口设计:
- 输出白名单(允许返回的字段清单)而非黑名单。
- 失败返回统一
错误码 + 简短信息,不暴露堆栈与内部路径。
- 异常处理:
- 超时/网络错误/依赖不可用时,走降级或拒绝策略。
- 所有失败路径均记录审计日志(已脱敏),便于回溯。
- 日志脱敏:
- 遮罩策略:只保留必要的后四位,如
****5678。 - 禁止输出:密钥、令牌、密码、身份证、银行卡全链路禁止明文。
- 遮罩策略:只保留必要的后四位,如
- 安全审计:
- 账户与权限:每月审查,离职清退,临时权限自动过期。
- 漏洞扫描:依赖与镜像每周扫描;高危立即升级或替换。
验收清单
- 权限:默认最小角色,无越权路径;敏感操作需二次确认。
- 暴露:所有接口均有字段白名单;错误体无内部细节。
- 失败:异常默认拒绝;降级与熔断可控。
- 日志:关键字段遮罩;密钥与个人信息不入日志。
- 审计:定期扫描与报告;整改闭环与复盘记录。
AI 协作指南
- 核心意图:让 AI 根据业务场景产出原则驱动的方案与验收清单。
- 需求定义公式:
- “为用户中心设计 RBAC 权限模型、接口字段白名单与日志脱敏策略,输出验收清单与失败路径处理。”
- 关键术语:
RBAC,ABAC,白名单,熔断,降级,审计日志。
