Acegi Security 基础与应用详解
1. 认证机制
1.1 认证核心接口与实现
Acegi Security 的认证服务有几个关键接口和实现。核心接口是 Authentication
,它包含主体的身份、凭证以及主体已获得的 GrantedAuthority
。 GrantedAuthority
是一个接口,其实现可以根据应用有不同含义,通常使用 GrantedAuthorityImpl
,它存储主体被授予权限的字符串表示。
AuthenticationManager
是处理认证“请求”对象的核心接口,负责确定所提供的主体和凭证是否有效。若有效,它会用适用的 GrantedAuthority
填充 Authentication
。其主要实现是 ProviderManager
,它会轮询一系列 AuthenticationProvider
。
有许多 AuthenticationProvider
,每个都处理特定的 Authentication
具体实现。 ProviderManager
使用第一个能够处理给定认证请求对象的 AuthenticationProvider
。
多数情况下, DaoAuthenticationProvi