Securizando aplicación de SpringBoot con KeyCloack
Borrador. Pendiente de refactorizar y documentar en español.
Programa demostrando como crear una aplicación en Spring Boot cuya seguridad es gestionada por KeyCloak.
El programa esta basado en este articulo https://medium.com/@ddezoysa/securing-spring-boot-rest-apis-with-keycloak-1d760b2004e
El código fuente del programa esta en https://github.com/chuchip/keycloack-springboot
En la clase KeycloakSecurityConfig
se ha incluido la función accessToken . Con este bean podremos comprobar dentro de nuestro código como los recursos del token JWT mandado a la aplicación.
@Bean
@Scope(scopeName = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)
public AccessToken accessToken() {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
return ((KeycloakSecurityContext) ((KeycloakAuthenticationToken) request.getUserPrincipal()).getCredentials()).getToken();
}