@@ -21,6 +21,7 @@
|
||||
<a class="nav-link" href="/objects">테이블/뷰</a>
|
||||
<a class="nav-link" href="/tokens">토큰</a>
|
||||
<a class="nav-link" href="/probe">ORDS 검증</a>
|
||||
<a class="nav-link" href="/ords-handlers">ORDS 핸들러</a>
|
||||
<a class="nav-link" href="/settings">설정</a>
|
||||
</div>
|
||||
<form method="post" action="/logout" class="ms-auto">
|
||||
|
||||
39
src/main/resources/templates/ords-handlers.html
Normal file
39
src/main/resources/templates/ords-handlers.html
Normal file
@@ -0,0 +1,39 @@
|
||||
<!doctype html>
|
||||
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
||||
<head th:replace="~{fragments/layout :: head('ORDS 핸들러')}"></head>
|
||||
<body>
|
||||
<nav th:replace="~{fragments/layout :: nav}"></nav>
|
||||
<main class="container py-4">
|
||||
<div class="page-title">
|
||||
<h1>ORDS 핸들러</h1>
|
||||
<p>Bearer Token을 DB 컨텍스트로 변환하는 ORDS Handler와 PL/SQL 흐름을 확인합니다.</p>
|
||||
</div>
|
||||
|
||||
<section class="content-band" th:each="handler : ${handlers}">
|
||||
<div class="section-heading">
|
||||
<h2 th:text="${handler.method() + ' ' + handler.fullPath()}">POST /ords/...</h2>
|
||||
<span class="badge text-bg-secondary" th:text="${handler.sourceType()}">plsql</span>
|
||||
</div>
|
||||
<div class="meta-row">
|
||||
<span>Schema: <strong th:text="${handler.schemaName()}">CB_ORDS</strong></span>
|
||||
<span>Module: <strong th:text="${handler.moduleName()}">cb.agent.security</strong></span>
|
||||
<span>Template: <strong th:text="${handler.template()}">vpd/documents</strong></span>
|
||||
</div>
|
||||
<div class="probe-exchange-grid">
|
||||
<section class="probe-exchange">
|
||||
<h3>Header Bindings</h3>
|
||||
<pre th:text="${handler.parameters()} ?: 'No parameters'"></pre>
|
||||
</section>
|
||||
<section class="probe-exchange">
|
||||
<h3>Handler Source</h3>
|
||||
<pre th:text="${handler.source()}"></pre>
|
||||
</section>
|
||||
<section class="probe-exchange span-2">
|
||||
<h3>Bearer Token -> User Context Package</h3>
|
||||
<pre th:text="${handler.packageSource()}"></pre>
|
||||
</section>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
@@ -79,6 +79,7 @@
|
||||
<th>테이블/뷰</th>
|
||||
<th>Action</th>
|
||||
<th>행 규칙</th>
|
||||
<th>적용 필터</th>
|
||||
<th>NULL 제외 컬럼</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
@@ -90,6 +91,7 @@
|
||||
<td th:text="${permission.objectName()}">CB_V_SEARCH_DOCUMENTS</td>
|
||||
<td th:text="${permission.action()}">SELECT</td>
|
||||
<td th:text="${permission.rules()} ?: '-'">ALL</td>
|
||||
<td><pre class="table-pre" th:text="${permission.filterPreview()} ?: '-'">ALL ROWS</pre></td>
|
||||
<td th:text="${permission.visibleColumns()} ?: '-'">CONTENTS</td>
|
||||
<td>
|
||||
<form method="post" action="/permissions/delete" class="inline-form">
|
||||
@@ -100,7 +102,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr th:if="${#lists.isEmpty(permissions)}">
|
||||
<td colspan="7" class="text-muted">등록된 권한이 없습니다.</td>
|
||||
<td colspan="8" class="text-muted">등록된 권한이 없습니다.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
Reference in New Issue
Block a user