Principle of Least Privilege 最小特权原则

只给完成任务必需的最低权限,不多给。 安全设计最古老、最重要的原则之一。简称 PoLP

为什么重要

  • 限制爆炸半径 —— 一个账户被攻陷,损失最小化
  • 减小攻击面 —— 不必要的权限就是不必要的风险
  • 审计简单 —— 权限清晰可追溯

具体怎么用

场景怎么用
Linux平时用普通用户,需要时 sudo,不要 root 登录
数据库App 只给 SELECT/INSERT,不给 DROP/ALTER 权限
云 IAMAWS role 精确到具体 action + resource,不用 *
文件系统640 而不是 777
APIOAuth scope 最小化,只要要用的权限

一个真实例子

2017 年 Equifax 泄露 1.4 亿条记录 —— 其中一个原因是数据库账户拥有远超必要的权限,被打穿后能横扫整库。

如果遵循 PoLP,影响会小一个数量级。

相关概念

  • Security controls —— 实施 PoLP 的具体手段
  • Authorization —— 决定一个用户能干什么,PoLP 是其设计原则
  • Zero Trust —— 现代版的 PoLP,“默认不信任”