Repository navigation
fix: preserve Auth migration history and verification consistency - #38
Merged
Merged
Conversation
dev-ant
marked this pull request as ready for review
October 27, 2026 04:28
dev-ant
added a commit
that referenced
this pull request
Oct 27, 2026
* fix: ouath2 리다이렉팅 주소 반환하게 변경 (#18) * fix: 소셜로그인 관련 로직 수정 * fix: 서버 시간 KST로 설정 * fix: MinIO사용 삭제 로직으로 변경 * fix: application파일 수정 * feat: 운영서버 CI/CD 파이프라인 * fix: 불필요한 주석 삭제 * fix: ouath2 리다이렉팅 주소 반환하게 변경 * fix: 배포 관련 로직 수정 * fix: OAuth2SuccessHandler 수정 * feat: gitignore 업데이터 * infra: 배포 테스트용 prod cd 임시 수정 * fix: redirect-url base value 수정 * fix: redirect url base value 오타 수정 * fix: jwt cookie에 도메인 지정 * feat: JWT 로그아웃 엔드포인트 추가 (리프레시 토큰 무효화 및 쿠키 삭제) --------- Co-authored-by: 장욱 <janguk95@naver.com> * feat: JWT refresh API 구현 (#19) * feat: refresh token api 구현 * feat: auth 기존 테스트 코드 수정 * fix: optimize imports * fix: 사용자 관련 response수정 (#20) * fix: 사용자 관련 response에서 role과 id를 반환하도록 수정 * fix: 엔티티를 직접 반환하지 않도록 수정 * fix: toString() 대신에 name()을 사용하도록 변경 * fix: cookie util maxAge를 밀리초에서 초로 변경 (#21) * feat: 사용자 인증 Kafka 메시지 반영 기능 구현 (#22) * feat: 사용자 인증 정보 Kafka 메시지 수신 기능 구현 * feat: docker-compose-local Kafka env 추가 * feat: 인증 사용자 닉네임 변경 제한 및 인증 요약 조회 Public API 추가 (#23) * feat: 인증된 사용자 정보 수정 차단 * feat: 사용자 인증 정보를 API 응답값에 추가 * feat: 사용자 인증 시 사용자명, 서버명 변경 불가능하게 수정 * feat: 사용자 인증 관련 커스텀 예외 처리 추가 * chore: gitignore에 env 파일 추가 * feat: 사용자 인증 Swagger Annotation 추가 * fix: AuthService 사용자 닉네임 regexp 패턴 수정 Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * feat: 사용자 인증 카프카 메시지 prefix 제거 및 로그 추가 (#24) * fix: 사용자 인증 시 인증값에서 prefix 제거하게 변경 * chore: 사용자 인증 카프카 로그 추가 * Feat: 랜덤 닉네임 생성 기능 외 1개 (#26) * feat: 랜덤 닉네임 생성 API 구현 * feat: 계정 인증이 발생했을 때 닉네임을 계정 내 닉네임으로 바꾸는 기능 구현 * fix: copilot 수정사항 * feat: 유저 테이블 내 닉네임 유니크 제약 제거 및 (닉네임, 서버이름) 복합 유니크 제약 추가 * feat: 에러 발생 시에도 로그 테이블에 저장할 수 있도록 서비스 로직 분리 * feat: 기존 유저 미인증 처리 로직 구현 및 유저업데이트 이벤트 항목 추가 * Update src/main/resources/db/migration/V20260323112331__add_composite_unique_to_user.sql Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: 직업 이름 사이의 공백 제거 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: 소셜 회원가입 및 회원가입 시에도 카프카에 유저 정보를 전송하는 기능 추가 (#25) * Hotfix: Index로 수정한 부분을 Constraint로 원복 (#27) * feat: 랜덤 닉네임 생성 API 구현 * feat: 계정 인증이 발생했을 때 닉네임을 계정 내 닉네임으로 바꾸는 기능 구현 * fix: copilot 수정사항 * feat: 유저 테이블 내 닉네임 유니크 제약 제거 및 (닉네임, 서버이름) 복합 유니크 제약 추가 * feat: 에러 발생 시에도 로그 테이블에 저장할 수 있도록 서비스 로직 분리 * feat: 기존 유저 미인증 처리 로직 구현 및 유저업데이트 이벤트 항목 추가 * Update src/main/resources/db/migration/V20260323112331__add_composite_unique_to_user.sql Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: 직업 이름 사이의 공백 제거 * fix: INDEX를 CONSTRAINT로 변경 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore: enable manual production deployment * ci: add verified development workflow and isolate deployments (#30) * fix: restore local email login and auth cookie contract (#31) * fix: restore fresh local email login and cookie contract * docs: state observed token error contract precisely * docs: match protected API token error mapping * feat: require issued random nicknames before game verification (#33) * feat: require issued random nicknames * fix: guide old signup pages and verify nickname races * fix(auth): harden OAuth signup and gate production deploy (#35) * fix(auth)!: require verified OAuth proof for social signup Exchange a browser-bound one-time code and consume a server-verified signup proof. Remove identity data from OAuth redirects and reject unverified legacy requests. Approved spec: auth-main-promotion-hardening v1, SHA-256 c9039c662b210f5f338214f29c9a8af97a47c8aeb17cf0bfd254a539832c916f. BREAKING CHANGE: Social signup requires signupProof from OAuth exchange. Deploy the compatible React consumer before activating the new Auth version. * ci: pin manual auth deployment and verify preflight Use immutable image digests and pinned SSH actions, transfer secrets outside logged scripts, and stop before replacement when required configuration is unverified. Approved spec: auth-main-promotion-hardening v1, SHA-256 c9039c662b210f5f338214f29c9a8af97a47c8aeb17cf0bfd254a539832c916f. Production deployment remains manual. * fix: validate auth production JWT and cookie settings * fix: require Lax production auth cookies * ci: allow manual dev deployment through 2026-12-31 (#32) * fix(auth): protect refresh rotation and long token storage (#36) * fix(auth): protect verification logs and refresh rotation * fix(auth): persist long refresh tokens and serialize logins * test(auth): remove trailing whitespace in nickname case (#37) * fix: preserve Auth migration history and verification consistency (#38) * fix: preserve auth migration history and verification consistency * test: capture verification attempt logs in regression tests * fix: preserve Flyway history and lock timing * test: assert default role conflict signal * test: make token expiry lock ordering atomic --------- Co-authored-by: 장욱 <janguk95@naver.com> Co-authored-by: guite95 <rlvlrkdlxm@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scope
Approved Auth v6 hardening (SHA-256
66637e6b917a7a29a49e8dc351617e76d2a06ea31a3a177367aa6f34dcc68cf5). Restore original main Flyway V migration, add fresh-install B baseline, persist expected login failure history, and serialize game verification token/proof handling.Verification
gradlew.bat verify --no-daemon: passed.git diff --check: passed.Merge gate
Independent review and current-head CI pending. Deployed DB
flyway_schema_historymust be checked read-only before Auth #34 dev→main promotion; if unknown or altered dev checksum exists, stop. No production deployment.