[Developer] #424 rename object page to ORDS handler target
This commit is contained in:
@@ -45,7 +45,7 @@ public class ProtectedObjectController {
|
|||||||
try {
|
try {
|
||||||
protectedObjectService.createObject(
|
protectedObjectService.createObject(
|
||||||
new ProtectedObjectCreateCommand(owner, objectName, ordsPath, columns, sensitiveColumns));
|
new ProtectedObjectCreateCommand(owner, objectName, ordsPath, columns, sensitiveColumns));
|
||||||
redirectAttributes.addFlashAttribute("message", "보호 객체를 추가했습니다.");
|
redirectAttributes.addFlashAttribute("message", "ORDS 조회 Handler 대상을 추가했습니다.");
|
||||||
} catch (AppException exception) {
|
} catch (AppException exception) {
|
||||||
redirectAttributes.addFlashAttribute("errorMessage", exception.getMessage());
|
redirectAttributes.addFlashAttribute("errorMessage", exception.getMessage());
|
||||||
}
|
}
|
||||||
@@ -84,7 +84,7 @@ public class ProtectedObjectController {
|
|||||||
@PostMapping("/objects/disable")
|
@PostMapping("/objects/disable")
|
||||||
public String disable(@RequestParam long objectId, RedirectAttributes redirectAttributes) {
|
public String disable(@RequestParam long objectId, RedirectAttributes redirectAttributes) {
|
||||||
protectedObjectService.disableObject(objectId);
|
protectedObjectService.disableObject(objectId);
|
||||||
redirectAttributes.addFlashAttribute("message", "보호 객체를 비활성화했습니다.");
|
redirectAttributes.addFlashAttribute("message", "ORDS 조회 Handler 대상을 비활성화했습니다.");
|
||||||
return "redirect:/objects";
|
return "redirect:/objects";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
<a class="nav-link" href="/users">사용자</a>
|
<a class="nav-link" href="/users">사용자</a>
|
||||||
<a class="nav-link" href="/roles">역할</a>
|
<a class="nav-link" href="/roles">역할</a>
|
||||||
<a class="nav-link" href="/permissions">권한</a>
|
<a class="nav-link" href="/permissions">권한</a>
|
||||||
<a class="nav-link" href="/objects">테이블/뷰</a>
|
<a class="nav-link" href="/objects">ORDS 조회 Handler</a>
|
||||||
<a class="nav-link" href="/tokens">토큰</a>
|
<a class="nav-link" href="/tokens">토큰</a>
|
||||||
<a class="nav-link" href="/probe">ORDS 검증</a>
|
<a class="nav-link" href="/probe">ORDS 검증</a>
|
||||||
<a class="nav-link" href="/mcp-reasoning">MCP Reasoning</a>
|
<a class="nav-link" href="/mcp-reasoning">MCP Reasoning</a>
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
<!doctype html>
|
<!doctype html>
|
||||||
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
||||||
<head th:replace="~{fragments/layout :: head('테이블/뷰 관리')}"></head>
|
<head th:replace="~{fragments/layout :: head('ORDS 조회 Handler 생성')}"></head>
|
||||||
<body>
|
<body>
|
||||||
<nav th:replace="~{fragments/layout :: nav}"></nav>
|
<nav th:replace="~{fragments/layout :: nav}"></nav>
|
||||||
<main class="container py-4">
|
<main class="container py-4">
|
||||||
<div class="page-title">
|
<div class="page-title">
|
||||||
<h1>테이블/뷰 관리</h1>
|
<h1>ORDS 조회 Handler 생성</h1>
|
||||||
<p>권한에 사용할 보호 객체와 이미 구성된 ORDS 조회 경로를 매핑합니다.</p>
|
<p>DB 테이블/뷰를 선택해 Bearer Token 기반 VPD 검증용 ORDS 조회 Handler 경로를 등록하고 생성합니다.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="alert alert-success" th:if="${message}" th:text="${message}"></div>
|
<div class="alert alert-success" th:if="${message}" th:text="${message}"></div>
|
||||||
<div class="alert alert-danger" th:if="${errorMessage}" th:text="${errorMessage}"></div>
|
<div class="alert alert-danger" th:if="${errorMessage}" th:text="${errorMessage}"></div>
|
||||||
|
|
||||||
<section class="content-band">
|
<section class="content-band">
|
||||||
<h2>테이블/뷰 추가</h2>
|
<h2>조회 Handler 대상 추가</h2>
|
||||||
<form method="post" action="/objects" class="form-grid">
|
<form method="post" action="/objects" class="form-grid">
|
||||||
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}">
|
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}">
|
||||||
<label>
|
<label>
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
</label>
|
</label>
|
||||||
<label>
|
<label>
|
||||||
ORDS Path
|
ORDS Path
|
||||||
<input class="form-control" name="ordsPath" placeholder="cb-ords/cb-agent-security/vpd/documents" required>
|
<input class="form-control" name="ordsPath" placeholder="cb-ords/cb-object-query/admin/board_posts" required>
|
||||||
</label>
|
</label>
|
||||||
<label>
|
<label>
|
||||||
컬럼
|
컬럼
|
||||||
@@ -47,12 +47,12 @@
|
|||||||
민감 컬럼
|
민감 컬럼
|
||||||
<input class="form-control" name="sensitiveColumns" placeholder="CONTENTS">
|
<input class="form-control" name="sensitiveColumns" placeholder="CONTENTS">
|
||||||
</label>
|
</label>
|
||||||
<button class="btn btn-primary" type="submit">추가</button>
|
<button class="btn btn-primary" type="submit">대상 추가</button>
|
||||||
</form>
|
</form>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section class="content-band">
|
<section class="content-band">
|
||||||
<h2>등록된 테이블/뷰</h2>
|
<h2>조회 Handler 대상 목록</h2>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-sm align-middle">
|
<table class="table table-sm align-middle">
|
||||||
<thead>
|
<thead>
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
<form method="post" action="/objects/ords-handler" class="inline-form">
|
<form method="post" action="/objects/ords-handler" class="inline-form">
|
||||||
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}">
|
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}">
|
||||||
<input type="hidden" name="objectId" th:value="${object.objectId()}">
|
<input type="hidden" name="objectId" th:value="${object.objectId()}">
|
||||||
<button class="btn btn-sm btn-outline-primary" type="submit">조회 Handler 생성</button>
|
<button class="btn btn-sm btn-outline-primary" type="submit">Handler 생성</button>
|
||||||
</form>
|
</form>
|
||||||
<form method="post" action="/objects/disable" class="inline-form">
|
<form method="post" action="/objects/disable" class="inline-form">
|
||||||
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}">
|
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}">
|
||||||
@@ -93,7 +93,7 @@
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr th:if="${#lists.isEmpty(objects)}">
|
<tr th:if="${#lists.isEmpty(objects)}">
|
||||||
<td colspan="5" class="text-muted">등록된 테이블/뷰가 없습니다.</td>
|
<td colspan="5" class="text-muted">등록된 조회 Handler 대상이 없습니다.</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<main class="container py-4">
|
<main class="container py-4">
|
||||||
<div class="page-title">
|
<div class="page-title">
|
||||||
<h1>VPD 설정</h1>
|
<h1>VPD 설정</h1>
|
||||||
<p>테이블/뷰 관리에 등록된 보호 객체에 적용된 Oracle VPD policy 설정을 확인합니다.</p>
|
<p>ORDS 조회 Handler 대상에 등록된 보호 객체에 적용된 Oracle VPD policy 설정을 확인합니다.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="alert alert-warning" th:if="${runtimeError}">
|
<div class="alert alert-warning" th:if="${runtimeError}">
|
||||||
@@ -98,7 +98,7 @@
|
|||||||
</th:block>
|
</th:block>
|
||||||
<tr th:if="${#lists.isEmpty(policies)}">
|
<tr th:if="${#lists.isEmpty(policies)}">
|
||||||
<td colspan="8" class="text-muted">
|
<td colspan="8" class="text-muted">
|
||||||
등록된 보호 객체에 적용된 VPD policy가 없습니다. 테이블/뷰 관리의 보호 객체 등록 상태와 DB policy 적용 상태를 확인하세요.
|
등록된 보호 객체에 적용된 VPD policy가 없습니다. ORDS 조회 Handler 대상 등록 상태와 DB policy 적용 상태를 확인하세요.
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|||||||
Reference in New Issue
Block a user