--- type: file-backend status: draft related_pages: ["[[architecture/project_map]]", "[[architecture/public_admin_map]]"] page_id: A09_Security source_file: "A09_Security/A09_Security_Router.py" last_updated: 2026-07-24 --- # A09_Security_Router.py 회사 마스터 조직 관리(팀원 승인/제거), 사용자 활동 감사 로그 기록(`activity_logs`) 및 시스템 관리자 전용 서버 자원 모니터링(`psutil`) API 라우터 모듈입니다. ## 🛠️ 라우터 API 및 주요 함수 목록 | 항목 | 위치(상대 경로) | 역할 | |---|---|---| | `get_master_dashboard()` | `A09_Security/A09_Security_Router.py` | `GET /api/security/master/dashboard` — 마스터 전용 회사 대시보드 통계 조회 | | `get_members()` | `A09_Security/A09_Security_Router.py` | `GET /api/security/master/members` — 소속 회사 팀원 목록 조회 | | `get_join_requests()` | `A09_Security/A09_Security_Router.py` | `GET /api/security/master/join-requests` — 대기 중인 회사 가입 요청 목록 조회 | | `review_join_request()` | `A09_Security/A09_Security_Router.py` | `POST /api/security/master/join-requests/{id}/decision` — 가입 신청 승인/거절 및 이메일 결과 통보 | | `deactivate_member()` | `A09_Security/A09_Security_Router.py` | `POST /api/security/master/members/{id}/remove` — 소속 팀원 권한 비활성화 | | `write_activity()` | `A09_Security/A09_Security_Router.py` | `POST /api/security/activity` — 사용자 액션 및 리소스 변경 감사 로그 `activity_logs` INSERT | | `get_admin_dashboard()` | `A09_Security/A09_Security_Router.py` | `GET /api/security/admin/dashboard` — 시스템 관리자 메트릭 및 `psutil` 기반 CPU/메모리/디스크 실시간 자원 조회 | | `get_admin_collection()` | `A09_Security/A09_Security_Router.py` | `GET /api/security/admin/{collection}` — 컬렉션별 시스템 관리자 대상 리스팅 | | `set_admin_status()` | `A09_Security/A09_Security_Router.py` | `PATCH /api/security/admin/{entity}/{id}/status` — 엔티티 상태 변경 패치 | ## 🔗 연관 개념 및 의존성 - `common_util_auth.py` — `require_master`, `require_system_admin` RBAC 권한 검증 - `common_util_auth_repository.py` — `master_dashboard`, `decide_join_request`, `admin_dashboard` DB 함수