Configurar o perfil de gerenciamento de políticas de mascaramento
A extensão de mascaramento de colunas do PostgreSQL, pg_columnmask, permite delegar o gerenciamento de políticas de mascaramento a um perfil específico, em vez de exigir privilégios de proprietário da tabela ou rds_superuser. Isso fornece um controle mais granular sobre quem pode criar, alterar e eliminar políticas de mascaramento.
Para configurar o perfil que terá privilégios de gerenciamento de políticas de mascaramento, siga estas etapas:
-
Crie o perfil de administrador de políticas: como
rds_superuser, crie um perfil responsável pelo gerenciamento de políticas de mascaramento:CREATE ROLE mask_admin NOLOGIN; -
Configure o parâmetro PostgreSQL: em seu grupo de parâmetros de cluster de banco de dados personalizado, defina o parâmetro de configuração do mecanismo
pgcolumnmask.policy_admin_rolnamecom o nome do perfil que você criou:pgcolumnmask.policy_admin_rolname = mask_adminEsses parâmetros de configuração do mecanismo podem ser definidos em um grupo de parâmetros do cluster de banco de dados e não exigem a reinicialização da instância. Para acessar detalhes sobre a atualização de parâmetros, consulte Modificar parâmetros em um grupo de parâmetros do cluster de banco de dadosno Amazon Aurora.
-
Conceda o perfil aos usuários como
rds_superuser, conceda o perfilmask_adminaos usuários que devem ser capazes de gerenciar políticas de mascaramento:CREATE USER alice LOGIN; CREATE USER bob LOGIN; GRANT mask_admin TO alice, bob;Além disso, garanta que os usuários tenham o privilégio USAGE nos esquemas em que gerenciarão as políticas de mascaramento:
GRANT USAGE ON SCHEMA hr TO alice, bob;
Agora, quando os usuários alice e bob se conectam ao banco de dados, eles podem usar as funções de extensão pg_columnmask padrão para criar, alterar e eliminar políticas de mascaramento em todas as tabelas, em todos os esquemas em que eles têm privilégios USAGE no esquema.