Step2-Spring Security 权限框架学习与演练

一.Spring Security权限管理框架介绍

这里写图片描述

二.Spring Security常用拦截器讲解

这里写图片描述

SecurityContextPersistenceFilter
LogouFilter
AbstractAuthenticationProcessingFilter
DefaultLoginPageGeneratingFilter
BasicAuthenticationFilter
SecurityContextHolderAwareRequesFilter
RememberMeAuthenticationFilter
AnonymousAuthenticationFilter
ExceptionTranslationFilter
SessionManagementFilter
FilterSecurityInteceptor
FilterChainProxy

三.Spring Security-数据库管理

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

四.基于SpringBoot的SpringSecurity环境快速搭建与验证
1.打开链接 http://start.spring.io,做一下相关的修改配置。

这里写图片描述

下面可以选择勾选很多的插件,我们现在只勾选Security环境和Web环境。

这里写图片描述

点击“Generate Project”按钮,生成一个project,自动下载到本地,解压,使用我这里使用IntelliJ IDEA开发工具打开,发现这就是一个完整的项目。

这里写图片描述

这里写图片描述

运行环境,检测项目是否Ok

这里写图片描述

修改pom.xml文件

这里写图片描述

把这个默认引入的包注释掉,运行项目。

这里写图片描述

再次修改pom.xml文件,运行项目。
这里写图片描述

这里写图片描述

然后再打开SpringSecurity

这里写图片描述

新建一个类型SpringSecurityConfig

这里写图片描述

这里写图片描述

这里写图片描述

package com.mmall.demo;

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;

/**
 * Created by mac on 2017/12/27.
 */
@Configuration
@EnableWebSecurity  //打开Web支持

//extends 实现类
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter{

    @Override
    protected void configure(HttpSecurity http) throws Exception {//此方法设置哪些请求会被拦截,以及一些请求应该怎样处理
        http.authorizeRequests()
                .antMatchers("/").permitAll()//项目主路径可以随意访问
                .anyRequest().authenticated()//其他请求都是受限制的
                .and() //允许
                .logout().permitAll()//允许注销,随意访问
                .and()
                .formLogin();//允许表单登录
        http.csrf().disable();
    }

    @Override
    public void configure(WebSecurity web) throws Exception{
        web.ignoring().antMatchers("/js/**","/css/**","/images/**");//设置js,css,images都不去做权限拦截
    }
}

这里写图片描述

启动项目。

访问主路径依旧可以请求,但是访问hello则受限制。

这里写图片描述

此时,我们基于SpringBoot的SpringSecurity环境已经搭建Ok了,下一篇我们继续对SpringSecurity的其他内容做示例。

三.SpringBoot常用注解讲解

这里写图片描述

1.@RestController

这里写图片描述

引入RestController相当于同时引入@Controller和@ResponseBody这两个注解。

2.@EnableAutoConfiguration

作用:SpringBoot会根据架包的依赖来自动配置项目

@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
意思是从自动配置里面显示的移除掉DataSourceAutoConfiguration.class

3.@SpringBootApplication

这里写图片描述

由于项目中大量使用Configuration,ComponetScan,EnableAtutoConfiguration使用SpringBootApplication可以替代上面三个注解。

maven的国内阿里云镜像

/*
<mirrors>
  <mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
   </mirror>
</mirrors>
*/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值