마스킹 정책 관리 역할 구성
PostgreSQL 열 마스킹 확장인 pg_columnmask를 사용하면 rds_superuser 또는 테이블 소유자 권한이 필요하지 않고 특정 역할에 마스킹 정책 관리를 위임할 수 있습니다. 이를 통해 마스킹 정책을 생성, 변경 및 삭제할 수 있는 사용자를 보다 세밀하게 제어할 수 있습니다.
마스킹 정책 관리 권한이 있는 역할을 구성하려면 다음 단계를 따릅니다.
-
정책 관리자 역할 생성 -
rds_superuser는 마스킹 정책 관리를 담당하는 새 역할을 생성합니다.CREATE ROLE mask_admin NOLOGIN; -
PostgreSQL 파라미터 구성 - 사용자 지정 DB 클러스터 파라미터 그룹에서
pgcolumnmask.policy_admin_rolname엔진 구성 파라미터를 생성한 역할의 이름으로 설정합니다.pgcolumnmask.policy_admin_rolname = mask_admin이 엔진 구성 파라미터는 DB 클러스터 파라미터 그룹에서 설정할 수 있으며 인스턴스 재부팅이 필요하지 않습니다. 파라미터 업데이트에 대한 자세한 내용은 Amazon Aurora에서 DB 클러스터 파라미터 그룹의 파라미터 수정 섹션을 참조하세요.
-
사용자에게 역할 부여 -
rds_superuser로서 마스킹 정책을 관리할 수 있어야 하는 사용자에게mask_admin역할을 부여합니다.CREATE USER alice LOGIN; CREATE USER bob LOGIN; GRANT mask_admin TO alice, bob;또한 사용자에게 마스킹 정책을 관리할 스키마에 대한 USAGE 권한이 있는지 확인합니다.
GRANT USAGE ON SCHEMA hr TO alice, bob;
이제 alice 및 bob 사용자가 데이터베이스에 연결하면 표준 pg_columnmask 확장 함수를 사용하여 스키마에 대한 USAGE 권한이 있는 모든 스키마의 모든 테이블에 마스킹 정책을 생성, 변경 및 삭제할 수 있습니다.