package cn.mb.cloud.auth.security.component; import lombok.Getter; import org.springframework.security.authentication.dao.DaoAuthenticationProvider; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.User; import java.util.Collection; /** * @author jason * 扩展用户信息 */ public class MbCloudAuthUser extends User { private static final long serialVersionUID = 5314349607515476061L; /** * 用户ID */ @Getter private Long id; /** * 手机号 */ @Getter private String phone; /** * 头像 */ @Getter private String avatar; /** * 租户ID */ @Getter private Integer tenantId; /** * Construct the User with the details required by * {@link DaoAuthenticationProvider}. * * @param id 用户ID * @param username the username presented to the * DaoAuthenticationProvider * @param password the password that should be presented to the * DaoAuthenticationProvider * @param enabled set to true if the user is enabled * @param accountNonExpired set to true if the account has not expired * @param credentialsNonExpired set to true if the credentials have not * expired * @param accountNonLocked set to true if the account is not locked * @param authorities the authorities that should be granted to the caller if they * presented the correct username and password and the user is enabled. Not null. * @throws IllegalArgumentException if a null value was passed either as * a parameter or as an element in the GrantedAuthority collection */ public MbCloudAuthUser(Long id, String phone, String avatar, Integer tenantId, String username, String password, boolean enabled, boolean accountNonExpired, boolean credentialsNonExpired, boolean accountNonLocked, Collection authorities) { super(username, password, enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, authorities); this.id = id; this.phone = phone; this.avatar = avatar; this.tenantId = tenantId; } }