29 lines
960 B
Java
29 lines
960 B
Java
package com.baiyue.common.security;
|
|
|
|
import org.springframework.security.authentication.AbstractAuthenticationToken;
|
|
import org.springframework.security.core.GrantedAuthority;
|
|
|
|
import java.util.Collection;
|
|
|
|
/**
|
|
* 系统 JWT 认证令牌实现,封装已认证用户主体、原始令牌和权限集合。
|
|
*/
|
|
public final class BaiyueJwtAuthenticationToken extends AbstractAuthenticationToken {
|
|
private final AuthenticatedUser principal;
|
|
private final String tokenValue;
|
|
|
|
public BaiyueJwtAuthenticationToken(AuthenticatedUser principal, String tokenValue,
|
|
Collection<? extends GrantedAuthority> authorities) {
|
|
super(authorities);
|
|
this.principal = principal;
|
|
this.tokenValue = tokenValue;
|
|
setAuthenticated(true);
|
|
}
|
|
|
|
@Override
|
|
public String getCredentials() { return tokenValue; }
|
|
|
|
@Override
|
|
public AuthenticatedUser getPrincipal() { return principal; }
|
|
}
|