用户登录成功、失败后,pig 捕获了spring security 发出的对应事件。
- 用户登录成功时,发布AuthenticationSuccessEvent事件
public class PigAuthenticationSuccessEventHandler extends AuthenticationSuccessEventHandler {/*** 处理登录成功方法* <p>* 获取到登录的authentication 对象** @param authentication 登录对象*/@Overridepublic void handle(Authentication authentication) {log.info("用户:{} 登录成功", authentication.getPrincipal());}}
- 用户登录失败时
AuthenticationException 是登录异常信息,包括常见的用户密码不正确,用户信息不正确,用户状态不正确等
@Slf4j@Componentpublic class PigAuthenticationFailureEvenHandler extends AuthenticationFailureEvenHandler {/*** 处理登录失败方法* <p>** @param authenticationException 登录的authentication 对象* @param authentication 登录的authenticationException 对象*/@Overridepublic void handle(AuthenticationException authenticationException, Authentication authentication) {log.info("用户:{} 登录失败,异常:{}", authentication.getPrincipal(), authenticationException.getLocalizedMessage());}}
- Authentication 用户身份认证信息
public interface Authentication extends Principal, Serializable {// 用户角色 + 权限信息(会包含用户的权限标志)Collection<? extends GrantedAuthority> getAuthorities();// 用户密码加密串Object getCredentials();// 用户名或者用户全部信息(参考资源服务配置章节说明)Object getPrincipal();// 是否认证boolean isAuthenticated();...}

