当前位置: 首页 > 知识库问答 >
问题:

Spring Security Spring-boot-starter-web从1.2.5迁移到1.3.2

戚甫
2023-03-14

我在应用程序中使用spring security。到现在我用

boot spring-boot-starter-Web 1.2.5版本

现在我要使用

@Configuration
@EnableGlobalMethodSecurity(prePostEnabled = true)
@EnableWebSecurity
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {

@Autowired
private UserDetailsService userService;

@Autowired
public void configureAuth(AuthenticationManagerBuilder auth) throws Exception {
    auth.userDetailsService(userService).passwordEncoder(new BCryptPasswordEncoder());
}

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests().anyRequest().authenticated().and().formLogin().loginPage("/login.html")
            .failureUrl("/login.html?error").defaultSuccessUrl("/index", true).permitAll().and().logout()
            .logoutSuccessUrl("/logout.html").permitAll().and().csrf().disable();
 }
}
@RequestMapping("/test")
@PreAuthorize("hasRole('ADMIN')")
public List<Tests> getTests() {
    return ...
}

共有1个答案

嵇昱
2023-03-14

当从1.2.5升级到1.3.2时,还将spring-security从3.x更新到4.x。

您可以在自己的项目中重写Spring Security性依赖项,以保留以前版本的Spring-Security。(我不认为它是推荐的,至少你会在启动时看到警告)

或者,您可以仔细阅读下面的文档,并在从spring-security 3.x升级到4.x时执行所有必要的配置更新

 类似资料:
  • 我想从旧的spring boot安全应用程序迁移到KeyClope。下面是我的安全配置。 我已经安装了KeyClope,它正在8080端口上运行。我发现的问题是,我们应该在keydape管理页面上创建角色和用户,但我当前的系统是什么,用户和角色都在我的MySQL数据库上。我不想将用户和角色插入keydape以进行身份验证和授权。

  • 我刚刚从eclipse转移到IntelliJ。我有一个Spring启动项目,在eclipse中运行完美。但是当我试图在IntelliJ上运行它时,我得到了“进程完成并退出代码1”,我已经尝试了所有接下来的解决方案: https://stackoverflow.com/search?q=eclipseintellijSpring靴 但什么都不管用。有什么建议吗?Spring启动配置

  • 我有一个spring mvc项目,想转换成spring boot。所以我改变了计划: POM文件: 启动(主)类: 只有这些改变,我做到了。使用此启动程序应用程序正在启动,但未打开。我想打开一个jsp作为欢迎文件。 项目目录结构:

  • 我有一个Web项目,我很容易在tomcat上对其进行depoly。事实上,我有一个实现的类(这个类真的很胖),因为你知道每个支持servlet 3.0的应用程序服务器,它可以很容易地检测到它并尝试启动它。现在我想知道是否可以使用Spring启动启动器,并且无需任何进一步的配置,我将我的传递给它,并根据我的启动我的项目进行Spring启动? 我只想使用spring boot的方法在Tomcat上部署

  • 主要内容:Spring Boot Web 快速开发,示例 Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,其本身就是 Spring 框架的一部分,可以与 Spring 无缝集成,性能方面具有先天的优越性,是当今业界最主流的 Web 开发框架之一。   Spring Boot 是在 Spring 的基础上创建一款开源框架,它提供了 spring-boot-starter-web(Web 场景启动器) 来为

  • 我正在努力学习spring boot,我注意到有两种选择。 > spring-boot-starter-web-根据文档,它支持全栈web开发,包括Tomcat和web-mvc spring-Boot-Starter-Tomcat 既然#1支持Tomcat,为什么要使用#2呢? 有什么不同? 谢谢