使用Spring Security来实现权限管理
首先实现org.springframework.security.core.userdetails.UserDetailsService 接口中 loadUserByUsername 方法.
方法返回org.springframework.security.core.userdetails.UserDetails接口,也可以返回Spring自带的实体org.springframework.security.core.userdetails.UserDetails.User
这个User是实现了UserDetails接口,还可以自定义一个实现UserDetails接口的自己的类就行了.
然后在Controller中,调用以下方法可以获得User信息.
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContext;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.User;
SecurityContext ctx = SecurityContextHolder.getContext();
Authentication auth = ctx.getAuthentication();
User user = (User) auth.getPrincipal();