with example ejemplo spring-security spring-boot

example - spring-security-config



Spring boot Security Deshabilitar seguridad (10)

Agregue las siguientes líneas a su aplicación principal.

Elimine org.activiti.spring.boot.SecurityAutoConfiguration.class si no está utilizando activiti.

Del mismo modo, retire el del actuador si no está utilizando el actuador de arranque de resorte.

@EnableAutoConfiguration(exclude = { org.activiti.spring.boot.SecurityAutoConfiguration.class, org.springframework.boot.actuate.autoconfigure.ManagementWebSecurityAutoConfiguration.class, org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration.class })

Cuando uso security.basic.enabled = false para deshabilitar la seguridad en un proyecto de Spring Boot que tiene las siguientes dependencias:

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>

Veo la siguiente excepción:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''org.springframework.boot.actuate.autoconfigure.ManagementSecurityAutoConfiguration$ManagementWebSecurityConfigurerAdapter'': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter.setObjectPostProcessor(org.springframework.security.config.annotation.ObjectPostProcessor); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.security.config.annotation.ObjectPostProcessor] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}

Para arreglar esta excepción, tuve que agregar la propiedad - management.security.enabled = false . Según tengo entendido, cuando el actuador se encuentre en classpath, tanto security.basic.enabled = false como manage.security.enabled = false se deben configurar para deshabilitar la seguridad.

¿Podría alguien decirme si mi entendimiento es incorrecto?


Debe agregar esta entrada a application.properties para evitar Springboot Default Security

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration

Entonces no habrá ningún cuadro de autenticación. otrws, credenciales son: - user y 99b962fa-1848-4201-ae67-580bdeae87e9 (contraseña generada al azar)

Note: my springBootVersion = ''1.5.14.RELEASE''


En caso de que tenga un actuador de arranque por resorte en su paquete, debe agregar lo siguiente

@EnableAutoConfiguration(exclude = { org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration.class, org.springframework.boot.actuate.autoconfigure.ManagementWebSecurityAutoConfiguration.class})

Con Spring-boot más antiguo, la clase se llamaba ManagementSecurityAutoConfiguration .


Lo que también parece funcionar bien es crear un archivo application-dev.properties que contenga:

security.basic.enabled=false management.security.enabled=false

Si luego inicia su aplicación Spring Boot con el perfil dev , no necesita iniciar sesión.


Para evitar la seguridad, puede usar anotaciones. Use esta anotación en la parte superior de la clase de configuración:

@EnableWebSecurity

Por ejemplo:

@EnableWebSecurity @Configuration public class AuthFilter{ // configured method }


Para la bota de primavera 2 usuarios tiene que ser

@EnableAutoConfiguration(exclude = { org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class })



Permitir acceso a todo usando AntMatchers ("/")

protected void configure(HttpSecurity http) throws Exception { System.out.println("configure"); http.csrf().disable(); http.authorizeRequests().antMatchers("/").permitAll(); }


Si necesita seguridad como dependencia pero no desea que Spring Boot lo configure por usted, puede usar esta exclusión:

@EnableAutoConfiguration(exclude = { org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration.class })


Simplemente agregué security.ignored=/** en la application.properties , y eso hizo el encanto.