目录
1. 前言
本文介绍SpringSecurity授权验证的原理。如果你还不了解原理,快来看看吧。
2. 授权结构
2.1. 权限
GrantedAuthority,代表授权给用户的权限。作为一个接口,仅提供一个方法String getAuthority(); 返回的String能够明确代表一个权限;当代表复杂权限时,返回null。要求任何AccessDecisionManager必须支持GrantedAuthority的实现类并能够解析它的内容。
SimpleGrantedAuthority,GrantedAuthority的实现类。
2.2. 调用前控制
security通过AccessDecisionManager在访问安全资源之前进行访问控制。
接口AccessDecisionManager
- decide方法 访问权限控制
- supports方法 是否负责对某种安全资源的控制
2.3. 调用后控制
AfterInvocationManager,对安全资源返回值进行处理。