Files
2026-07-14 13:56:10 +09:00

4.6 KiB

설계서: 대시보드 작업 중심 정보 구조 (#575)

상태: Implemented · deployed · QA passed 작성: [AI] Architect · 최종수정: 2026-07-14 추적성 — Redmine: #575, #586 · 구현: dashboard.html, app.css, GuidedFlowTemplateTest · 관련 UX 감사: #577 · 최신 구현 커밋: a40102a

목적

대시보드 첫 화면에서 설명·카운트·객체 테이블이 같은 비중으로 노출되는 문서형 구성을 줄인다. 운영자가 즉시 할 수 있는 작업과 현재 상태를 먼저 제시하고, 원래의 상세 설명과 보호 객체 목록은 숨기지 않고 접어서 제공한다.

화면 구조

제목 + [권한 결과 확인] [권한 규칙 관리]
┌ 지금 할 일 (두 핵심 작업) ──────────┬ 현재 상태 ┐
└──────────────────────────────────────┴───────────┘
권장 순서: 1 권한 설계 · 2 DB 보호 연결 · 3 검증 세션 · 4 결과 확인
▸ 작동 방식과 등록 대상 보기
  └ Macro/Micro 설명 + 보호 객체/ORDS 경로 테이블

도움말 다이어그램

첫 화면을 설명 중심 화면으로 되돌리지 않기 위해, 설명은 상단의 접힌 도움말: 메뉴와 권한 적용 구조 보기 안에 둔다. 다이어그램은 별도 이미지 파일이 아닌 접근 가능한 인라인 SVG로 구현한다. 따라서 테마 색상과 글꼴을 공통 CSS 변수로 일관되게 적용하고, 확대해도 선명하며, 각 그림의 제목과 설명을 보조 기술에 제공한다.

그림 전달하는 내용 운영자가 얻는 답
설정·검증 순서 사용자·그룹 → 역할 → 접근 규칙 → 보호·연결 → 유효 권한·접근 검증 처음부터 어떤 메뉴를 어떤 순서로 써야 하는가
요청별 VPD 적용 흐름 Bearer Token → CB_ORDSCB_AGENT_CTX → VPD 조건 계산 → 보호 데이터 같은 실행 계정인데 왜 사용자마다 다른 결과가 나오는가
권한 데이터 모델(축약 ERD) 사용자/그룹의 역할이 권한·규칙을 거쳐 보호 대상으로 연결되는 구조 직접 역할과 그룹 상속이 어떻게 합쳐지는가
  • 설정 순서 그림은 권한이 토큰에 복사되지 않고 다음 요청의 VPD 조건 계산에 동적으로 반영된다는 점을 함께 표시한다.
  • diagram-canvas는 작은 화면에서 그림을 축소해 읽기 어렵게 만들지 않고 가로 스크롤을 제공한다.
  • 번호 배지, 주 경로, 보조 연결, 데이터·검증 노드를 구분해 처음 보는 운영자가 흐름의 우선순위를 빠르게 파악하게 한다.

인수조건

  • 첫 화면에 핵심 작업 두 개와 현재 상태가 함께 보인다.
  • 네 단계는 장문 카드가 아닌 짧은 진행 레일로 표시된다.
  • Macro/Micro 설명과 보호 객체 테이블은 접힌 상세 영역에서 보존된다.
  • 모바일에서 핵심 작업, 상태, 단계가 한 열로 읽힌다.
  • 템플릿 테스트와 전체 테스트가 통과한다.

QA 결과

  • mvn test: 59 tests, 0 failures.
  • 배포 후 인증된 HTTP 점검: dashboard 및 users/groups/roles/permissions/tokens/probe/ORDS 등 주요 18개 화면이 모두 200을 반환했다.
  • dashboard 응답에서 작업 중심 영역(dashboard-command-center), 4단계 레일(workflow-steps), 기본으로 접힌 상세 영역(dashboard-details)을 확인했다.
  • 개발 중 발견한 dashboard fragment 문법 오류는 수정하고 템플릿 테스트가 fragment 형식을 검사하도록 보완했다.
  • 2026-07-02: 도움말 SVG 추가 후 mvn test를 다시 통과했다.
  • 2026-07-02: 운영 백오피스를 새 JAR로 재기동했고 /login이 HTTP 200을 반환했다. 시작 로그에서 vpd-backoffice-pool 연결과 DB 카탈로그 캐시 예열을 확인했다.
  • 2026-07-02: SQLcl로 SELECT 'DB_CONNECTION_OK' FROM dualCB_AGENT_DOC_VPD_FILTER 상태(VALID)를 확인했다.
  • 2026-07-14: 제품 표면명을 데이터 접근 제어로 맞추고, 대시보드 상단에 토큰 식별, VPD 행 접근, ASO 컬럼 마스킹, 접근 검증의 전체 그림을 추가했다. 처음 설정 체크리스트는 사용자/역할, 행 접근 규칙, 보호 상태, 컬럼 마스킹, 검증 세션/접근 검증 순서로 정렬했다.
  • 2026-07-14: mvn -q test, mvn -q -DskipTests package를 통과했고, 161.33.6.45vpd-backoffice.service에 배포했다. 공개 로그인 페이지에서 데이터 접근 제어 콘솔 제목을 확인했다.