spring-security 相关问题

Spring Security是Spring Framework的应用程序安全解决方案。 Spring安全性可用于保护URL和方法调用。它广泛用于保护独立的Web应用程序,portlet和越来越多的REST应用程序。

异常发送上下文初始化事件到类org.springframework.web.context.ContextLoaderListener的监听器实例

我正在尝试实现 Spring Security 登录,并且尝试过类似的操作: spring-security.xml: 我正在尝试实现 Spring Security 登录,并且我尝试过类似的操作: spring-security.xml: <beans:beans xmlns="http://www.springframework.org/schema/security" 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.1.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <http auto-config="true" use-expressions="true"> <intercept-url pattern="/login" access="permitAll" /> <intercept-url pattern="/logout" access="permitAll" /> <intercept-url pattern="/accessdenied" access="permitAll" /> <intercept-url pattern="/**" access="hasRole('ROLE_USER')" /> <form-login login-page="/login" default-target-url="/list" authentication-failure-url="/accessdenied" /> <logout logout-success-url="/logout" /> </http> <authentication-manager alias="authenticationManager"> <authentication-provider> <user-service> <user name="lokesh" password="password" authorities="ROLE_USER" /> </user-service> </authentication-provider> </authentication-manager> </beans:beans> web.xml: <servlet> <servlet-name>spring</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/spring-servlet.xml, /WEB-INF/spring-security.xml </param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- Spring Security --> <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSecurityFilterChain</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 我正在使用 spring 版本:3.1,我在上面的 xml 文件中收到错误。 错误: May 5, 2014 12:33:47 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/spring-security.xml]; nested exception is java.lang.NoClassDefFoundError: org/springframework/security/web/util/AntPathRequestMatcher at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:412) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180) at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125) at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:131) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:522) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:436) at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:377) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:278) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:578) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: java.lang.NoClassDefFoundError: org/springframework/security/web/util/AntPathRequestMatcher at org.springframework.security.config.http.MatcherType.<clinit>(MatcherType.java:22) at org.springframework.security.config.http.HttpConfigurationBuilder.<init>(HttpConfigurationBuilder.java:105) at org.springframework.security.config.http.HttpSecurityBeanDefinitionParser.createFilterChain(HttpSecurityBeanDefinitionParser.java:116) at org.springframework.security.config.http.HttpSecurityBeanDefinitionParser.parse(HttpSecurityBeanDefinitionParser.java:81) at org.springframework.security.config.SecurityNamespaceHandler.parse(SecurityNamespaceHandler.java:88) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1414) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1404) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:184) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:140) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:111) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390) ... 28 more May 5, 2014 12:33:47 PM org.apache.catalina.core.StandardContext start SEVERE: Error listenerStart May 5, 2014 12:33:47 PM org.apache.catalina.core.StandardContext start SEVERE: Context [/HRportal] startup failed due to previous errors May 5, 2014 12:33:47 PM org.apache.catalina.core.ApplicationContext log INFO: Closing Spring root WebApplicationContext May 5, 2014 12:33:47 PM org.apache.catalina.core.StandardContext listenerStop SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:172) at org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1066) at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1040) at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:988) at org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:534) at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:142) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:3882) at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4516) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4380) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:578) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) 谁能纠正我,我哪里错了? 您的类路径中缺少 spring-security-web-3.1.X.RELEASE.jar 如果您的项目中存在另外两个 ContextLoaderListener,就会发生这种情况。 例如:在我的例子中,使用 存在 2 ContextLoaderListener java配置 web.xml 因此,从您的项目中删除任何一个 ContextLoaderListener 并运行您的应用程序。 如果您确定没有弄乱罐子,请清理项目并执行mvn clean install。这应该可以解决问题。 这个答案很有用 1 如果您确定没有弄乱 jar,请清理项目并执行 mvn clean install。这应该可以解决问题。 我做了这件事,但如果我完成了 Maven 更新,它会再次引发

回答 4 投票 0

WebSecurityConfig 类的 Spring 3.2.4,无法扩展 WebSecurityConfigurerAdapter

我正在使用 Spring boot 3.2.4 版本,我试图为我的应用程序 Web 安全创建 WebSecurityConfig 类。在此类中,我尝试扩展 WebSecurityConfigurerAdapter。但我...

回答 1 投票 0

使用 HTTP 标头和自定义数据访问配置 Spring Security 进行身份验证和授权

用户在应用程序外部进行身份验证,请求以 HTTP 标头“授权”形式传入,其值为“承载令牌”。我们需要在所有应用程序端点上进行身份验证,p...

回答 1 投票 0

最简单的 spring 安全配置破坏了我正在运行的 spring-boot 应用程序

我有一个可以工作的 Spring Boot 应用程序,并且可以进行单元测试。 如果我为 Spring Security 添加任何配置,则无法提供任何页面,它只是尝试提供静态内容,而控制器永远不会提供服务

回答 1 投票 0

ERR 该实例已禁用集群支持

我尝试使用有效的 URL 和端口连接到集群 Redis 我收到此错误: 引起原因:io.lettuce.core.RedisCommandExecutionException:ERR 此实例已禁用集群支持 在io.

回答 3 投票 0

如何使用 OAuth2 通过 Spring 获取自定义主体对象?

我有一个使用 spring-security-jwt 和 spring-security-oauth2 的 Spring Boot 应用程序。我有一个扩展 UserDetails 的自定义 User 对象和一个返回此对象的 Custom UserDetailsService...

回答 1 投票 0

PKIX 路径验证失败:java.security.cert.CertPathValidatorException:签名检查失败

来自 Carlo Scarioni 的 Pro Spring Security 书籍,我正在尝试将 Spring 应用程序与 CAS 服务器集成。我按照书上指示的每一步进行操作,但仍然遇到这个错误。请...

回答 8 投票 0

如何在Spring Security中配置多个oauth2重定向uri

鉴于我有 3 个 oauth2 提供商,我如何自定义他们的客户端注册重定向-Uris。 它们并不都符合默认模式 /login/oauth2/code/{registrationId} Azure AD B2C 有自定义:/...

回答 1 投票 0

authorizeHttpRequest.anyRequest().authenicated()使用什么过滤器?

这是我的 SecurityConfig 类,即使我的自定义过滤器:SettingsAPIAuthFilter 成功验证了请求,它也会返回 403,因为: .authorizeHttpRequests(auth -> auth.

回答 1 投票 0

Spring Boot 安全性 - 使用 Cookie 中的令牌而不是授权标头

您好,我正在尝试从 Spring Security 会话身份验证和授权迁移到通过 JWT 进行身份验证。我有一个关于我遇到的具体情况的问题。而不是使用

回答 1 投票 0

如何根据配置文件或特定属性禁用 Spring (Boot) Security OAuth?

我正在将 OAuth2(Google 作为 OIDC 提供者)集成到当前使用简单 DaoAuthenticationProvider 的现有 Spring Boot 应用程序中。我已进行更改以使 OAuth 集成正常工作,...

回答 1 投票 0

将 Keycloak 与 Angular 和 Spring Boot 集成以进行身份验证/授权

我目前正在致力于保护一个使用 Angular 16 和 Spring Boot 3.2 与 Keycloak 的应用程序。为了实现这一点,我添加了 spring-boot-starter-oauth2-client 和 spring-boot-starter-

回答 1 投票 0

无法弄清楚为什么springboot给出401错误

我正在尝试构建个人项目,我遇到了 Spring Security 的问题,我无法解决您的帮助,我们将表示感谢 问题 - > 问题是,即使配置了安全性和流程

回答 1 投票 0

尝试使用 useSignOut 钩子时,无法在顶层调用 React Hook“useSetupInterceptors”

我正在尝试学习react js和springboot应用程序,当java重新启动时,我使jwt令牌中的tokenVersion(jwt有效负载中的时间戳而不是实际令牌)无效。 当java重新启动时...

回答 1 投票 0

来自 custom-security-spring-boot-starter 的身份验证 bean 不应用于应用程序

我正在制作custom-security-spring-boot-starter。 问题是应用程序不使用我的身份验证 bean。看起来只是使用依赖 spring-boot-starter-security 和默认的 auth bean...

回答 1 投票 0

Spring Security 会阻止 POST 请求,尽管有 SecurityConfig

我正在开发一个基于 Spring Boot (spring-boot-starter-web) 的 REST API,其中我使用 Spring Security (spring-security-core e spring-security-config) 来保护不同的端点。

回答 4 投票 0

CORS 过滤器和其他一些过滤器在 SpringBoot 中不起作用

SimpleCorsFilter 类未被使用。此外,Auth Controller 和 Admin Contoller 中的方法也没有被使用。 SpringApplication 似乎没有扫描它们。结果...

回答 1 投票 0

403 迁移到 Spring Boot 3 后禁止使用基本身份验证的挂起控制器方法

我最近将 Spring Boot MVC Kotlin 项目迁移到 Spring Boot 3。基本身份验证用于 REST 控制器(通过 SecurityFilterChain 配置 - 也从 WebSecurityConfigurerAdap 迁移...

回答 3 投票 0

Spring Security BadCredentialsException

我正在遵循这个 Baeldung 教程,我看不到任何差异(除了预生成的登录页面模板),但在尝试使用硬

回答 4 投票 0

Spring 安全性允许任何端点重定向到 /login

下面是根据新的 Spring Security 6 / Spring boot 3 文档创建的 SecurityFilterChain bean。请告诉我这是预期的结果还是出现问题。 代码 : @配置...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.