satellite_tasking_screen_spec.md (v0.3)본 문서는 사용자 유형별로 필요한 메뉴 구조(IA)와 접근 정책을 정의한다.
외부 포털(Portal): 외부요청자 중심 업무내부 운영콘솔(Ops Console): 내부운영자/승인자/관리자 중심 업무| 메뉴/화면 | 외부요청자 | 내부운영자 | 승인자 | 시스템관리자 |
|---|---|---|---|---|
| SCR-001 대시보드 | R(요약형) | R | R | R |
| SCR-002 촬영요청 생성 | C/U | C/U | - | C/U |
| SCR-003 타당성·성공확률 | R | R | R | R |
| SCR-004 견적·승인 | R(요청/조회) | R | A | R/A |
| SCR-005 주문/작전 모니터링 | R | R/U | R | R |
| SCR-006 요청상세·검수 | R(조회) | C/U | R | R |
| SCR-007 템플릿·재사용 | C/U | C/U | R | R |
| SCR-008 관리자 설정 | - | - | - | C/U/D |
| SCR-009 작전지시(Uplink) | - | C/U | R | R |
| SCR-010 수신·처리·QA | - | R/U | R | R |
R 조회, C 생성, U 수정, D 삭제, A 승인작전지시(SCR-009)와 수신·QA(SCR-010)를 동일 깊이 메뉴로 배치/portal/dashboard/portal/requests/new (SCR-002)/portal/feasibility/:requestId (SCR-003)/portal/quotes/:requestId (SCR-004)/portal/orders (SCR-005)/portal/orders/:requestId/captures (SCR-006)/portal/templates (SCR-007)/ops/dashboard (SCR-001)/ops/requests (SCR-002/003/004/005/006)/ops/tasking/uplink (SCR-009)/ops/tasking/reception (SCR-010)/ops/templates (SCR-007)/ops/admin (SCR-008)[1D] 대시보드
[2D] 내 현황
[2D] 알림센터
[1D] 촬영요청
[2D] 요청 생성 (SCR-002)
[2D] 타당성 검토 (SCR-003)
[2D] 견적/승인 요청 (SCR-004)
[1D] 진행조회
[2D] 주문/작전 현황 (SCR-005)
[2D] 요청 상세/결과 (SCR-006)
[1D] 템플릿
[2D] 내 템플릿 (SCR-007)
[2D] 템플릿으로 생성 (SCR-007)
[1D] 운영대시보드
[2D] 통합 대시보드 (SCR-001)
[2D] 예외/지연 알림
[1D] 요청운영
[2D] 요청 접수/수정 (SCR-002)
[2D] 타당성 분석 (SCR-003)
[2D] 견적/승인 연계 (SCR-004)
[2D] 주문/작전 모니터링 (SCR-005)
[2D] 요청 상세/검수 (SCR-006)
[1D] 위성작전
[2D] 작전지시(Uplink) (SCR-009)
[2D] 수신·처리·QA (SCR-010)
[2D] 재처리/재촬영 큐 (SCR-006, SCR-010)
[1D] 운영설정
[2D] 템플릿 관리 (SCR-007)
[1D] 승인대기함
[2D] 예산초과 대기건 (SCR-004)
[2D] 긴급건 승인요청 (SCR-004)
[1D] 운영현황
[2D] 승인 후 진행현황 (SCR-005)
[2D] 실패/지연 리포트 (SCR-001, SCR-005)
[1D] 관리자설정
[2D] 사용자/권한(RBAC) (SCR-008)
[2D] 계약/쿼터/크레딧 (SCR-008)
[2D] 전달/알림 정책 (SCR-008)
[2D] 감사로그 조회 (SCR-008)
위성작전, 관리자설정 1depth 자체 비노출관리자설정 비노출, 운영설정만 노출요청운영 직접수정 메뉴 비노출, 승인 중심 메뉴만 노출/portal/*, /ops/* 접근 차단(로그인 리다이렉트)/ops/* 접근 차단(403), 내부역할은 /portal/* 접근 가능 여부 정책 선택생성/수정/승인/삭제는 API 권한에서 최종 차단| 영역 | Route | 화면 | 프론트 허용 역할 | API 권한(최소) | 실패 응답 |
|---|---|---|---|---|---|
| Portal | /portal/dashboard |
SCR-001(요약) | Requester, Operator, Approver, Admin | tasking.read |
401/403 |
| Portal | /portal/requests/new |
SCR-002 | Requester, Operator, Admin | tasking.request.create |
401/403 |
| Portal | /portal/feasibility/:requestId |
SCR-003(요청 후 타당성 조회) | Requester, Operator, Approver, Admin | tasking.feasibility.read |
401/403 |
| Portal | /portal/quotes/:requestId |
SCR-004 | Requester, Operator, Approver, Admin | tasking.quote.read, 승인 시 tasking.quote.approve |
401/403 |
| Portal | /portal/orders |
SCR-005 | Requester, Operator, Approver, Admin | tasking.order.read |
401/403 |
| Portal | /portal/orders/:requestId/captures |
SCR-006 | Requester, Operator, Approver, Admin | tasking.capture.read, 검수수정 시 tasking.capture.review |
401/403 |
| Portal | /portal/templates |
SCR-007 | Requester, Operator, Approver, Admin | tasking.template.read, 생성/수정 시 tasking.template.write |
401/403 |
| Ops | /ops/dashboard |
SCR-001 | Operator, Approver, Admin | ops.dashboard.read |
401/403 |
| Ops | /ops/requests |
SCR-002~006 | Operator, Approver, Admin | ops.request.read, 수정 시 ops.request.write |
401/403 |
| Ops | /ops/tasking/uplink |
SCR-009(다중위성 재할당 포함) | Operator, Approver, Admin | 조회 ops.uplink.read, 지시 ops.uplink.execute |
401/403 |
| Ops | /ops/tasking/reception |
SCR-010 | Operator, Approver, Admin | ops.reception.read, 조치 시 ops.reception.write |
401/403 |
| Ops | /ops/templates |
SCR-007 | Operator, Approver, Admin | tasking.template.read, 수정 시 tasking.template.write |
401/403 |
| Ops | /ops/admin |
SCR-008 | Admin | ops.admin.manage |
401/403 |
*.read*.write*.approve*.execute*.manage예시:
tasking.read, tasking.request.create, tasking.feasibility.read, tasking.quote.read, tasking.order.read, tasking.capture.read, tasking.template.read, tasking.template.writeops.dashboard.read, ops.request.read, ops.request.write, tasking.capture.review, ops.uplink.read, ops.uplink.execute, ops.reception.read, ops.reception.writetasking.read, tasking.quote.read, tasking.order.read, tasking.quote.approve, ops.dashboard.read, ops.request.read, ops.uplink.read, ops.reception.read, tasking.template.read* 또는 도메인별 *.manage/portal/requests/new?as=requester&case=FORM-OK-001&pref=SAT-EO-07,SAT-MULTI-11/ops/tasking/uplink?as=operator&request=REQ-20260225-001&satellite=SAT-MULTI-11&at=2026-02-26T01:24:00Z참고:
SCR-003는 요청 생성 후 requestId 기준 백엔드 산출결과를 조회하는 화면이며, 요청 전 프리체크 전용 화면은 별도 범위다.authGuard -> areaGuard -> roleGuard 순서 적용ERR_AUTH_FORBIDDEN_ROLE, ERR_AUTH_FORBIDDEN_SCOPE참조 샘플:
satellite_tasking_authz_matrix.sample.json (백엔드 인가 정책 초기 템플릿)viper/data/authz-matrix.json (viper 프런트엔드 구현 기준 파일)