Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 21 additions & 18 deletions backend/src/main/java/com/ai/lawyer/global/initData/InitData.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,30 +34,33 @@ public InitData(MemberRepository memberRepository,
@Transactional
public void run(String... args) throws Exception {
//관리자 로그인 아이디
String targetLoginId = "[email protected]";
log.info("InitData: checking password encoding for [{}]", targetLoginId);
List<String> targetLoginIds = List.of("[email protected]", "[email protected]");

Optional<Member> opt = memberRepository.findByLoginId(targetLoginId);
if (opt.isEmpty()) {
log.info("InitData: target account not found [{}]. 아무 작업도 수행하지 않습니다.", targetLoginId);
return;
}
for (String loginId : targetLoginIds) {
log.info("InitData: checking password encoding for [{}]", loginId);

Member member = opt.get();
String stored = member.getPassword();
Optional<Member> opt = memberRepository.findByLoginId(loginId);
if (opt.isEmpty()) {
log.info("InitData: target account not found [{}]. 아무 작업도 수행하지 않습니다.", loginId);
return;
}

if (isBcryptHash(stored)) {
log.info("InitData: {} 계정의 비밀번호는 이미 bcrypt 해시입니다. 변경 없음.", targetLoginId);
return;
}
Member member = opt.get();
String stored = member.getPassword();

// 여기서 stored는 평문으로 추정됨 -> 절대 로그에 찍지 않음
String encoded = passwordEncoder.encode(stored);
if (isBcryptHash(stored)) {
log.info("InitData: {} 계정의 비밀번호는 이미 bcrypt 해시입니다. 변경 없음.", loginId);
return;
}

member.updatePassword(encoded);
memberRepository.save(member);
// 여기서 stored는 평문으로 추정됨 -> 절대 로그에 찍지 않음
String encoded = passwordEncoder.encode(stored);

log.info("InitData: {} 계정의 비밀번호를 안전하게 암호화하여 저장했습니다.", targetLoginId);
member.updatePassword(encoded);
memberRepository.save(member);

log.info("InitData: {} 계정의 비밀번호를 안전하게 암호화하여 저장했습니다.", loginId);
}
}

private boolean isBcryptHash(String s) {
Expand Down
19 changes: 19 additions & 0 deletions infra/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -418,6 +418,25 @@ docker run -d \
-c 'ollama serve & sleep 5 && ollama pull daynice/kure-v1:567m && wait'

echo "${var.github_access_token_1}" | docker login ghcr.io -u ${var.github_access_token_1_owner} --password-stdin
# zookeeper
docker run -d \
--name kafka \
--network common \
-p 9092:9092 \
-e KAFKA_BROKER_ID=1 \
-e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \
-e KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092 \
-e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 \
confluentinc/cp-kafka:7.6.0

# kafka 설치
docker run -d \
--name zookeeper \
--network common \
-p 2181:2181 \
-e ALLOW_ANONYMOUS_LOGIN=yes \
bitnami/zookeeper:latest

END_OF_FILE
}
Expand Down
Loading