DDS 보호 연결
권한 관리에서 만든 규칙을 DDS DATA ROLE/DATA GRANT로 연결하고 실제 검색 결과로 확인합니다.
VPD의 Policy/Filter와 무엇이 다른가요?
VPD는 Policy가 Filter function을 호출해 요청마다 predicate를 계산합니다. DDS는 보호 VIEW/TABLE별 DATA GRANT에 행·컬럼 조건을 선언하고, 필요하면 predicate가 공통 권한을 읽는 Definer-rights 함수를 호출합니다.
따라서 이 화면에서는 VPD Filter를 수정하지 않습니다. 일상적인 변경은 권한 관리에서 하고, DDS grant 반영은 승인된 SQL/배포 절차로 수행합니다.
관리 대상 이름: CB_VECTOR_SEARCH_DOCUMENTS
DDS 보호 객체
VPD용 객체와 분리된 DDS 전용 VIEW입니다. 같은 청크·태그 저장소를 읽지만 VPD 정책은 붙이지 않습니다.
| 보호 VIEW | 적용 방식 | 기본 거부 | 검증 |
|---|---|---|---|
ADMIN.CB_DDS_VECTOR_SEARCH_DOCUMENTS |
토큰 Context/END USER → DATA ROLE → 객체별 DATA GRANT | Grant predicate가 없거나 조건 불일치 시 차단 | 검색 결과 확인 |
추가·수정 가이드
새 보호 대상을 추가할 때는 (1) 권한 관리에 논리 객체와 TAG 규칙을 등록하고 (2) DDS 전용 VIEW/TABLE을 만들고 (3) 해당 객체에 CREATE OR REPLACE DATA GRANT ... WHERE ...를 연결하고 (4) 토큰 Context와 직접 END USER의 허용·거부·권한 없음을 각각 검증합니다.
벡터 기준 SQL은 sql/adb/32_dds_vector_tag_setup.sql, 토큰 기반 공통 predicate 기준은 sql/adb/34_dds_token_data_grant_common_auth.sql입니다.
역할별 관리 규칙
아래 내용은 공통 권한 화면의 현재 규칙입니다. DDS에서는 이 규칙을 DATA GRANT 조건으로 반영합니다.
| 역할 | 효과 | 행·태그 규칙 | 원문 허용 컬럼 |
|---|---|---|---|
| ROLE | ALLOW | TAG SPRING_BOOT |
없음 |
| 아직 이 객체에 연결된 권한 규칙이 없습니다. 권한 관리에서 역할과 TAG 규칙을 먼저 등록하세요. | |||
DDS END USER 검증 주체
비밀번호는 서버 환경 변수로만 관리하고 화면에는 표시하지 않습니다.