一、配置
package com.boot.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.Customizer;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.web.SecurityFilterChain;
/**
* @EnableWebSecurity:SpringSecurity的配置类 开启SpringSecurity【自带大量过滤器链:责任链模式】
*/
@Configuration //
@EnableWebSecurity //5.x中@EnableWebSecurity自带@Configuration
public class SecurityConfig {
@Bean
public SecurityFilterChain服务器托管网 securityFilterChain(HttpSecurity http) throws Exception {
return http
.authorizeHttpRequests(authorizeHttpRequests-> //在这个后面开始配置URL相关的【URL访问权限控制相关的】
authorizeHttpRequests.requestMatchers("/login").permitAll() //permitAll:授予所有权限【匿名可以访问的、不用登录就可以访问】
.anyRequest() //任何的请求
.authenticated() //需要认证【登录】后才能访问
)
.formLogin(formLogin->
formLogin.loginPage("/login") //登录页面
.loginProcessingUrl("/login").permitAll() //登录接口可以匿名访问
.defaultSuccessUrl("/index") //登录成功访问/index页面
)
.csrf(Customizer.withDefaults()) //关闭跨域漏洞攻击防护
.logout(logout->logout.deleteCookies("JSESSIONID").invalidateHttpSession(true).logoutSuccessUrl("/index")) //退出登录接口
.build();
}
}
二、登录控制器
package security03.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class LoginController {
@GetMapping("/login")
public String login(){
return "login";
}
}
三、登录页面
请登录
用户名:
密码:
三、退出:注意,退出是post请求!!!
系统首页
欢迎访问系统
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
1、dig DNS解析工具,比nslookup 更加综合,可以做正向反向解析 2、正反向解析用法 1.正向解析 域名——–>ip 2.反向解析 ip———>域名 3.CNAME 别名 4.dig 格式: dig 常用命令格式 …