知识卡片

认证与授权的区别

专业/工作 · 622

内容

安全框架要解决的问题可以拆成两个独立的问题:认证(Authentication)回答”你是谁”,授权(Authorization)回答”你被允许做什么”。两者顺序上通常先认证后授权,但本质上是正交的关注点——认证成功只代表系统确认了用户身份,不代表这个身份拥有访问某个资源的权限,反之如果把两者混在一起处理,很容易出现”登录了就默认什么都能做”的安全漏洞。发散:这个二分法几乎是所有安全体系的地基,无论是Web应用的Session/Token,还是操作系统的用户/权限位,拆解安全问题时第一步永远是先分清楚眼下面对的究竟是”身份”问题还是”权限”问题。

参考来源

《Spring Boot应用开发实战》第5章《应用程序安全性》