Я прошел этот замечательный урок, чтобы узнать о входе в Spring Boot OAuth2:
https://spring.io/guides/tutorials/spring-boot-oauth2/
Все прошло гладко всего за пару минут.
У меня уже есть мое рабочее приложение с Spring Boot версии 2.1.7 и Vaadin Framework версии 14.0.7 в качестве внешнего интерфейса. Я пытался добавить регистрацию OAuth2 в это приложение, но социальная регистрация никогда не работает.
Я пробовал другие руководства, например:
Я добавил так много зависимостей, что это кажется даже бесполезным:
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security.oauth.boot</groupId>
<artifactId>spring-security-oauth2-autoconfigure</artifactId>
<version>2.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
</dependency>
Я даже пытался добавить:
@EnableOAuth2Client
@EnableOAuth2Sso
к моему WebSecurityConfigurerAdapter
, но, похоже, ничего не работает .
При запуске приложение пытается добавить фильтр безопасности OAuth2:
o.s.s.web.DefaultSecurityFilterChain : Creating filter chain: any request, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@25ea859, org.springframework.security.web.context.SecurityContextPersistenceFilter@746ca7d7, org.springframework.security.web.header.HeaderWriterFilter@380d2564, org.springframework.security.web.authentication.logout.LogoutFilter@65f6b2ee, org.springframework.security.oauth2.client.filter.OAuth2ClientAuthenticationProcessingFilter@d1908ea, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@8ec9dd0, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@591bbfac, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4dfa0158, org.springframework.security.web.session.SessionManagementFilter@7fe87726, org.springframework.security.web.access.ExceptionTranslationFilter@2a3ac8d2, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@50705e7c]
Я вижу этот класс в цепочке: org.springframework.security.oauth2.client.filter.OAuth2ClientAuthenticationProcessingFilter
Итак, среда Spring Boot заметила мои усилия и добавила фильтр в цепочку.
Когда приложение запустилось, я пытаюсь войти в систему, но ничего не получается. Я пытаюсь go по этим URL:
Но они дают мне HTTP Status 500 - Внутренняя ошибка сервера, с этим сообщением в журнале: com.vaadin.flow.router.NotFoundException: No route found for given navigation target!
Что означает Vaadin Framework взял на себя и пытается управлять этими адресами.
Пытаясь найти какое-то решение уже два дня, я действительно отчаялся. Не могли бы вы дать мне несколько советов, которые привели бы к моей цели входа в социальную сеть, работающего под Vaadin?