diff --git a/docs/design/475-vpd-apply-consolidation/README.md b/docs/design/475-vpd-apply-consolidation/README.md new file mode 100644 index 0000000..7e380ea --- /dev/null +++ b/docs/design/475-vpd-apply-consolidation/README.md @@ -0,0 +1,20 @@ +# #475 VPD 적용 화면 통합 + +## 배경 + +VPD 적용은 보호 객체 하나를 선택해서 policy를 붙이는 개별 적용이 기본이다. 벌크 적용은 같은 filter/function을 스키마의 여러 TABLE/VIEW에 확장할 때 사용하는 보조 기능이다. + +기존 화면은 `/vpd-policies`가 적용 현황 위주이고, 실제 개별/벌크 적용 폼은 `/vpd-filter-policies`에 있어 운영 흐름이 맞지 않았다. + +## 결정 + +- `/vpd-policies`를 VPD 적용의 중심 화면으로 둔다. +- 개별 적용 폼을 먼저 배치한다. +- 벌크 적용은 같은 화면의 접힌 영역으로 둔다. +- `/vpd-filter-policies`는 filter function 등록/수정과 고급 policy 수정 화면으로 유지한다. + +## 완료 기준 + +- 운영자가 VPD 설정 화면에서 바로 개별 적용을 수행할 수 있다. +- 같은 화면에서 필요 시 벌크 적용을 펼쳐 실행할 수 있다. +- 기존 controller/service API는 유지한다. diff --git a/src/main/resources/static/css/app.css b/src/main/resources/static/css/app.css index 2c3a410..7e75f4b 100644 --- a/src/main/resources/static/css/app.css +++ b/src/main/resources/static/css/app.css @@ -449,6 +449,12 @@ body { margin: 0; } +.bulk-apply-summary { + cursor: pointer; + font-weight: 700; + min-height: 2rem; +} + .question-presets { display: flex; flex-wrap: wrap; diff --git a/src/main/resources/templates/vpd-policies.html b/src/main/resources/templates/vpd-policies.html index 01cf633..d565fc7 100644 --- a/src/main/resources/templates/vpd-policies.html +++ b/src/main/resources/templates/vpd-policies.html @@ -18,10 +18,150 @@
-

적용 현황

+

VPD 적용

Filter Policy 관리
-

이 화면은 현재 DB에 적용된 VPD policy와 policy function/filter 상세를 조회합니다. 등록과 벌크 적용은 Filter Policy 관리에서 수행합니다.

+

VPD는 개별 보호 객체 적용을 기본으로 하고, 같은 정책을 스키마 TABLE/VIEW에 확장할 때만 벌크 적용을 사용합니다.

+
+ +
+
+

개별 적용

+
+
+ + + + + + +
+ Statement Types +
+ +
+
+
+ + +
+
+ + +
+ +
+ + + + +
+ +
+ + + + + + +
+ +
+
+ 벌크 적용 +
+ + +
+ Object Types +
+ + +
+
+ +
+ Statement Types +
+ +
+
+
+ + +
+
+ + +
+ + +
+
@@ -116,5 +256,16 @@
+