Aurora PostgreSQL에서 동적 마스킹 사용
동적 데이터 마스킹은 쿼리 시 사용자에게 데이터가 표시되는 방식을 제어하여 Aurora PostgreSQL 데이터베이스의 민감한 데이터를 보호하는 보안 기능입니다. Aurora는 pg_columnmask 확장을 통해 이를 구현합니다. pg_columnmask는 PostgreSQL의 기본 행 수준 보안 및 세분화된 액세스 제어 메커니즘을 보완하는 열 수준 데이터 보호를 제공합니다.
pg_columnmask를 사용하면 사용자 역할을 기반으로 데이터 가시성을 결정하는 마스킹 정책을 생성할 수 있습니다. 사용자가 마스킹 정책을 사용하여 테이블을 쿼리하면 Aurora PostgreSQL은 사용자의 역할 및 정책 가중치에 따라 쿼리 시 적절한 마스킹 함수를 적용합니다. 기본 데이터는 스토리지에서 변경되지 않고 그대로 유지됩니다.
pg_columnmask는 다음 기능을 지원합니다.
-
기본 제공 및 사용자 지정 마스킹 함수 - 이메일 및 텍스트 마스킹과 같은 일반적인 패턴에 대해 사전 구축된 함수를 사용하거나 SQL 기반 마스킹 정책을 통해 민감한 데이터(PII)를 보호하는 자체 사용자 지정 함수를 생성합니다.
-
다중 마스킹 전략 - 정보를 완전히 숨기거나, 부분 값을 와일드카드로 바꾸거나, 사용자 지정 마스킹 접근 방식을 정의합니다.
-
정책 우선 순위 지정 - 단일 열에 대해 여러 정책을 정의합니다. 가중치를 사용하여 여러 정책이 열에 적용될 때 사용할 마스킹 정책을 결정합니다. Aurora PostgreSQL은 가중치 및 사용자 역할 멤버십을 기반으로 정책을 적용합니다.
pg_columnmask는 Aurora PostgreSQL 버전 16.10 이상 및 버전 17.6 이상에서 사용할 수 있습니다. 추가 비용 없이 사용할 수 있습니다.