spring-boot - 为什么在尝试通过 Spring Boot Security 生成的默认用户名“用户”和安全密码登录时出现白标签错误页面?
问题描述
我一直在尝试通过 Spring Boot Security 提供的默认登录名登录我的应用程序,但在输入正确的凭据后我收到以下错误消息:
“此应用程序没有明确的 /error 映射,因此您将其视为后备。”
这是我的 Pom.xml:
4.0.0 org.springframework.boot spring-boot-starter-parent 2.4.0 com.pma Project-Management-Application 0.0.1-SNAPSHOT Project-Management-Application 项目管理应用
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
这是安全日志:
2020-12-18 15:41:27.518 INFO 12460 --- [ restartedMain] com.pma.ProjectManagementApplication : Starting ProjectManagementApplication using Java 15 on DESKTOP-K6PLQI6 with PID 12460 (C:\Users\RaviKiranKrovvidi\Documents\workspace-spring-tool-suite-4-4.8.1.RELEASE\Project-Management-Application\target\classes started by RaviKiranKrovvidi in C:\Users\RaviKiranKrovvidi\Documents\workspace-spring-tool-suite-4-4.8.1.RELEASE\Project-Management-Application)
2020-12-18 15:41:27.522 DEBUG 12460 --- [ restartedMain] com.pma.ProjectManagementApplication : Running with Spring Boot v2.4.0, Spring v5.3.1
2020-12-18 15:41:27.523 INFO 12460 --- [ restartedMain] com.pma.ProjectManagementApplication : The following profiles are active: dev
2020-12-18 15:41:27.596 INFO 12460 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2020-12-18 15:41:27.596 INFO 12460 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2020-12-18 15:41:28.852 INFO 12460 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFERRED mode.
2020-12-18 15:41:28.924 INFO 12460 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 61 ms. Found 2 JPA repository interfaces.
2020-12-18 15:41:29.731 INFO 12460 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2020-12-18 15:41:29.926 INFO 12460 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2329 ms
2020-12-18 15:41:30.485 INFO 12460 --- [ restartedMain] o.s.b.a.h2.H2ConsoleAutoConfiguration : H2 console available at '/h2-console'. Database available at 'jdbc:mysql://localhost:3306/pma_springbootdb'
2020-12-18 15:41:30.811 INFO 12460 --- [ restartedMain] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
2020-12-18 15:41:31.149 WARN 12460 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2020-12-18 15:41:31.998 INFO 12460 --- [ restartedMain] .s.s.UserDetailsServiceAutoConfiguration :
Using generated security password: d0a18f3e-7ebf-483c-b3e1-eb5248836d76
2020-12-18 15:41:32.290 DEBUG 12460 --- [ restartedMain] edFilterInvocationSecurityMetadataSource : Adding web access control expression [authenticated] for any request
2020-12-18 15:41:32.354 INFO 12460 --- [ restartedMain] o.s.s.web.DefaultSecurityFilterChain : Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@35a4d566, org.springframework.security.web.context.SecurityContextPersistenceFilter@72cafdb2, org.springframework.security.web.header.HeaderWriterFilter@716a21b0, org.springframework.security.web.csrf.CsrfFilter@6f94b191, org.springframework.security.web.authentication.logout.LogoutFilter@52486c35, org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@5cd6385c, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@250bb4ff, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@2a7a8ca7, org.springframework.security.web.authentication.www.BasicAuthenticationFilter@6fc788ed, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7380a413, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@19fe6101, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@7929e9e5, org.springframework.security.web.session.SessionManagementFilter@7ea5da27, org.springframework.security.web.access.ExceptionTranslationFilter@290ebb3a, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@a638441]
2020-12-18 15:41:32.518 INFO 12460 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2020-12-18 15:41:32.649 INFO 12460 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2020-12-18 15:41:32.654 INFO 12460 --- [ restartedMain] DeferredRepositoryInitializationListener : Triggering deferred initialization of Spring Data repositories…
2020-12-18 15:41:33.618 INFO 12460 --- [ task-1] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2020-12-18 15:41:33.986 INFO 12460 --- [ restartedMain] DeferredRepositoryInitializationListener : Spring Data repositories initialized!
2020-12-18 15:41:33.999 INFO 12460 --- [ restartedMain] com.pma.ProjectManagementApplication : Started ProjectManagementApplication in 7.018 seconds (JVM running for 8.606)
2020-12-18 15:43:26.881 INFO 12460 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2020-12-18 15:43:26.883 INFO 12460 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 1 ms
2020-12-18 15:43:26.895 DEBUG 12460 --- [nio-8080-exec-1] o.s.security.web.FilterChainProxy : Securing GET /login
2020-12-18 15:43:26.899 DEBUG 12460 --- [nio-8080-exec-1] s.s.w.c.SecurityContextPersistenceFilter : Set SecurityContextHolder to empty SecurityContext
2020-12-18 15:43:27.026 DEBUG 12460 --- [nio-8080-exec-1] w.c.HttpSessionSecurityContextRepository : Did not store empty SecurityContext
2020-12-18 15:43:27.029 DEBUG 12460 --- [nio-8080-exec-1] s.s.w.c.SecurityContextPersistenceFilter : Cleared SecurityContextHolder to complete request
2020-12-18 15:43:28.245 DEBUG 12460 --- [nio-8080-exec-2] o.s.security.web.FilterChainProxy : Securing GET /login
2020-12-18 15:43:28.246 DEBUG 12460 --- [nio-8080-exec-2] s.s.w.c.SecurityContextPersistenceFilter : Set SecurityContextHolder to empty SecurityContext
2020-12-18 15:43:28.247 DEBUG 12460 --- [nio-8080-exec-2] w.c.HttpSessionSecurityContextRepository : Did not store empty SecurityContext
2020-12-18 15:43:28.247 DEBUG 12460 --- [nio-8080-exec-2] s.s.w.c.SecurityContextPersistenceFilter : Cleared SecurityContextHolder to complete request
2020-12-18 15:43:32.406 DEBUG 12460 --- [nio-8080-exec-3] o.s.security.web.FilterChainProxy : Securing POST /login
2020-12-18 15:43:32.407 DEBUG 12460 --- [nio-8080-exec-3] s.s.w.c.SecurityContextPersistenceFilter : Set SecurityContextHolder to empty SecurityContext
2020-12-18 15:43:32.656 DEBUG 12460 --- [nio-8080-exec-3] o.s.s.a.dao.DaoAuthenticationProvider : Authenticated user
2020-12-18 15:43:32.658 DEBUG 12460 --- [nio-8080-exec-3] .s.ChangeSessionIdAuthenticationStrategy : Changed session id from 98920E20F226D1EB6BF133DBECF0E72E
2020-12-18 15:43:32.658 DEBUG 12460 --- [nio-8080-exec-3] o.s.s.w.csrf.CsrfAuthenticationStrategy : Replaced CSRF Token
2020-12-18 15:43:32.659 DEBUG 12460 --- [nio-8080-exec-3] w.a.UsernamePasswordAuthenticationFilter : Set SecurityContextHolder to UsernamePasswordAuthenticationToken [Principal=org.springframework.security.core.userdetails.User [Username=user, Password=[PROTECTED], Enabled=true, AccountNonExpired=true, credentialsNonExpired=true, AccountNonLocked=true, Granted Authorities=[]], Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=0:0:0:0:0:0:0:1, SessionId=98920E20F226D1EB6BF133DBECF0E72E], Granted Authorities=[]]
2020-12-18 15:43:32.660 DEBUG 12460 --- [nio-8080-exec-3] o.s.s.web.DefaultRedirectStrategy : Redirecting to /
2020-12-18 15:43:32.661 DEBUG 12460 --- [nio-8080-exec-3] w.c.HttpSessionSecurityContextRepository : Stored SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=org.springframework.security.core.userdetails.User [Username=user, Password=[PROTECTED], Enabled=true, AccountNonExpired=true, credentialsNonExpired=true, AccountNonLocked=true, Granted Authorities=[]], Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=0:0:0:0:0:0:0:1, SessionId=98920E20F226D1EB6BF133DBECF0E72E], Granted Authorities=[]]] to HttpSession [org.apache.catalina.session.StandardSessionFacade@6bd7f0d3]
2020-12-18 15:43:32.661 DEBUG 12460 --- [nio-8080-exec-3] s.s.w.c.SecurityContextPersistenceFilter : Cleared SecurityContextHolder to complete request
2020-12-18 15:43:32.667 DEBUG 12460 --- [nio-8080-exec-4] o.s.security.web.FilterChainProxy : Securing GET /
2020-12-18 15:43:32.668 DEBUG 12460 --- [nio-8080-exec-4] w.c.HttpSessionSecurityContextRepository : Retrieved SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=org.springframework.security.core.userdetails.User [Username=user, Password=[PROTECTED], Enabled=true, AccountNonExpired=true, credentialsNonExpired=true, AccountNonLocked=true, Granted Authorities=[]], Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=0:0:0:0:0:0:0:1, SessionId=98920E20F226D1EB6BF133DBECF0E72E], Granted Authorities=[]]]
2020-12-18 15:43:32.668 DEBUG 12460 --- [nio-8080-exec-4] s.s.w.c.SecurityContextPersistenceFilter : Set SecurityContextHolder to SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=org.springframework.security.core.userdetails.User [Username=user, Password=[PROTECTED], Enabled=true, AccountNonExpired=true, credentialsNonExpired=true, AccountNonLocked=true, Granted Authorities=[]], Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=0:0:0:0:0:0:0:1, SessionId=98920E20F226D1EB6BF133DBECF0E72E], Granted Authorities=[]]]
2020-12-18 15:43:32.676 DEBUG 12460 --- [nio-8080-exec-4] o.s.s.w.a.i.FilterSecurityInterceptor : Authorized filter invocation [GET /] with attributes [authenticated]
2020-12-18 15:43:32.677 DEBUG 12460 --- [nio-8080-exec-4] o.s.security.web.FilterChainProxy : Secured GET /
2020-12-18 15:43:32.689 DEBUG 12460 --- [nio-8080-exec-4] s.s.w.c.SecurityContextPersistenceFilter : Cleared SecurityContextHolder to complete request
2020-12-18 15:43:32.691 DEBUG 12460 --- [nio-8080-exec-4] o.s.security.web.FilterChainProxy : Securing GET /error
2020-12-18 15:43:32.691 DEBUG 12460 --- [nio-8080-exec-4] w.c.HttpSessionSecurityContextRepository : Retrieved SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=org.springframework.security.core.userdetails.User [Username=user, Password=[PROTECTED], Enabled=true, AccountNonExpired=true, credentialsNonExpired=true, AccountNonLocked=true, Granted Authorities=[]], Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=0:0:0:0:0:0:0:1, SessionId=98920E20F226D1EB6BF133DBECF0E72E], Granted Authorities=[]]]
2020-12-18 15:43:32.692 DEBUG 12460 --- [nio-8080-exec-4] s.s.w.c.SecurityContextPersistenceFilter : Set SecurityContextHolder to SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=org.springframework.security.core.userdetails.User [Username=user, Password=[PROTECTED], Enabled=true, AccountNonExpired=true, credentialsNonExpired=true, AccountNonLocked=true, Granted Authorities=[]], Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=0:0:0:0:0:0:0:1, SessionId=98920E20F226D1EB6BF133DBECF0E72E], Granted Authorities=[]]]
2020-12-18 15:43:32.692 DEBUG 12460 --- [nio-8080-exec-4] o.s.security.web.FilterChainProxy : Secured GET /error
2020-12-18 15:43:32.737 DEBUG 12460 --- [nio-8080-exec-4] s.s.w.c.SecurityContextPersistenceFilter : Cleared SecurityContextHolder to complete request
解决方案
推荐阅读
- pytest - 重新运行时更改 pytest 参数
- react-native - React Native 自定义字体问题 0.63.4
- javascript - 使滚动时菜单中“活动”类的更改更加可靠
- javascript - 如何在 fullCalendar 中隐藏事件?
- ubuntu-18.04 - 如何在 linux 中打开 dlt 查看器
- javascript - 我如何使用 jquery 在 html 中取值并从其他值中扣除它
- python - Finding mean of a list of values for each year given a certain zip code
- sql - Select the last to a certain date record from the dependent table
- java - Spring MVC and Spring Security Integration
- java - Hibernate Envers - how to search non audited entity