跳至主要內容
Spring Security

介绍

针对spring3.x以xml方式集成security

配置文件

<sec:http access-decision-manager-ref="accessDecisionManager" auto-config="true" entry-point-ref="authenticationEntryPoint">
		<sec:logout />
		<sec:anonymous granted-authority="A_ANONYMOUS" />
		<sec:custom-filter ref="authenticationFilter" before="FORM_LOGIN_FILTER"/>
		<sec:custom-filter ref="filterSecurityInterceptor" before="FILTER_SECURITY_INTERCEPTOR"/>
		<sec:custom-filter ref="switchRoleProcessingFilter" before="SWITCH_USER_FILTER"/>
		<sec:form-login login-processing-url="/j_spring_security_login"/>	
</sec:http>

zzz小于 1 分钟后端SpringSpring Security
IOC

IOC

待完善...


zzz小于 1 分钟后端Spring
SpringMVC

SpringMVC

核心组件

Front Controller + Page Controller概念来分离流程控制逻辑与具体的Web请求处理逻辑。

org.springframework.web.servlet.DispatcherServlet就是Spring MVC框架中的Front Controller,它负责接收处理所有的Web请求,针对具体的处理逻辑委派给下一级控制器去实现。

核心组件:

  1. HandlerMapping

专门管理Web请求到具体处理类之间的映射关系,获取对应当前Web请求到具体处理类,即org.springframework.web.servlet.mvc.Controller


zzz小于 1 分钟后端SpringSpringMVCWeb
匿名权限

匿名权限

匿名权限配置

  • 定义匿名权限名称

<sec:anonymous granted-authority="A_ANONYMOUS" />A_ANONYMOUS为权限名

  • 资源与匿名权限做好关联

如果未登录属于匿名权限,那么AnonymousAuthenticationFilter会为当前用户设置匿名权限的上下文,访问资源时会根据当前资源url查找其对应的权限,然后将拿到的资源对应的权限和匿名用户上下文中的权限名进行匹配。如果命中则表示有权限。


zzz小于 1 分钟后端SpringSpring Security
Servlet应用

Servlet应用

spring-security文档 调试环境为spring-boot:2.1.4 + spring-security:5.1.10 + spring-security-oauth2:2.3.5的项目环境

SpringBoot自动配置


zzz大约 7 分钟后端SpringSpring Security
选择器

选择器

BootstrapImportSelector

BootstrapImportSelector
@Override
public String[] selectImports(AnnotationMetadata annotationMetadata) {
	ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
	// Use names and ensure unique to protect against duplicates
	List<String> names = new ArrayList<>(SpringFactoriesLoader
			.loadFactoryNames(BootstrapConfiguration.class, classLoader));


zzz小于 1 分钟后端SpringSpring Cloud
Spring Cloud

介绍

SpringCloud的学习笔记

2020-10-22

版本选择

Spring Boot

github

官网


zzz大约 2 分钟后端SpringSpring Cloud
容器初始化过程

容器初始化过程

提示

以Spring3.2源码进行阅读,主要是xml的配置方式

概要

项目集成spring一般会在web.xml中配置ContextLoaderListenercontextConfigLocation

ContextLoaderListener是用来完成Spring上下文初始化的关键


zzz大约 7 分钟后端Spring