请教,spring security 配置
1、原有框架springMVC+ hibernate+mysql,我想在此基础上添加spring security进行登录权限验证,首先想实现将用户名和密码写在配置文件中 2、添加jar org.springframework.security spring-security-core ${org.springframework.version} org.springframework.security spring-security-web ${org.springframework.version} org.springframework.security spring-security-config ${org.springframework.version} 2、web.xml …… springSecurityFilterChain org.springframework.web.filter.DelegatingFilterProxy springSecurityFilterChain /* …… org.springframework.web.context.ContextLoaderListener org.springframework.security.web.session.HttpSessionEventPublisher 3、login.jsp " method="post"> : " /> 4、springSecuritySimple-config.xml xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd"> access-denied-page="/403.jsp" > login-processing-url="j_spring_security_check" always-use-default-target="true" default-target-url="/login.do" authentication-failure-url="/403.jsp" /> logout-success-url="/login.jsp" invalidate-session="true" /> invalid-session-url="/sessionTimeout.do" session-fixation-protection="none"> error-if-maximum-exceeded="true"/>
请教 关于Spring security 获取在线人数的问题
目前Spring官方只提供Meven的下载方式。
但好像直到3.2版的,最新的版本在这个里面找不到[html] view plaincopyorg.springframework.securityspring-security-web3.2.0.RELEASEorg.springframework.securityspring-security-config3.2.0.RELEASE 本教程是基于SpringMVC3.2+Hibernate4+JPA2.0+SpringSecurity3.2的环境。
SpringMVC3.2+Hibernate4+JPA2.0环境的搭建在这里就不多说了,主要讲下SpringSecurity的环境搭建web.xml配置[html] view plaincopy contextConfigLocation classpath:applicationContext.xml, classpath:applicationContext-security.xml springSecurityFilterChainorg.springframework.web.filter.DelegatingFilterProxyspringSecurityFilterChain/* applicationContext-security.xml命名空间配置,官方提供了两种配置方案第一种、命名空间用beans开头,但是在配置中一直需要用来配置。
[html] view plaincopy第二种、命名空间用security开头,在配置中不需要security前缀,但是bean的配置需要用配置。
[html] view plaincopy xmlns:beans=" xsi:schemalocation="http://www.springframework.org/schema/beans 到此为止SpringSecurity的环境配置已基本完成 评论0 0 2
spring security form
是全部利用配置文件,将用户、权限、资源(url)硬编码在xml文件中,已经实现过,并经过验证;二种是用户和权限用数据库存储,而资源(url)和权限的对应采用硬编码配置,目前这种方式已经实现,并经过验证。
三种是细分角色和权限,并将用户、角色、权限和资源均采用数据库存储,并且自定义过滤器,代替原有的FilterSecurityInterceptor过滤器,并分别实现AccessDecisionManager、InvocationSecurityMetadataSourceService和UserDetailsService,并在配置文件中进行相应配置。
目前这种方式已经实现,并经过验证。
四是修改spring security的源代码,主要是修改InvocationSecurityMetadataSourceService和UserDetailsService两个类。
前者是将配置文件或数据库中
如何在Maven中配置Spring Security依赖
展开全部 1.1 spring-security-coreSpring Security的核心功能是由spring-security-core包提供的,包含了认证和访问控制功能、支持standalone应用程序、方法级安全和JDBC支持。
3.2.3.RELEASE 4.0.4.RELEASE org.springframework.security spring-security-core ${org.springframework.security.version}注意:我们使用的是3.2.x版本的Spring Security--Spring和Spring Security有着不同的版本计划,所以他们的版本号之间没有一对一关系。
如果项目使用的是较老版本的Spring,需要注意的时Spring Security 3.1.x版本不依赖于Spring 3.1.x版本,因为Spring Security 3.1.x版本在Spring 3.1之前发布。
Spring的计划是在后续的版本中,使双方的版本号更为接近,更多细节请查看这个JIRA。
我们将在后面的内容中看看这种情况对我们的实际影响。
1.2 spring-security-web要为Spring Security增加Web支持,需要引入spring-security-web依赖: org.springframework.security spring-security-web ${org.springframework.security.version}这个项目为Servlet环境引入了针对URL访问控制的相关基础安全组件和过滤器。
1.3 Spring Security与较老版本的Spring Core之间的依赖问题如上文所述,这个新的依赖产生一个Maven依赖关系问题,Spring Security的相关jar不依赖于最新的Spring core的jar (而是以前的版本)。
这可能使的被依赖的Spring core相关包在类路径中被配置前在最新的Spring 4.x相关包的前面。
这是如何发生的呢?我们需要了解Maven处理版本冲突的机制,Maven会选择与依赖树树根最接近的版本。
在之前的情况中,spring-orm依赖4.x版本的spring-core,而spring-security-core依赖于3.2.8版本的spring-core。
因此,spring-orm和sprint-security-web的定义顺序就是一个问题,先定义的会有更高的优先级。
最终情况就是,我们的类路径中会有两个版本的spring-core。
为了避免这类问题,我们需要在我们的pom文件中明确指定一些Spring依赖,而不依靠Maven隐式依赖机制。
我们将在pom的根文件中定义特定的依赖关系,这样这些依赖关系将会有更高的优先级。
下面例子中,将对所有的Spring核心组件明确定义相同的版本,对于多模块项目,需要在父配置文件的dependencyManagement属性中定义。
org.springframework spring-core ${org.springframework.version} org.springframework spring-context ${org.springframework.version} org.springframework spring-jdbc ${org.springframework.version} org.springframework spring-beans ${org.springframework.version} org.springframework spring-aop ${org.springframework.version} org.springframework spring-tx ${org.springframework.version} org.springframework spring-expression ${org.springframework.version} org.springframework spring-web ${org.springframework.version}1.4 spring-security-config及其他要使用丰富的Spring Security XML的命名空间,需要定义spring-security-config依赖: org.springframework.security spring-security-config ${org.springframework.security.version} runtime没有任何代码需要在编译时依赖这个包,所以它的范围应该定义为runtime。
最后,LDAP、ACL、CAS和OpenID支持需要分别增加各自的依赖包:spring-security-ldap, spring-security-acl, spring-security-cas和spring-security-openid。
转载请注明出处51数据库 » spring security pass
阴隐淫音