Entradas

Mostrando las entradas con la etiqueta Spring Boot

Spring Boot + Spring Security + React + Keycloak

Imagen
Ahora mostraré como utilizar Spring Boot , Spring Security y Keycloak para tener recursos protegidos accediendo a ellos utilizando React 😉. Configurar Keycloak Configurar Spring Boot Configurar React   Keycloak Keycloak se puede obtener utilizando docker o desde su página como Standalone server distribution (previamente en este enlace había indicado como obtenerlo y lanzarlo).  Luego de lanzarlo estará disponible localmente y procedemos a realizar su configuración (en mi caso visitando http://localhost:8282/): Si es la primera vez configuramos el usuario administrador. Una vez ingresado entramos a la aplicación: Seleccionamos Add realm y definimos su nombre, en este ejemplo es: sso Luego vamos a Clients y presionamos Create para agregar dos clientes: cliente-uno para Spring Boot y cliente-dos para React, en ambos definimos su Root URL y Web Origins (NO olvidar presionar el boton save cuando realizamos modificaciones, web ...

Spring Boot con Redis para almacenar JSON y no la serialización predefinida

Imagen
En esta entrada mostraré como utilizar Spring Boot y Redis con el objetivo de almacenar los objetos como JSON y no como la forma de serialización de Java por defecto que tiene RedisTemplate. Los test están con Testcontainers, Junit 5 y AssertJ. Lo primero es la clase que nos convoca, la configuración de RedisTemplate: @Configuration public class RedisConfig { @Autowired private ConfigurableApplicationContext context; @Bean @Primary public RedisTemplate redisTemplate(JedisConnectionFactory conn) { RedisTemplate template = new RedisTemplate<>(); template.setConnectionFactory(conn); template.setDefaultSerializer(new GenericJackson2JsonRedisSerializer()); template.setKeySerializer(new StringRedisSerializer()); template.setHashKeySerializer(new StringRedisSerializer()); template.setValueSerializer(new GenericJackson2JsonRedisSerializer()); return template; } @Bean public JedisConnectionFactory redisConnectionFactory(@Value("$...