Skip to content

Commit e537afe

Browse files
Fixed redis to use password - build authentication-service, build admin-service
1 parent 7362828 commit e537afe

File tree

4 files changed

+75
-3
lines changed

4 files changed

+75
-3
lines changed

admin-server/src/main/java/com/springboot/adminserver/AdminServerApplication.java

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
package com.springboot.adminserver;
22

33
import de.codecentric.boot.admin.server.config.EnableAdminServer;
4+
import lombok.extern.slf4j.Slf4j;
45

56
import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
67
import org.springframework.beans.factory.support.DefaultListableBeanFactory;
78
import org.springframework.boot.SpringApplication;
89
import org.springframework.boot.autoconfigure.SpringBootApplication;
10+
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
911
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
12+
import org.springframework.boot.data.redis.autoconfigure.DataRedisProperties;
1013
import org.springframework.context.annotation.Bean;
1114
import org.springframework.context.annotation.Configuration;
1215
import org.springframework.context.annotation.Primary;
1316
import org.springframework.core.annotation.Order;
17+
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
1418
import org.springframework.data.redis.core.RedisTemplate;
1519
import org.springframework.session.data.redis.RedisIndexedSessionRepository;
1620
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
@@ -24,10 +28,37 @@
2428
@SpringBootApplication
2529
@EnableAdminServer
2630
public class AdminServerApplication {
31+
@Slf4j
2732
@ConditionalOnProperty(value = "com.microservice.authentication.redis.enabled", havingValue = "true")
2833
@Configuration
2934
@EnableRedisHttpSession
30-
class RedisConfiguration {}
35+
class RedisConfiguration {
36+
@ConditionalOnMissingBean
37+
@Bean
38+
public LettuceConnectionFactory redisConnectionFactory(DataRedisProperties dataRedisProperties) {
39+
log.info("Creating LettuceConnectionFactory with host: {}, port: {}, password set: {}",
40+
dataRedisProperties.getHost(),
41+
dataRedisProperties.getPort(),
42+
dataRedisProperties.getPassword() != null && !dataRedisProperties.getPassword().isEmpty());
43+
44+
org.springframework.data.redis.connection.RedisStandaloneConfiguration config =
45+
new org.springframework.data.redis.connection.RedisStandaloneConfiguration();
46+
config.setHostName(dataRedisProperties.getHost());
47+
config.setPort(dataRedisProperties.getPort());
48+
49+
// Set password if provided
50+
if (dataRedisProperties.getPassword() != null && !dataRedisProperties.getPassword().isEmpty()) {
51+
config.setPassword(dataRedisProperties.getPassword());
52+
}
53+
54+
// Set username if provided (for Redis 6+ ACL)
55+
if (dataRedisProperties.getUsername() != null && !dataRedisProperties.getUsername().isEmpty()) {
56+
config.setUsername(dataRedisProperties.getUsername());
57+
}
58+
59+
return new LettuceConnectionFactory(config);
60+
}
61+
}
3162

3263
public static void main(String[] args) {
3364
SpringApplication.run(AdminServerApplication.class, args);

authentication-service/src/main/java/com/microservice/authentication/config/RedisConfiguration.java

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,27 @@ public RedisConfiguration() {
2727
@ConditionalOnMissingBean
2828
@Bean
2929
public LettuceConnectionFactory redisConnectionFactory(DataRedisProperties dataRedisProperties) {
30-
return new LettuceConnectionFactory(dataRedisProperties.getHost(), dataRedisProperties.getPort());
30+
log.info("Creating LettuceConnectionFactory with host: {}, port: {}, password set: {}",
31+
dataRedisProperties.getHost(),
32+
dataRedisProperties.getPort(),
33+
dataRedisProperties.getPassword() != null && !dataRedisProperties.getPassword().isEmpty());
34+
35+
org.springframework.data.redis.connection.RedisStandaloneConfiguration config =
36+
new org.springframework.data.redis.connection.RedisStandaloneConfiguration();
37+
config.setHostName(dataRedisProperties.getHost());
38+
config.setPort(dataRedisProperties.getPort());
39+
40+
// Set password if provided
41+
if (dataRedisProperties.getPassword() != null && !dataRedisProperties.getPassword().isEmpty()) {
42+
config.setPassword(dataRedisProperties.getPassword());
43+
}
44+
45+
// Set username if provided (for Redis 6+ ACL)
46+
if (dataRedisProperties.getUsername() != null && !dataRedisProperties.getUsername().isEmpty()) {
47+
config.setUsername(dataRedisProperties.getUsername());
48+
}
49+
50+
return new LettuceConnectionFactory(config);
3151
}
3252

3353
@Primary

edge-server/src/main/java/com/springboot/edgeserver/config/RedisConfiguration.java

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,26 @@ public RedisConfiguration() {
2222
@ConditionalOnMissingBean
2323
@Bean
2424
public LettuceConnectionFactory redisConnectionFactory(DataRedisProperties dataRedisProperties) {
25-
return new LettuceConnectionFactory(dataRedisProperties.getHost(), dataRedisProperties.getPort());
25+
log.info("Creating LettuceConnectionFactory with host: {}, port: {}, password set: {}",
26+
dataRedisProperties.getHost(),
27+
dataRedisProperties.getPort(),
28+
dataRedisProperties.getPassword() != null && !dataRedisProperties.getPassword().isEmpty());
29+
30+
org.springframework.data.redis.connection.RedisStandaloneConfiguration config =
31+
new org.springframework.data.redis.connection.RedisStandaloneConfiguration();
32+
config.setHostName(dataRedisProperties.getHost());
33+
config.setPort(dataRedisProperties.getPort());
34+
35+
// Set password if provided
36+
if (dataRedisProperties.getPassword() != null && !dataRedisProperties.getPassword().isEmpty()) {
37+
config.setPassword(dataRedisProperties.getPassword());
38+
}
39+
40+
// Set username if provided (for Redis 6+ ACL)
41+
if (dataRedisProperties.getUsername() != null && !dataRedisProperties.getUsername().isEmpty()) {
42+
config.setUsername(dataRedisProperties.getUsername());
43+
}
44+
45+
return new LettuceConnectionFactory(config);
2646
}
2747
}

react-webapp/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,4 @@ yarn-debug.log*
2323
yarn-error.log*
2424

2525
/.history
26+
/docker/nextcloud*

0 commit comments

Comments
 (0)