GuestAuthenticationToken.java
package io.featureprobe.api.auth;
import org.springframework.security.authentication.AbstractAuthenticationToken;
import org.springframework.security.core.GrantedAuthority;
import java.util.Collection;
public class GuestAuthenticationToken extends AbstractAuthenticationToken {
private final String account;
private String source;
private String password;
private AuthenticatedMember principal;
public GuestAuthenticationToken(String account, String source, String password) {
super(null);
this.account = account;
this.source = source;
this.password = password;
super.setAuthenticated(false);
}
public GuestAuthenticationToken(AuthenticatedMember principal, Collection<? extends GrantedAuthority> authorities) {
super(authorities);
this.principal = principal;
this.account = principal.getName();
super.setAuthenticated(true);
}
@Override
public Object getCredentials() {
return null;
}
@Override
public AuthenticatedMember getPrincipal() {
return principal;
}
public String getAccount() {
return account;
}
public String getSource() {
return source;
}
public String getPassword() {
return password;
}
}