feat(phase3): API Key 관리 - 생성/발급/신청/승인/권한 #14

병합
HYOJIN feature/ISSUE-8-phase3-apikey 에서 develop 로 2 commits 를 머지했습니다 2026-04-08 10:14:09 +09:00
소유자

변경 사항

  • AES-256-GCM 암호화 (API Key 생성/복호화 조회)
  • API Key 직접 생성 (ADMIN) + 신청→승인/반려 워크플로우
  • 신청 필드: 사용기간(프리셋+직접선택), 서비스IP, 서비스용도, 하루 예상 요청량(int8)
  • 검토 화면: 새 필드 노출 + 사용 기간 관리자 조정
  • Permission CRUD (@Modifying JPQL bulk delete)
  • expires_at에 사용 기간 toDate 자동 설정
  • 프론트엔드: MyKeysPage, KeyRequestPage, KeyAdminPage 구현

관련 이슈

  • closes #8

테스트

  • mvn clean compile 성공
  • npm run build 성공
  • 로그인/신청/승인/키생성/권한편집 수동 테스트 완료

28 files changed, 2578 insertions

## 변경 사항 - AES-256-GCM 암호화 (API Key 생성/복호화 조회) - API Key 직접 생성 (ADMIN) + 신청→승인/반려 워크플로우 - 신청 필드: 사용기간(프리셋+직접선택), 서비스IP, 서비스용도, 하루 예상 요청량(int8) - 검토 화면: 새 필드 노출 + 사용 기간 관리자 조정 - Permission CRUD (@Modifying JPQL bulk delete) - expires_at에 사용 기간 toDate 자동 설정 - 프론트엔드: MyKeysPage, KeyRequestPage, KeyAdminPage 구현 ## 관련 이슈 - closes #8 ## 테스트 - [x] mvn clean compile 성공 - [x] npm run build 성공 - [x] 로그인/신청/승인/키생성/권한편집 수동 테스트 완료 28 files changed, 2578 insertions
HYOJIN added 2 commits 2026-04-08 10:14:08 +09:00
백엔드:
- AES-256-GCM 암호화 (ApiKey 생성/복호화 조회)
- API Key 직접 생성 (ADMIN) + 신청→승인/반려 워크플로우
- 신청 필드 추가 (사용기간, 서비스IP, 서비스용도, 예상요청량)
- Permission CRUD (bulk delete+recreate, @Modifying JPQL)
- API Key 폐기, expires_at 자동 설정
- ErrorCode 5개 추가

프론트엔드:
- MyKeysPage: 키 목록, 상태 배지, 폐기, raw key 모달
- KeyRequestPage: 기간 프리셋/직접선택 토글, 서비스IP, 용도, 예상요청량, API 체크박스
- KeyAdminPage: 신청 검토(필드 노출+기간 조정) + 키 관리(복호화 조회, 권한 편집)

Closes #8

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
claude-bot 이 변경사항을 승인하였습니다. 2026-04-08 10:14:08 +09:00
claude-bot left a comment
멤버

Phase 3 승인 (via /mr skill)

Phase 3 승인 (via /mr skill)
HYOJIN merged commit d0a3bc1a27 into develop 2026-04-08 10:14:09 +09:00
HYOJIN 삭제된 브랜치 feature/ISSUE-8-phase3-apikey 2026-04-08 10:14:09 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 2명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

마감일이 설정되지 않았습니다.

의존성

No dependencies set.

Reference: gc/snp-connection-monitoring#14
No description provided.