ui: reshape DDS navigation as management console

This commit is contained in:
devmrko
2026-07-01 08:04:39 +09:00
parent 12b7e00cef
commit 45621e1b7d
7 changed files with 69 additions and 53 deletions

View File

@@ -7,9 +7,9 @@
<header class="page-title guided-hero">
<span class="architecture-kicker">DEEP DATA SECURITY</span>
<h1>DDS 권한 운영</h1>
<p class="context-summary">권한 설계 · 보호 상태 · 권한 게시 · 권한</p>
<p class="context-summary">권한 관리 · 보호 정책 관리 · 지식자료 관리 · 접근</p>
<details class="explanation-details">
<summary>이 공간의 역할 보기</summary>
<summary>도움말</summary>
<p>사용자·그룹·역할·접근 규칙을 기준으로 지식자료의 접근 범위를 운영합니다. DDS는 보호 객체별 DATA GRANT로 이 기준을 집행합니다.</p>
<p class="mb-0">일상적인 권한 변경은 권한 관리에서 하고, 이 공간에서는 보호 상태와 실제 접근 결과를 확인합니다.</p>
</details>
@@ -18,16 +18,16 @@
<div class="alert alert-warning" th:if="${runtimeError}">DDS 관리 데이터를 불러오지 못했습니다. <span th:text="${runtimeError}"></span></div>
<section class="journey-grid" aria-label="DDS 권한 적용 네 단계">
<a class="journey-card journey-card-compact" href="/permissions"><span class="journey-number">1</span><div><h2>권한 설계</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/dds-protection"><span class="journey-number">2</span><div><h2>보호 상태</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/dds-provision"><span class="journey-number">3</span><div><h2>권한 게시</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/vector-knowledge"><span class="journey-number">4</span><div><h2>권한 검색</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/dds"><span class="journey-number">5</span><div><h2>보호 범위</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/permissions"><div><h2>권한 관리</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/dds-protection"><div><h2>보호 정책 관리</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/dds-provision"><div><h2>정책 적용</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/vector-knowledge"><div><h2>지식자료 관리</h2><strong>열기 →</strong></div></a>
<a class="journey-card journey-card-compact" href="/dds"><div><h2>보호 대상 관리</h2><strong>열기 →</strong></div></a>
</section>
<section class="content-band compact-context">
<details class="explanation-details m-0">
<summary>권한 적용 흐름 설명 보기</summary>
<summary>도움말</summary>
<div class="macro-micro-grid mt-3">
<div><span class="architecture-kicker">MACRO · 전체 관점</span><h2>관리 기준은 하나입니다.</h2><p>누가 어떤 지식자료를 볼 수 있는지는 사용자·그룹·역할·권한 규칙에서 설명합니다. VPD와 DDS는 같은 기준을 서로 다른 DB 보호 방식으로 집행합니다.</p></div>
<div><span class="architecture-kicker">MICRO · 실행 관점</span><h2>객체별 DATA GRANT가 최종 집행합니다.</h2><p>토큰 경로는 <code>Bearer → CB_AGENT_CTX → DATA GRANT predicate → 보호 VIEW</code>, 직접 비교는 <code>END USER → DATA ROLE → DATA GRANT → 보호 VIEW</code>입니다. 권한이 없으면 객체가 보이지 않아 <code>ORA-00942</code>가 될 수 있습니다.</p></div>
@@ -47,7 +47,7 @@
<tr><td><code th:text="${vectorObject}">ADMIN.CB_DDS_VECTOR_SEARCH_DOCUMENTS</code></td><td>객체별 분류값 DATA GRANT + 토큰 Context + VECTOR_DISTANCE</td><td><a href="/vector-knowledge">지식 검색</a></td></tr>
</tbody></table></div>
<details class="explanation-details mt-3">
<summary>보호 대상 기술 상세 보기</summary>
<summary>기술 상세</summary>
<p class="mb-0">주 대상은 업무 분류값이 붙은 벡터 지식자료 검색입니다. 원본 테이블은 직접 접근 비교를 위한 고급 검증에만 사용합니다.</p>
</details>
</section>