Control Plane and Data Plane¶
DADP는 정책 관리와 암복호화 실행을 같은 계층에 두지 않는다. 제어면은 무엇을 보호할지와 어떤 정책을 적용할지 결정하고, 데이터면은 그 결정을 실제 요청에 적용한다.
제어면¶
제어면의 중심은 Hub다. Hub는 다음 책임을 가진다.
- 정책 정의와 버전 관리
- 키 메타데이터 관리
- 연동 인스턴스 등록
- 스키마와 정책 매핑 관리
- 운영 상태와 모니터링 관점의 제어
| 영역 | 주요 컴포넌트 | 책임 |
|---|---|---|
| 고객 제어면 | Hub | 정책, 메타데이터, 매핑, 운영 상태 |
데이터면¶
데이터면의 중심은 Engine이다. Engine은 다음 책임을 가진다.
- 단건, 배치, 스트림 암복호화 실행
- 동기화된 정책과 키 메타데이터 적용
- 런타임 캐시 유지
- 실행 이벤트와 관측 데이터 생성
Aggregator는 선택적으로 데이터면의 관측 결과를 장기 조회 가능한 형태로 정리한다.
| 컴포넌트 | 책임 |
|---|---|
| Engine | 암복호화 실행과 런타임 캐시 사용 |
| Aggregator | 선택적 통계와 분석 조회 |
연동 경계¶
연동 경계는 애플리케이션 또는 데이터베이스 실행 흐름을 Engine으로 연결한다.
| 경로 | 개입 위치 | 특징 |
|---|---|---|
| Wrapper | 애플리케이션 JDBC 경계 | SQL 경로를 투명하게 보호 |
| Direct API | 애플리케이션 서비스 경계 | 코드에서 명시적으로 암복호화 호출 |
| DB UDF | 데이터베이스 SQL 경계 | 함수, 패키지, 트리거, 배치 SQL에 통합 |
운영 해석 규칙¶
- 제어면은 정책 원본을 가진다.
- 데이터면은 실행 책임을 가진다.
- 연동 경계는 실행을 시작하지만 실행 결과의 최종 책임 주체는 아니다.
실제 장애가 발생하면 먼저 어느 계층이 실패했는지 구분해야 한다.
- 정책 정의가 잘못되었는가
- 동기화가 지연되었는가
- 런타임 실행이 실패했는가
- 특정 연동 경로만 깨졌는가
이 네 범주를 분리하지 않으면 진단과 복구가 모두 느려진다.