# 접근 규칙 페이지 리뷰 - URL: `/permissions` - 현재 목적: 역할별 보호 객체 접근 규칙을 등록하고 관리한다. - VPD/ASO 관련성: 이 화면의 설정은 VPD 필터가 읽어 대상 테이블의 WHERE predicate로 변환한다. ## 페르소나 의견 - 일반 사용자: `CUST_ID = token stakeholder` 같은 축약 표현은 실제 적용 방식을 이해하기 어렵다. - 운영 관리자: 저장한 조건이 “최종 SQL”인지 “필터가 읽는 설정값”인지 명확해야 한다. - 적용 담당자: 업무 조건을 고르는 방식이어야 한다. 예: 본인 계약, 내 채널 계약, 전체 허용, 정적 SQL 조건. - DB 관리자: STATIC_SQL 같은 고급 조건은 검증·차단 규칙과 함께 보여야 한다. ## 가벼운 개선 1. 기본 입력은 업무 조건 선택형으로 둔다. - 전체 행 허용 - 본인 계약 - 내 채널 계약 - 담당 고객 - 내 채널 고객 2. 각 조건 옆에 “필터 변환 예시”를 접힌 형태로 보여준다. - 예: 본인 계약 → `FC_ID = SYS_CONTEXT('CB_AGENT_CTX', 'STAKEHOLDER_USER_ID')` 3. 목록에는 저장된 rule_type보다 업무 문장을 먼저 보여준다. 4. STATIC_SQL은 Advanced 영역으로 이동하고, “검증된 컬럼 조건만 허용”을 명시한다. ## Advanced로 둘 내용 - rule_type, rule_column, rule_value 원본 - 생성되는 VPD predicate 예시 - safe_static_predicate 방어 규칙 - ALLOW/DENY 결합 방식 ## 우선순위 P0. 사용자가 가장 많이 오해하는 화면이다. “설정값을 필터가 WHERE로 바꾼다”는 표현을 반드시 강화해야 한다.