@@ -34,30 +34,33 @@ public InitData(MemberRepository memberRepository,
3434 @ Transactional
3535 public void run (String ... args ) throws Exception {
3636 //관리자 로그인 아이디
37- String targetLoginId =
"[email protected] " ;
38- log .info ("InitData: checking password encoding for [{}]" , targetLoginId );
37+ List <
String >
targetLoginIds =
List .
of (
"[email protected] " ,
"[email protected] " );
3938
40- Optional <Member > opt = memberRepository .findByLoginId (targetLoginId );
41- if (opt .isEmpty ()) {
42- log .info ("InitData: target account not found [{}]. 아무 작업도 수행하지 않습니다." , targetLoginId );
43- return ;
44- }
39+ for (String loginId : targetLoginIds ) {
40+ log .info ("InitData: checking password encoding for [{}]" , loginId );
4541
46- Member member = opt .get ();
47- String stored = member .getPassword ();
42+ Optional <Member > opt = memberRepository .findByLoginId (loginId );
43+ if (opt .isEmpty ()) {
44+ log .info ("InitData: target account not found [{}]. 아무 작업도 수행하지 않습니다." , loginId );
45+ return ;
46+ }
4847
49- if (isBcryptHash (stored )) {
50- log .info ("InitData: {} 계정의 비밀번호는 이미 bcrypt 해시입니다. 변경 없음." , targetLoginId );
51- return ;
52- }
48+ Member member = opt .get ();
49+ String stored = member .getPassword ();
5350
54- // 여기서 stored는 평문으로 추정됨 -> 절대 로그에 찍지 않음
55- String encoded = passwordEncoder .encode (stored );
51+ if (isBcryptHash (stored )) {
52+ log .info ("InitData: {} 계정의 비밀번호는 이미 bcrypt 해시입니다. 변경 없음." , loginId );
53+ return ;
54+ }
5655
57- member . updatePassword ( encoded );
58- memberRepository . save ( member );
56+ // 여기서 stored는 평문으로 추정됨 -> 절대 로그에 찍지 않음
57+ String encoded = passwordEncoder . encode ( stored );
5958
60- log .info ("InitData: {} 계정의 비밀번호를 안전하게 암호화하여 저장했습니다." , targetLoginId );
59+ member .updatePassword (encoded );
60+ memberRepository .save (member );
61+
62+ log .info ("InitData: {} 계정의 비밀번호를 안전하게 암호화하여 저장했습니다." , loginId );
63+ }
6164 }
6265
6366 private boolean isBcryptHash (String s ) {
0 commit comments