Spring Security + React + OAuth + Facebook

0

Hej!

Robię aplikację (Frontend na React, Backend na Springu, komunikacja po REST API). Na React'cie skorzystałem z komponentu https://www.npmjs.com/package/react-facebook-login, który podłączyłem używając appId i za pomocą którego wywołuje mi się okienko z logowaniem do Facebooka, ja się loguję i w odpowiedzi dostaję token. Teraz chciałbym zabezpieczyć mój backend w Springu tak, żeby z frontendu przy każdym strzale na endpoint dodawać coś w stylu headera Authorization: Bearer {token} i żeby Spring sobie sprawdzał na Facebooku, czy ten user jest zalogowany poprawnie i jeśli tak, to żeby dostawał odpowiedź.

W Springu ustawiłem takie propertiesy

spring.security.oauth2.client.registration.facebook.client-id=xxx
spring.security.oauth2.client.registration.facebook.client-secret=zzzz

i dodałem taki config do security

@Configuration
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {

  @Override
  protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests().anyRequest().authenticated().and().oauth2Client();
  }
}

ale po dodawaniu headera dostaję 403.
Tu są dependency, jakich użyłem do security

       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-oauth2-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-oauth2-jose</artifactId>
        </dependency>

Da się to zrobić tak jakbym chciał?

0

Dostajesz 403 a nie 401 czyli jesteś zalogowany, ale nie masz uprawnień, tak? Sprawdź czy gdzieś w swoich endpointach nie wymagasz konkretnej roli.

By the way, używasz spring boota w wersji 2, tak? Z tego co pamiętam, to jakoś teraz trochę te Springowe dependencje do OAuth2 zamotali i trzeba uważnie patrzeć czy jakaś zależność jest do Spring Boota 1.5, 2.0 czy w ogóle jeszcze nie wydana

1 użytkowników online, w tym zalogowanych: 0, gości: 1