Browse Source

feat : config

pull/7/head
qkr7828 7 months ago
parent
commit
f971072102
  1. 23
      app/kac-app/src/main/java/kr/co/palnet/kac/app/config/RedisCacheConfig.java
  2. 3
      web/security/src/main/java/kr/co/palnet/kac/config/security/SecurityConfig.java

23
app/kac-app/src/main/java/kr/co/palnet/kac/app/config/RedisCacheConfig.java

@ -1,7 +1,8 @@
package kr.co.palnet.kac.app.config; package kr.co.palnet.kac.app.config;
import java.time.Duration; import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.cache.CacheManager; import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching; import org.springframework.cache.annotation.EnableCaching;
@ -16,9 +17,7 @@ import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSeriali
import org.springframework.data.redis.serializer.RedisSerializationContext; import org.springframework.data.redis.serializer.RedisSerializationContext;
import org.springframework.data.redis.serializer.StringRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer;
import com.fasterxml.jackson.annotation.JsonTypeInfo; import java.time.Duration;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
@Configuration @Configuration
@EnableCaching @EnableCaching
@ -26,13 +25,13 @@ public class RedisCacheConfig {
@Value("${spring.data.redis.host}") @Value("${spring.data.redis.host}")
private String redisHost; private String redisHost;
@Value("${spring.data.redis.port}") @Value("${spring.data.redis.port}")
private int redisPort; private int redisPort;
@Value("${spring.data.redis.password}") @Value("${spring.data.redis.password}")
private String redisPwd; private String redisPwd;
@Bean @Bean
public RedisConnectionFactory redisConnectionFactory() { public RedisConnectionFactory redisConnectionFactory() {
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration(); RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
@ -42,7 +41,7 @@ public class RedisCacheConfig {
LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory(redisStandaloneConfiguration); LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory(redisStandaloneConfiguration);
return lettuceConnectionFactory; return lettuceConnectionFactory;
} }
// @Bean // @Bean
// public RedisCacheManager redisCacheManager(RedisConnectionFactory connectionFactory) { // public RedisCacheManager redisCacheManager(RedisConnectionFactory connectionFactory) {
// // local date time 역직렬화 위해 추가 코드 // // local date time 역직렬화 위해 추가 코드
@ -81,7 +80,7 @@ public class RedisCacheConfig {
// .cacheDefaults(configuration) // .cacheDefaults(configuration)
// .withInitialCacheConfigurations(cacheConfigurations).build(); // .withInitialCacheConfigurations(cacheConfigurations).build();
// } // }
@Bean @Bean
public CacheManager redisCacheManager(RedisConnectionFactory cf) { public CacheManager redisCacheManager(RedisConnectionFactory cf) {
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
@ -89,7 +88,7 @@ public class RedisCacheConfig {
objectMapper.activateDefaultTyping(objectMapper.getPolymorphicTypeValidator(), objectMapper.activateDefaultTyping(objectMapper.getPolymorphicTypeValidator(),
ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY); ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY);
GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer(objectMapper); GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer(objectMapper);
RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig() RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
.serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer())) .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer()))
.serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(genericJackson2JsonRedisSerializer)) .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(genericJackson2JsonRedisSerializer))
@ -97,5 +96,5 @@ public class RedisCacheConfig {
return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(cf).cacheDefaults(redisCacheConfiguration).build(); return RedisCacheManager.RedisCacheManagerBuilder.fromConnectionFactory(cf).cacheDefaults(redisCacheConfiguration).build();
} }
} }

3
web/security/src/main/java/kr/co/palnet/kac/config/security/SecurityConfig.java

@ -108,11 +108,12 @@ public abstract class SecurityConfig {
} }
http http
.csrf(AbstractHttpConfigurer::disable)
.sessionManagement(AbstractHttpConfigurer::disable)
.securityMatchers(matchers -> matchers.requestMatchers(ignoreURI)) .securityMatchers(matchers -> matchers.requestMatchers(ignoreURI))
.authorizeHttpRequests(authz -> authz.anyRequest().permitAll()) .authorizeHttpRequests(authz -> authz.anyRequest().permitAll())
.requestCache(RequestCacheConfigurer::disable) .requestCache(RequestCacheConfigurer::disable)
.securityContext(AbstractHttpConfigurer::disable) .securityContext(AbstractHttpConfigurer::disable)
.sessionManagement(AbstractHttpConfigurer::disable)
; ;
return http.build(); return http.build();
} }

Loading…
Cancel
Save