java web logout_java – spring-security login?logout重定向到登录
我使用
spring-security 3.2.0.RC2与
java配置和两个HttpSecurity配置.一个用于REST API,一个用于UI.
当我发布到/ logout它重定向到/ login?logout然后(错误地)重定向到/ login.
当我成功输入用户名和密码后,我被重定向到登录?注销并且必须再次输入凭证才能进入主页面.
因此,登录的permitAll似乎没有因登录而受到尊重?注销.
我的安全配置如下所示:
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Resource
private MyUserDetailsService userDetailsService;
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth)
throws Exception {
StandardPasswordEncoder encoder = new StandardPasswordEncoder();
auth.userDetailsService(userDetailsService).passwordEncoder(encoder);
}
@Configuration
@Order(1)
public static class RestSecurityConfig
extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.antMatcher("/v1/**").authorizeRequests()
.antMatchers("/v1/admin/**").hasRole("admin")
.antMatchers("/v1/account/**").hasRole("admin")
.antMatchers("/v1/plant/**").access("hasRole('admin') or hasRole('dataProvider')")
.antMatchers("/v1/upload/**").access("hasRole('admin') or hasRole('dataProvider')")
.antMatchers("/v1/**").authenticated()
.and().httpBasic();
}
}
@Configuration
@Order(2)
public static class UiSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/resources/**");
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/account/**").hasRole("admin")
.antMatchers("/admin/**").hasRole("admin")
.antMatchers("/plant/**").access("hasRole('admin') or hasRole('dataProvider')")
.antMatchers("/upload/**").access("hasRole('admin') or hasRole('dataProvider')")
.anyRequest().authenticated()
.and().formLogin().loginPage("/login").permitAll();
}
}
}
谁能解释为什么会发生这种情况或者我的配置有什么问题?
我在这个配置中看到的第二个问题是jsp标签sec:authorize url = …不起作用,尽管sec:authorize access = …确实有效.
在url = …情况下,即使用户未获得授权,它也始终显示内容.
我知道用户没有被授权,因为命中应该被sec:authorize标签隐藏的链接导致403 Forbidden.
对此的任何帮助非常感谢!
java web logout_java – spring-security login?logout重定向到登录相关推荐
- [转载]spring security 的 logout 功能
原文地址:spring security 的 logout 功能作者:sumnny 转载自:http://lengyun3566.iteye.com/blog/1114464 理解退出功能 术语退出( ...
- 基于Spring Security与JWT实现单点登录
基于RBAC的权限管理 RBAC(Role-Based Access Control):基于角色的访问控制 当前项目中,RBAC具体的表现为: 管理员表:ams_admin 角色表:ams_role ...
- 手把手教你如何使用Spring Security(上):登录授权
文章目录 一.什么是 Spring Security? 官方介绍 通俗来讲 二.初始搭建 创建 启动 三.项目原理 原理 思考 四.登录认证 登录过滤器 配置过滤器链 类补充 五.登录效果 效果演示 ...
- Spring Security OAuth2——自定义OAuth2第三方登录(Gitee)并与UsernamePassword登录关联解决方案
前文:Spring Security OAuth2--自定义OAuth2第三方登录(Gitee) Maven 主要 <!--Spring Security--><dependency ...
- Spring Boot + Spring Security + JWT + 微信小程序登录
Spring Boot + Spring Security + JWT + 微信小程序登录整合教程 参考文章 文章目录 整合思想 整合步骤 1. AuthenticationToken 2. Auth ...
- 基于Spring Security的AJAX请求需要登录的解决方案
基于Spring Security的AJAX请求需要登录的解决方案 参考文章: (1)基于Spring Security的AJAX请求需要登录的解决方案 (2)https://www.cnblogs. ...
- java oauth sso 源码_基于Spring Security Oauth2的SSO单点登录+JWT权限控制实践
概 述 在前文<基于Spring Security和 JWT的权限系统设计>之中已经讨论过基于 Spring Security和 JWT的权限系统用法和实践,本文则进一步实践一下基于 Sp ...
- java hipster!_通过Java Hipster升级Spring Security OAuth和JUnit测试
java hipster! "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权 ...
- 通过Java Hipster升级Spring Security OAuth和JUnit测试
"我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证. 使用单元 ...
最新文章
- Spring Boot实战:异步编程指南
- 量化交易python入门书籍_量化交易新手最适用的5本书
- 使用C#中的ref关键字,用2个简单例子来说明
- 大数据在银行业的应用场景
- nyoj3533D dungeon
- 服务器损坏mysql修复_云服务器mysql数据库损坏修复mysql
- Django实战(1):需求分析和设计
- CTL_CODE定义中Method的说明
- xcode+文字支持html元素,iOS使用UITextview实现富文本编辑
- [Vue.js]实战 -- 电商项目(二)
- android 代码水印,Android实现为图片添加水印
- 原 IntelliJ IDEA 中 右键新建时,选项没有Java class的解决方法和具体解释
- day_work_01
- numpy广播机制小结
- java多线程Thread.sleep方法用法详解
- 安装centos7.3操作系统
- SocksCapV2+Socks2HTTP
- 软件开发成本度量之类比法估算软件工作量
- window10运行不了1stopt_1stopt win10版下载
- visio 怎么画直线