SEAN
27f33f809b
feat: E2EE 암호화 유틸리티 구현 ( #28 )
...
- AesEncryption: AES-256-CBC 암호화/복호화
- RsaEncryption: RSA-2048 키 쌍 생성/암복호화
- E2EEService: 하이브리드 암복호화 (요청 복호화, 응답 암호화)
- TimestampValidator: 타임스탬프 검증 (±30초)
- SecureTransportAttribute: Action Filter (보안등급 3 엔드포인트용)
- DI 등록: IE2EEService → E2EEService (Singleton)
Closes #28
2026-02-09 16:33:38 +09:00
SEAN
cd8270c5c0
feat: DI 컨테이너 및 서비스 등록 구조화 ( #26 )
...
- Infrastructure/DependencyInjection.cs: AddInfrastructure() 확장 메서드
- Application/DependencyInjection.cs: AddApplication() 확장 메서드
- API/Extensions/ApplicationBuilderExtensions.cs: UseMiddlewarePipeline() 확장 메서드
- Program.cs 정리 (DI/파이프라인 분리)
Closes #26
2026-02-09 16:25:44 +09:00
SEAN
3125726e2c
fix: Development 환경에서 UseHttpsRedirection 비활성화 ( #24 )
SPMS_API/pipeline/head This commit looks good
2026-02-09 15:33:56 +09:00
SEAN
65b4207f94
revert: Health Check GET 메서드 제거, POST만 유지 ( #24 )
SPMS_API/pipeline/head This commit looks good
2026-02-09 15:28:04 +09:00
SEAN
9107726c3b
fix: Health Check 엔드포인트에 GET 메서드 추가 ( #24 )
SPMS_API/pipeline/head This commit looks good
2026-02-09 15:26:34 +09:00
SEAN
a9c944a27d
feat: Health Check 엔드포인트 구현 ( #24 )
...
- PublicController 생성 (POST /v1/out/health)
- MariaDB 연결 확인 (SELECT 1)
- Redis, RabbitMQ 연결 확인 (Phase 2에서 구현 예정, not_configured 상태)
- 정상: HTTP 200 + ApiResponse.Success / 이상: HTTP 503 + 상세 상태
2026-02-09 15:17:45 +09:00
SEAN
d6b15c3cd8
feat: Serilog 구조적 로깅 설정 ( #22 )
...
- appsettings.json/Development.json에 Serilog 섹션 추가 (Console/File Sink, Rolling Daily)
- RequestIdMiddleware 구현 (X-Request-ID 헤더 발급/반환)
- Program.cs에 Serilog 호스트 빌더 + UseSerilogRequestLogging 등록
- 환경별 로그 레벨 분리 (Development: Debug, Production: Warning)
2026-02-09 15:10:17 +09:00
SEAN
2d30aaf212
feat: JWT 인증 모듈 구현 ( #20 )
...
- IJwtService 인터페이스 (Application Layer)
- JwtSettings POCO (Options Pattern)
- JwtService 구현 (Access Token 생성/검증, Refresh Token 생성)
- AddJwtAuthentication/AddAuthorizationPolicies 확장 메서드
- Program.cs에 인증/인가 미들웨어 등록 (파이프라인 순서 10~11번)
- NuGet: System.IdentityModel.Tokens.Jwt, Microsoft.AspNetCore.Authentication.JwtBearer
2026-02-09 14:59:36 +09:00
SEAN
787190f512
feat: Generic Repository 및 UnitOfWork 패턴 구현 ( #18 )
...
- IRepository<T> 구현체: CRUD, 페이징, 조건 검색 지원
- IUnitOfWork 구현체: 트랜잭션 관리 (Begin/Commit/Rollback)
- Program.cs에 DI 등록 (AddScoped)
Closes #18
2026-02-09 14:44:31 +09:00
SEAN
a9f6a436c4
feat: SpmsException 및 글로벌 예외 처리 미들웨어 구현 ( #16 )
2026-02-09 14:33:37 +09:00
SEAN
cfce5ca8b8
feat: Domain Entity 정의 및 DB 스키마 구축 ( #8 )
...
- 12개 Domain Entity 클래스 정의 (DB_Schema.md 기반)
- 12개 EF Core Fluent API Configuration 구현
- AppDbContext에 DbSet 12개 등록 및 Configuration 자동 적용
- Soft Delete 글로벌 쿼리 필터 적용 (Service, Admin, Message)
- DesignTimeDbContextFactory 추가 (EF Core CLI 지원)
- InitialCreate 마이그레이션 생성 및 spms_dev DB 적용 완료
- .gitignore에 Documents/, CLAUDE.md, TASKS.md, .mcp.json 추가
Closes #8
2026-02-09 11:46:33 +09:00
SEAN
ad97150b30
refactor: 개발 문서 적용 ( Close #5 )
2026-01-21 17:12:50 +09:00
SEAN
f02a3884a2
refactor: 클린 아키텍쳐 적용 및 프로젝트 분리 ( Resolves #5 )
...
1. 프로젝트 이름 변경
2. 계층 추가
3. 설정 파일 수정
2026-01-19 16:37:50 +09:00