@@ -67,6 +67,7 @@ export const COMPANIES: Company[] = [
6767 highlights : [
6868 "결제·인증·수업·온보딩을 잇는 **핵심 사용자 흐름 재설계**" ,
6969 "레거시 PHP 결제·인증 기능을 Java/Spring으로 이관하고 **PHP 운영 의존성 제거**" ,
70+ "JWT 서명 구조를 RS256/JWKS/KMS 기반으로 전환해 **서명 권한과 검증 권한 분리**" ,
7071 "AI 진단 파이프라인으로 **CS 인입 98% 감소**, 멀티채널 알림서버로 **중복 발송률 0% 달성**" ,
7172 "쿠폰·구독·레슨권 도메인을 메타/세그먼트 기반으로 정비해 **운영 자동화와 상품 확장성 확보**" ,
7273 "Facade 계층·공통 응답/에러 규칙을 정립해 **도메인 변경 범위와 협업 비용 축소**" ,
@@ -78,7 +79,7 @@ export const COMPANIES: Company[] = [
7879 { slug : "notification-server" , name : "멀티채널 알림서버 신규 구축" , period : "2025.06 — 2025.10" , summary : "4채널 통합 독립 알림서버 0→1 구축, 중복 발송률 0%" } ,
7980 { slug : "personalization-system" , name : "사용자 데이터 기반 개인화 시스템 구축" , period : "2025.01 — 2026.01" , summary : "세그멘테이션 기반 차등 쿠폰·해지방어 시스템" } ,
8081 { slug : "onboarding-trial-flow" , name : "온보딩 및 체험레슨 예약 플로우 고도화" , period : "2026.04 — 2026.05" , summary : "첫 수업 예약·예습·입장 상태 정합성 개선" } ,
81- { slug : "auth-refactoring" , name : "인증 시스템 리팩토링 및 레거시 전환" , period : "2024.09 — 2025.05 " , summary : "PHP 세션→ JWT 기반 인증 전면 재설계 " } ,
82+ { slug : "auth-refactoring" , name : "인증 시스템 리팩토링 및 레거시 전환" , period : "2024.09 — 2026.04 " , summary : "JWT 인증 전환, RS256/JWKS/KMS 서명 구조 개선 " } ,
8283 { slug : "dev-process" , name : "개발 프로세스 개선" , period : "2024.09 — 2026.02" , summary : "Facade 패턴 도입, 응답/에러 공통화, 메타 기반 도메인 재설계" } ,
8384 { slug : "infra-modernization" , name : "서비스 인프라 현대화 및 보안 체계 구축" , period : "2025.10 — 2026.01" , summary : "ECS→EKS 마이그레이션, WAF·GitOps 구축" } ,
8485 ] ,
@@ -263,12 +264,21 @@ export const PROJECTS: ProjectDetail[] = [
263264 slug : "auth-refactoring" ,
264265 company : "주식회사 데이원컴퍼니" ,
265266 name : "인증 시스템 리팩토링 및 레거시 전환" ,
266- period : "2024.09 — 2025.05" ,
267- tech : [ "Java" , "Spring Boot" , "Spring OAuth2" , "JWT" , "Redis" ] ,
267+ period : "2024.09 — 2026.04" ,
268+ tech : [ "Java" , "Spring Boot" , "Spring OAuth2" , "JWT" , "JWKS" , "GCP KMS" , "Redis" ] ,
269+ relatedPosts : [ "auth-authorize-callback-flow" , "auth-token-verification-migration" , "jwt-hs256-to-rs256-jwks-kms" ] ,
268270 tasks : [
269271 {
270272 content : "PHP 세션과 프론트엔드 토큰 발급 구조를 **JWT 기반 서버사이드 인증**으로 재설계하고 Refresh Token Rotation 적용" ,
271273 } ,
274+ {
275+ content : "JWT 서명 방식을 HS256에서 RS256/JWKS 기반 구조로 전환하고, GCP KMS 서명과 `kid` 기반 key rotation 흐름 설계" ,
276+ details : [
277+ "검증 서비스에는 공개키만 배포하고, 서명 권한은 인증 서버와 KMS 권한으로 제한" ,
278+ "기존 HS256 토큰을 일정 기간 허용하는 legacy decoder를 두어 무중단 전환 경로 마련" ,
279+ "JWKS cache TTL과 access token 만료 시간을 고려해 key rotation 순서 정리" ,
280+ ] ,
281+ } ,
272282 {
273283 content : "인증·사용자 관리·API 라우팅 등 PHP 레거시 기능을 Java로 이관해 PHP/Java 이중 운영 해소" ,
274284 } ,
@@ -284,6 +294,10 @@ export const PROJECTS: ProjectDetail[] = [
284294 ] ,
285295 } ,
286296 ] ,
297+ achievements : [
298+ "프론트엔드·PHP에 흩어진 인증 책임을 Java/Spring 기반 인증 서버로 정리" ,
299+ "JWT 서명·검증 책임을 분리해 여러 서비스가 공개키 기반으로 토큰을 검증할 수 있는 구조 마련" ,
300+ ] ,
287301 } ,
288302 {
289303 slug : "dev-process" ,
0 commit comments