Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

210
Vistas
Leer/agregar credenciales de usuario desde un archivo en Spring Security

¿Es posible almacenar y modificar las credenciales de usuario en un archivo para Spring Security?

Por ahora tengo security.xml:

 <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd"> <http> <intercept-url pattern="/**" access="ROLE_USER" /> <form-login /> <logout /> </http> <authentication-manager> <authentication-provider> <user-service> <user name="admin" password="admin" authorities="ROLE_USER, ROLE_ADMIN" /> <user name="user" password="user" authorities="ROLE_USER" /> </user-service> </authentication-provider> </authentication-manager>

Y todo lo que quiero es almacenar información en un archivo como users.txt o users.xml con la posibilidad de agregar o modificar usuario/contraseña sobre la marcha.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Debe anular UserDetailsService para eso

UserDao.java

 import org.springframework.security.core.userdetails.User; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; /** * @author asif.hossain * @since 3/9/17. */ public class UserDao implements UserDetailsService { @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { String password = readPasswordFromFileOrDatabase(username); if (password == null) throw new UsernameNotFoundException(""); return User .withUsername(username) .password(password) .authorities("ROLE_USER") .build(); } private String readPasswordFromFileOrDatabase(String username) { // Edit this code and read password and roles from data base or files if (username.equals("user")) return "password"; return null; } }

Y agregue un bean de esta clase en security.xml

 <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd"> <http> <intercept-url pattern="/**" access="ROLE_USER" /> <form-login /> <logout /> </http> <bean id="userDao" class="UserDao"></bean> <authentication-manager alias="authenticationManager"> <authentication-provider user-service-ref="userDao"></authentication-provider> </authentication-manager>
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda