栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springsecurity简介

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springsecurity简介

springsecurity简介
  • 一级目录
    • 简单配置

一级目录

springsecurity的核心就是认证和授权,其本质就是一组链式的过滤器,用户发送请求进来,判断有没有请求的权限。

简单配置
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
            //以下五步是表单登录进行身份认证最简单的登陆环境
            http.formLogin() //表单登陆 1
                .and() //2
                .authorizeRequests() //下面的都是授权的配置 3
                .anyRequest() //任何请求 4
                .authenticated(); //访问任何资源都需要身份认证 5


    }
}

启动项目可以看到下面的登陆页面,用户名默认user,密码在控制台输出

当然,security还可以自定义登陆页面并从数据库获取用户

@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
 
      
    @Bean
    public PasswordEncoder passwordEncoder() {
        return new BCryptPasswordEncoder();
    }
 
    @Override
    protected void configure(HttpSecurity http) throws Exception {
            //以下五步是表单登录进行身份认证最简单的登陆环境
            http.formLogin() //表单登陆 1
                    .loginPage("/login.html") //指定登陆页面
                .and() //2
                .authorizeRequests() //下面的都是授权的配置 3
                    .antMatchers("/login.html").permitAll()//访问此地址就不需要进行身份认证了,防止重定向死循环
                .anyRequest() //任何请求 4
                .authenticated(); //访问任何资源都需要身份认证 5
    }
}

如果要实现查询数据库,就要实现UserDetailsService类,添加自己的配置,并且在serviceImpl层通过UsernamePasswordAuthenticationToken,提交用户名和密码到UserDetailsService,在UserDetailsServiceImpl中查询数据库即可。

UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(userName, password);
        Authentication authenticate = authenticationManager.authenticate(authenticationToken);
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1004389.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号