1.web.xml加入spring配置如下:
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-lass>org.springframework.web.filter.DelegatingFilterProxy
</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
//spring监听器
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
2.security_authority.xml配置如下:
<http auto-config='true'>
//指定要拦截的请求,以及拥有的权限
<intercept-url pattern="/login.jsp" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
<intercept-url pattern="/reg.jsp" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
<intercept-url pattern="/admin.jsp" access="ROLE_ADMIN" />
<intercept-url pattern="/index.jsp" access="ROLE_USER,ROLE_ADMIN" />
<form-login login-page="/login.jsp" authentication-failure-url="/error.jsp" default-target-url="/index.jsp"/>
//制定数据源,查询语句
<authentication-manager>
<authentication-provider>
<jdbc-user-service data-source-ref="dataSource"
users-by-username-query="select username,password,status as enabled
from user where username=?"
authorities-by-username-query="select u.username,r.name as authority
from user u join user_role ur
on u.id=ur.user_id join role r
on r.id=ur.role_id where u.username=?" />
</authentication-provider>
</authentication-manager>
</http>
3.数据库表结构如下:
create table role(
id bigint primary key auto_increment,
name varchar(50),
descn varchar(200)
);
create table user(
id bigint primary key auto_increment,
username varchar(50),
password varchar(50),
status integer,
descn varchar(200)
);
create table user_role(
user_id bigint,
role_id bigint
);
alter table user_role add constraint pk_user_role primary key(user_id, role_id);
alter table user_role add constraint fk_user_role_user foreign key(user_id) references user(id);
alter table user_role add constraint fk_user_role_role foreign key(role_id) references role(id);
4.login.jsp如下:
<fieldset>
<legend>登陆</legend>
//注意一下的j_spring_security_check、j_username、j_password不能改变名称
<form action="j_spring_security_check" method="post">
username:<input type="text" name="j_username" value="${sessionScope['SPRING_SECURITY_LAST_USERNAME']}"/>
</br>
password:<input type="text" name="j_password"/>
</br>
<input type="checkbox" name="spring_security_remember_me" />两周之内不必登陆<br />
<input type="submit" value="submit">|<input type="reset" value="reset">
</form>
</fieldset>
//错误信息
${sessionScope['SPRING_SECURITY_LAST_EXCEPTION'].message }
分享到:
相关推荐
本文档内容为基于Spring下的权限管理,主要包含以下内容1、区分Authentication(验证)与 Authorization(授权)2、SS中的验证特点3、SS中的授权特点4、SS核心安全实现5、配置SS6、配置web.xml 7、Spring配置文件中...
Web - spring-security-web.jar 1.4.1.3. Config - spring-security-config.jar 1.4.1.4. LDAP - spring-security-ldap.jar 1.4.1.5. ACL - spring-security-acl.jar 1.4.1.6. CAS - spring-security-cas-...
SpringSecurity,这是一种基于Spring AOP和Servlet过滤器的安全框架。...本实例简单配置了springsecurity权限控制,提供admin,user两个用户,在页面登录时以不同角色可访问不同页面,初学者可加以参考此例 谢谢!
Spring Security 3 Spring Security权限管理开发手册 详细介绍了web app中如何一步步加入 spring security 框架支持,配置灵活,功能强大 中文教程及例子-Spring Security 3 Spring Security rights management ...
主要是为了帮助大家学习SpringSecurity和SpringMvc, 1.不用再数据库建表, 2.使用了SS提供的登录方式,在输入用户名和密码时,进入到服务器后台java文件, 3.判断如果是用户名是admin 密码123,就赋予管理员权限,...
Web - spring-security-web.jar 25 配置 - spring-security-config.jar 26 LDAP - spring-security-ldap.jar 26 ACL - spring-security-acl.jar 26 CAS - spring-security-cas.jar 26 OpenID - spring-security-...
Spring Security是一个功能强大且高度可定制的身份验证和授权框架,专门用于保护Java应用程序的...Web集成:Spring Security能够无缝集成到Spring框架和Spring MVC中,提供了过滤器、标签库等工具,简化了权限控制和
Web - spring-security-web.jar 1.4.1.3. Config - spring-security-config.jar 1.4.1.4. LDAP - spring-security-ldap.jar 1.4.1.5. ACL - spring-security-acl.jar 1.4.1.6. CAS - spring-security-cas-...
Web - spring-security-web.jar 1.4.1.3. Config - spring-security-config.jar 1.4.1.4. LDAP - spring-security-ldap.jar 1.4.1.5. ACL - spring-security-acl.jar 1.4.1.6. CAS - spring-security-cas-...
环境搭建,进行最简单的配置。 第 II 部分 “保护web篇”。谈谈对url的权限控制。 第 III 部分 “内部机制篇”。对方法调用进行权限控制。 第 IV 部分 “ACL篇”。实现ACL(Access Control List)。 第 V 部分 ...
Spring Data JPA和Spring Security Sample项目 连接Spring Data JPA和Spring Security的示例项目 ...WebSecurityConfig:Web Spring安全性配置类 2.实施的事情 每个实体的存储库 交易处理服务 控制器
SpringBoot,通用的验证码处理,高扩展、高可用、配置简单、灵活,支持两种模式:前后端不分离(session存储数据)和前后端分离...引入此包无需再重复引入SpringSecurity的依赖,真正的达到了零配置、高灵活的特性。
如何定义spring security的安全认证框架,对url和系统类method进行过滤以及权限分配和控制
配置Web.xml,应用安全过滤器 配置Spring,验证与授权部分 在web页面中获取用户身份 在web页面中应用安全标签库 实现方法级安全 6、配置web.xml 7、Spring配置文件中设置命名空间 8、通过数据库验证用户身份 9、完善...
只需将某个 flow 声明为“ secured ”,即可利用 Spring Security 来确定当前用户是否有权限运 行 flow 、激发事件等等。 • 更简洁的配置 官方的数据说同一个 flow , 2.0 版的配置比 1.x 版的配置少 50% 的 XML ...
SPRINGSECURITY 3.2 在WEB应用中的案例源码, 1.如何改造登陆验证 2.如何使用数据库中配置的资源权限信息进行访问控制 3.如何控制对SPRINGBEAN中的类方法的控制
如何定义spring security的安全认证框架,对url和系统类method进行过滤以及权限分配和控制(补充) 关于DataBaseFilterInvocationDefinitionSource.java的实现
spring-security-pac4j项目是一个用于Spring Security Web应用程序和Web服务(带有或不带有Spring Boot)的简单而强大的安全性库。 它支持身份验证和授权,还支持会话固定和CSRF保护等高级功能。 它基于Java 8,...
,Spring Web编程模型,基于权限配置的方式:核心是1个拦截器,基于注解的权限控制:核心是1个切面,WebFlux编程模型,基于权限配置的方式:核心是1个过滤器,基于注解的权限控制:核心是1个切面
项目基础框架采用全新的Java Web开发框架-Spring Boot2.0.4,消除了繁杂的XML配置,从而二次开发更为简单;数据访问层采用Mybatis ,同时同步了通用Mapper和PageHelper插件,可快速高效的对单表进行增删改查操作,...