Para que la aplicación sea segura, solo debemos agregar Spring Security como dependencia. Si lo hacemos, el valor predeterminado será protegerlo con HTTP Basic, por lo que, dado que queremos hacer un inicio de sesión "social" (delegar en Facebook), también agregamos la dependencia de Spring Security OAuth2:
pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security.oauth</groupId>
<artifactId>spring-security-oauth2</artifactId>
</dependency>
SocialApplication.java
@SpringBootApplication
@EnableOAuth2Sso
public class SocialApplication {
...
}
(conversión application.properties a YAML para una mejor legibilidad):
application.yml
security:
oauth2:
client:
clientId: 233668646673605
clientSecret: 33b17e044ee6a4fa383f46ec6e28ea1d
accessTokenUri: https://graph.facebook.com/oauth/access_token
userAuthorizationUri: https://www.facebook.com/dialog/oauth
tokenName: oauth_token
authenticationScheme: query
clientAuthenticationScheme: form
resource:
userInfoUri: https://graph.facebook.com/me