[RESOLVIDO] - Custom Authentication Manager - Ajuda com Spring Security

[Postagem removida]

Você precisa criar uma classe que implemente a interface UserDetailsService.

Segue um exemplo:


@Service("userService")
public class UserDetailsServiceImpl implements UserDetailsService {


@Override
public UserDetails loadUserByUsername( String username ) throws UsernameNotFoundException
{
    
	
    //aqui é onde você vai colocar seu código customizado	
	Usuario dbuser = usuariodao.findById(username);
    String password = dbuser.getSenhaUsuario();
    boolean enabled = false;
    boolean credentialsNonExpired = false;
    boolean accountNonExpired = false;
    boolean accountNonLocked = false;
    
    Set<String> roles = getRolesForUser(username);
    enabled = !isUserDisabled(dbuser);
    credentialsNonExpired = !isCredentialExpired(dbuser);
    accountNonExpired = !isAccountExpired(dbuser);
    accountNonLocked = !isAccountLocked(dbuser);
    
//esse método deve retornar um objeto User do Spring, que conterá parâmetros que permitem você customizar mais seu processo de login
//aqui, você diz se o usuario está habiliado, se sua conta está expirada, se a senha expirou, se a conta está bloqueada (tentativas erradas de acesso)
// e o ultimo parametro é a lista de roles que o usuario tem acesso
    return new User(username,password,enabled,accountNonExpired,credentialsNonExpired,accountNonLocked,toGrantedAuthorities(roles));
    
    
  }


E o seu applicationContext.xml vai precisar ter :

<bean id="customUserDetails" class="pacote.da.sua.classe.customizada.UserDetailsServiceImpl" />


e isso:
<security:authentication-manager>
     <security:authentication-provider user-service-ref="customUserDetails">
       
    </security:authentication-manager>

espero ter ajudado

Abraço

Bruno, era exatamente o que eu estava procurando, funcionou 100%. Muito obrigado pela sua ajuda, foi de grande importância.

Forte abraço…