As funções devem sempre ser usadas para aplicar permissões do SQL Server?

3

Embora eu entenda o objetivo de aplicar permissões a funções e adicionar um usuário a uma função, estou pensando se há algum valor em fazer isso se soubermos que há um relacionamento um-para-um entre cada função e cada usuário.

ie. Se você sabe que nunca haverá mais de um usuário em uma função, isso torna as funções redundantes e é melhor aplicar as permissões diretamente ao usuário.

    
por David Gardiner 14.05.2009 / 04:06

4 respostas

6

E se esse usuário mudar (se aposentar, ser demitido etc.)? E se os horários mudarem e você tiver que dar as mesmas permissões para outro usuário?

É por isso que a recomendação é:

Utilizador do Windows - > Grupo de segurança do Windows - > Login do SQL Server - > Usuário do banco de dados - > Papel do banco de dados - > Permissão.

    
por 14.05.2009 / 04:15
1

Se as suas contas de usuário são realmente contas de função (o que significa que elas têm nomes genéricos como "gerente" ou "atualizador" e não estão vinculadas a pessoas reais), talvez você possa fazer isso. No entanto, em qualquer organização, sempre haverá pessoas circulando por um motivo ou outro, seja temporariamente ou permanentemente, e será muito mais fácil gerenciar as permissões usando funções.

    
por 14.05.2009 / 04:11
1

Uma vantagem de usar funções em bancos de dados do SQL Server é que eles são preservados no banco de dados. Se você tivesse que restaurar backups de banco de dados em outro servidor que não possui alguns usuários, você terá problemas com permissões. As funções podem ser atribuídas a usuários existentes no novo servidor.

    
por 14.05.2009 / 09:25
0

"Papel" está lá por conveniência. Aplicar regras uma vez, em seguida, adicionar / remover usuários se tornará uma tarefa mais fácil. O cenário de usuário da função 1: 1 não existe no mundo real.

    
por 14.05.2009 / 18:47

Tags