Seguindo uma solicitação da equipe de segurança, você acha que haverá algum problema se eu revogar o acesso a essas tabelas?
Use Master
GO
REVOKE SELECT ON sys.database_principals TO PUBLIC;
REVOKE SELECT ON sys.database_principals TO GUEST;
O ponto da questão não é se o pedido é razoável, mas se pode ser prejudicial de alguma forma.
Eu diria que não faz sentido esse pedido. A seção Permissions dos
sys.database_principals
estados que cada usuário pode ver apenas suas próprias informações e aquelas que são padrão em qualquer instância do SQL Server:Portanto, se eles estiverem vendo informações relacionadas a outros usuários, é provável que tenham recebido o
ALTER ANY USER
ouALTER ANY ROLE
e esse deve ser seu alvo.Isso quebraria qualquer aplicativo que dependesse do comportamento documentado de que "Qualquer usuário pode ver seu próprio nome de usuário, os usuários do sistema e as funções fixas do banco de dados".