我使用

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重定向到登录相关推荐

  1. [转载]spring security 的 logout 功能

    原文地址:spring security 的 logout 功能作者:sumnny 转载自:http://lengyun3566.iteye.com/blog/1114464 理解退出功能 术语退出( ...

  2. 基于Spring Security与JWT实现单点登录

    基于RBAC的权限管理 RBAC(Role-Based Access Control):基于角色的访问控制 当前项目中,RBAC具体的表现为: 管理员表:ams_admin 角色表:ams_role ...

  3. 手把手教你如何使用Spring Security(上):登录授权

    文章目录 一.什么是 Spring Security? 官方介绍 通俗来讲 二.初始搭建 创建 启动 三.项目原理 原理 思考 四.登录认证 登录过滤器 配置过滤器链 类补充 五.登录效果 效果演示 ...

  4. Spring Security OAuth2——自定义OAuth2第三方登录(Gitee)并与UsernamePassword登录关联解决方案

    前文:Spring Security OAuth2--自定义OAuth2第三方登录(Gitee) Maven 主要 <!--Spring Security--><dependency ...

  5. Spring Boot + Spring Security + JWT + 微信小程序登录

    Spring Boot + Spring Security + JWT + 微信小程序登录整合教程 参考文章 文章目录 整合思想 整合步骤 1. AuthenticationToken 2. Auth ...

  6. 基于Spring Security的AJAX请求需要登录的解决方案

    基于Spring Security的AJAX请求需要登录的解决方案 参考文章: (1)基于Spring Security的AJAX请求需要登录的解决方案 (2)https://www.cnblogs. ...

  7. java oauth sso 源码_基于Spring Security Oauth2的SSO单点登录+JWT权限控制实践

    概 述 在前文<基于Spring Security和 JWT的权限系统设计>之中已经讨论过基于 Spring Security和 JWT的权限系统用法和实践,本文则进一步实践一下基于 Sp ...

  8. java hipster!_通过Java Hipster升级Spring Security OAuth和JUnit测试

    java hipster! "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权 ...

  9. 通过Java Hipster升级Spring Security OAuth和JUnit测试

    "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证. 使用单元 ...

最新文章

  1. Spring Boot实战:异步编程指南
  2. 量化交易python入门书籍_量化交易新手最适用的5本书
  3. 使用C#中的ref关键字,用2个简单例子来说明
  4. 大数据在银行业的应用场景
  5. nyoj3533D dungeon
  6. 服务器损坏mysql修复_云服务器mysql数据库损坏修复mysql
  7. Django实战(1):需求分析和设计
  8. CTL_CODE定义中Method的说明
  9. xcode+文字支持html元素,iOS使用UITextview实现富文本编辑
  10. [Vue.js]实战 -- 电商项目(二)
  11. android 代码水印,Android实现为图片添加水印
  12. 原 IntelliJ IDEA 中 右键新建时,选项没有Java class的解决方法和具体解释
  13. day_work_01
  14. numpy广播机制小结
  15. java多线程Thread.sleep方法用法详解
  16. 安装centos7.3操作系统
  17. SocksCapV2+Socks2HTTP
  18. 软件开发成本度量之类比法估算软件工作量
  19. window10运行不了1stopt_1stopt win10版下载
  20. visio 怎么画直线

热门文章

  1. python分解五位数
  2. SVG/CSS路径动画
  3. 一天上手Aurora 8B/10B IP核(5)----从Framing接口的官方例程学起
  4. Storm Event Imagery Dataset 数据简介
  5. 【谷粒学院】001-项目概述、Mybatis Plus入门
  6. 恭喜EDG 夺得冠军
  7. 数据挖掘思维和实战06 数据建模:该如何选择一个适合我需求的算法?
  8. 等比序列的实际应用 —等额本息还款金额公式推导
  9. 模电学习笔记(上交郑老师)1.PN结
  10. 一文通俗搞懂线性无关特征向量个数≤特征值重数