Pregunta

Utilizo Spring Data Rest 2.1 y me gustaría proteger mi API Rest, ¿cuál es la mejor manera de proteger la API mediante token?Tendría un proceso como los siguientes pasos.¿También es posible cambiar la URL base de / a /api, pero mis controladores como 'home' también mostrarían el lado jsp de /home pero no de /api/?

  1. El usuario va al sitio de inicio de sesión
  2. El usuario inicia sesión y obtiene un token del servidor
  3. El usuario va al sitio del panel y js realiza una llamada ajax y configura el campo de encabezado HTTP 'X_AUTH_TOKEN' con el token
¿Fue útil?

Solución

Puede configurar el URI base para su API usando RepositoryRestConfiguration.Algo como esto:

@Configuration
public static class RepositoryConfig extends
        RepositoryRestMvcConfiguration {

    @Override
    protected void configureRepositoryRestConfiguration(
            RepositoryRestConfiguration config) {
        try {
            config.setBaseUri(new URI("/api"));
        } catch (URISyntaxException e) {
            throw new RuntimeException(e);
        }
    }
}

Puede agregar seguridad usando Spring-Security o, si desea usar una solución personalizada simple Interceptor de primavera

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top