Запрос Spring Boot на favicon.ico вызывает исключение «Отказано в доступе»JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Запрос Spring Boot на favicon.ico вызывает исключение «Отказано в доступе»

Сообщение Anonymous »

У меня есть приложение Spring Boot, которое не является веб-приложением, а просто приложением REST API, которое предоставляет данные. Когда я запрашиваю URL-адрес локального хоста с терминала или почтальона, он работает нормально. Но когда я запрашиваю тот же URL-адрес из браузера, он дает результат, но в режиме регистрации TRACE он также печатает исключение Доступ запрещен. Потому что он также отправляет запрос на /favicon.ico. Я хочу избавиться от этого исключения, но не нашел подходящего решения.

Код: Выделить всё

spring.mvc.favicon.enabled
устарел в версии Spring Boot 2.7. Итак, использовать больше нельзя.

Код: Выделить всё

2024-07-30T11:37:12.142+03:00 DEBUG 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Securing GET /favicon.ico
2024-07-30T11:37:12.142+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking DisableEncodeUrlFilter (1/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking WebAsyncManagerIntegrationFilter (2/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking SecurityContextHolderFilter (3/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking HeaderWriterFilter (4/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking CorsFilter (5/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking LogoutFilter (6/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.s.w.a.logout.LogoutFilter            : Did not match request to Or [Ant [pattern='/logout', GET], Ant [pattern='/logout', POST], Ant [pattern='/logout', PUT], Ant [pattern='/logout', DELETE]]
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking BearerTokenAuthenticationFilter (7/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] .s.r.w.a.BearerTokenAuthenticationFilter : Did not process request since did not find bearer token
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking BasicAuthenticationFilter (8/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.s.w.a.www.BasicAuthenticationFilter  : Did not process authentication request since failed to find username and password in Basic Authorization header
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking RequestCacheAwareFilter (9/14)
2024-07-30T11:37:12.143+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking SecurityContextHolderAwareRequestFilter (10/14)
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking AnonymousAuthenticationFilter (11/14)
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking SessionManagementFilter (12/14)
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] .s.s.w.c.SupplierDeferredSecurityContext : Created SecurityContextImpl [Null authentication]
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.s.w.a.AnonymousAuthenticationFilter  : Set SecurityContextHolder to AnonymousAuthenticationToken [Principal=anonymousUser, Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=127.0.0.1, SessionId=null], Granted Authorities=[ROLE_ANONYMOUS]]
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking ExceptionTranslationFilter (13/14)
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.security.web.FilterChainProxy        : Invoking AuthorizationFilter (14/14)
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] estMatcherDelegatingAuthorizationManager : Authorizing GET /favicon.ico
2024-07-30T11:37:12.144+03:00 TRACE 1963555 --- [nio-8089-exec-2] estMatcherDelegatingAuthorizationManager : Denying request since did not find matching RequestMatcher
2024-07-30T11:37:12.148+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.b.f.s.DefaultListableBeanFactory     : Returning cached instance of singleton bean 'delegatingApplicationListener'
2024-07-30T11:37:12.148+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.b.f.s.DefaultListableBeanFactory     : Returning cached instance of singleton bean 'refreshEventListener'
2024-07-30T11:37:12.148+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.b.f.s.DefaultListableBeanFactory     : Returning cached instance of singleton bean 'startupTimeMetrics'
2024-07-30T11:37:12.148+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.b.f.s.DefaultListableBeanFactory     : Returning cached instance of singleton bean 'springApplicationAdminRegistrar'
2024-07-30T11:37:12.148+03:00 TRACE 1963555 --- [nio-8089-exec-2] o.s.s.w.a.ExceptionTranslationFilter     :  Sending AnonymousAuthenticationToken [Principal=anonymousUser, Credentials=[PROTECTED], Authenticated=true, Details=WebAuthenticationDetails [RemoteIpAddress=127.0.0.1, SessionId=null], Granted Authorities=[ROLE_ANONYMOUS]] to authentication entry point since access is denied

org.springframework.security.access.AccessDeniedException: Access Denied
at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:98) ~[spring-security-web-6.3.1.jar:6.3.1]
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) ~[spring-security-web-6.3.1.jar:6.3.1]
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) ~[spring-security-web-6.3.1.jar:6.3.1]
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) ~[spring-security-web-6.3.1.jar:6.3.1]
....
Кроме того, когда я .permitAll() для конечной точки /favicon.ico, он пересылается на конечную точку /error, потому что /favicon.ico не найдено. Я могу создать фиктивную конечную точку /favicon.ico, чтобы ничего не возвращать в случае запроса, но это не кажется лучшим решением. Должен быть лучший способ избавиться от этой проблемы.
Я использую версию Spring Boot 3.3.2.

Подробнее здесь: https://stackoverflow.com/questions/788 ... -exception
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»