| 1234567891011121314151617181920212223242526272829303132333435363738 |
- # 서브계정 및 권한 관리 기능 개발
- **Task ID:** T-002
- **Status:** BACKLOG
- **Importance:** MUST
- **Complexity:** 6/10
- **Urgency:** 7/10
- **Dependencies:** T-001
- ## Description
- # 설명
- 벤더사 마스터 계정 아래 팀원용 서브계정을 생성·초대·삭제하고 업무별 읽기/쓰기/관리자 권한을 설정해 UI와 API 접근을 제어합니다.
- ## 구현 상세
- 1. DB 설계 및 Migration(CI4)
- - `sub_accounts`, `sub_account_invites`, `sub_account_roles` 테이블 추가
- - 외래키, 인덱스 구성 및 Redis 캐시 전략 설계
- 2. Backend API(CI4)
- - SubAccountController에 CRUD, 초대 발송, 초대 수락/거절 메서드 구현
- - RoleController로 역할 생성/조회/수정/삭제 기능 구현
- - 미들웨어에서 권한 체크 로직 추가 (JWT 기반, role_permissions 활용)
- 3. BFF (Node.js)
- - 프론트엔드 전용 엔드포인트 정의 및 Node-level 권한 유효성 검사 추가
- 4. Frontend(Nuxt3 + Vuetify)
- - 서브계정 관리 UI 페이지 및 모달 컴포넌트 개발(excelUpload, confirmDialog 활용)
- - 초대 이메일 발송 로직, 역할별 UI 컴포넌트 활성화/비활성화 구현
- - Pinia store로 서브계정 상태 관리, middleware/auth.global.js에 권한 분기 추가
- 5. 알림 연동(WebSocket)
- - Socket.IO로 초대·역할 변경 알림 실시간 수신 처리
- ## 테스트 전략
- - Backend 단위 테스트: API 엔드포인트 입출력, 권한 미들링 성공/실패 케이스 검증
- - Frontend 유닛 테스트: 컴포넌트 렌더링, 버튼 활성화/비활성화 로직 커버리지 80% 이상
- - E2E(Cypress): 서브계정 초대 이메일 링크 클릭, 계정 생성 후 UI 기능 접근 제어 검증
- ---
- **Created:** 2025-07-17T02:02:42.157Z
- **Updated:** 2025-07-17T02:02:42.157Z
|