第一步,空Spring Boot环境。
暂时不添加了Spring Security依赖。
第二步,确保项目能够正常运行。
启动启动项 Application.java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
@EnableAutoConfiguration
public class AuthorityApplication {
public static void main(String[] args) {
SpringApplication.run(AuthorityApplication.class, args);
}
// localhost:8080/
@RequestMapping(value = "/")
public String home() {
return "这是根路径";
}
// localhost:8080/hello
@RequestMapping(value = "/hello")
public String hello() {
return "hello";
}
}
确保Spring Boot项目能够正常启动。
第三步,添加了Spring Security依赖。
org.springframework.bootspring-boot-starter-security
重启Application,访问 localhost:8080/ ,出现以下界面,自动跳转至 http://localhost:8080/login ,需要登录,实现了认证功能。
第四步,自定义Spring Security配置文件 SpringSecurityCustomConfig.java 。
1.实现对主路径放行、其他路径请求需要验证、注销操作允许任意权限访问、表单登录允许任意权限访问。
2.对js、css、images不做拦截。
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;@Configuration//配置文件@Enabl