我正在使用 Spring 3 并尝试在用户登录后从数据库中填充 Spring Security Authentication bean 的权限。
我有一个用于访问数据库的服务,例如
@Service
public class UserService {
public User getUser(String username){...}
}
通常,我可以@Autowire
使用此服务,但由于 Authentication bean 是由 Spring Security 创建的,它似乎无法访问该服务。我也尝试过使用ApplicationContextAware
接口,但 Spring Security 似乎有一个单独的ApplicationContext
.
我可以通过 MVC 从 MVC 访问 Authentication bean,getUserPrincipal()
但是有没有办法可以从 Spring Security 身份验证的某个地方访问这个 @Service?