Spring Boot 集成Spring Security

集成Spring Security

效果:访问hello.html会被重定向到login.html,登录成功后,转到hello,登录失败,转到error

 一:添加依赖

                <!-- spring security依赖 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-security</artifactId>
		</dependency>

二:配置SecurityConfig

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
	@Override
	protected void configure(HttpSecurity http) throws Exception {
		http.authorizeRequests()
				//所有访问都需要验证
				.anyRequest().authenticated()
				.and()
				//自定义登录页面
				.formLogin().loginPage("/login")
				.loginProcessingUrl("/form")
				//失败页面
				.failureUrl("/error")
				//登录成功页面
				.defaultSuccessUrl("/hello")
				.permitAll()
				.and()
				//关闭csrf   
				.csrf().disable()
				;

	}


    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.inMemoryAuthentication()
        		//自定义内存角色
                .withUser("admin").password(passwordEncoder().encode("1")).roles("USER");
    }

}

三:页面

login.hrml

<body>
	<form  action="/form" method="POST">
		<table>
			<tr>
				<td>用户名:</td>
				<td><input typpe="text" name="username" value="admin"></td>
			</tr>
			<tr>
				<td>密码:</td>
				<td><input type="password" name="password" value="1">
				<td></td>
			<tr>
				<td colspan="2"><input type="submit" value="登录"></td>
			</tr>
		</table>
	</form>
</body>

注意点:①csrf需要关闭,切记

               ②form中的action的url必须和loginProcessingUrl的url相同

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值