Spring Security 数据库安全认证

SpringBoot 2.1.3.RELEASE

maven引入的jar


        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            1.3.2
        
        
            org.springframework.boot
            spring-boot-starter-jdbc
        
        
            org.springframework.boot
            spring-boot-starter-security
        
        
            mysql
            mysql-connector-java
            runtime
        
        
            org.projectlombok
            lombok
            ${lombok.version}
            provided
        

        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        
    

数据库一共6张表,其中有个表还没什么用

user---userRole---role--rolePermission---permission

dao层使用springboot-mybatis的注解开发

代码感觉有点多,放起来篇幅太长了,所以代码都在github上  https://github.com/weisfds/SpringBootDemo

注意该github上面项目是多模块的。

注意些地方

1,WebSecurityConfigurerAdapter 接口的实现类实现了configure(HttpSecurity http)里面有段代码

headers().frameOptions().disable().// 解决页面框架不能获取子页面
                and().

这是解决html 标签不能出现效果的,没有的话可以去掉

2,WebSecurityConfigurerAdapter接口的实现类实现了configure(AuthenticationManagerBuilder auth),里面主要是如果用户密码有加密,如md5等,encode(CharSequence charSequence)方法使用来对密码解密的,然后返回解密密码,但是不知为何只输出了userNotFoundPassword,matches(CharSequence charSequence, String s)进行输入密码和解密密码进行比较的,返回true才能登陆成功

你可能感兴趣的:(Spring Security 数据库安全认证)