Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Quais permissões são necessárias para inserir em massa no SQL Server de um compartilhamento de rede com autenticação do Windows?


Recentemente, tivemos esse problema para vários de nossos desenvolvedores. Eu criei várias maneiras de permitir o teste de inserções em massa.

Nossa preferência era usar uma conta de serviço SQL. Definimos o servidor SQL e o agente SQL para serem executados como uma conta de serviço e, em seguida, permitimos que os desenvolvedores acionassem trabalhos de agente. A conta de serviço recebeu permissão para os compartilhamentos UNC e tudo funcionou corretamente. Observe que a conta de serviço sempre funcionará bem ao executar esses trabalhos de agente (supondo que as permissões UNC estejam definidas). São os desenvolvedores tentando testar que se deparam com esses problemas.

Outro método é criar um compartilhamento no próprio servidor SQL e apontar o caminho de inserção em massa para o diretório local. Esses erros parecem ocorrer apenas ao acessar caminhos UNC. Independentemente de o caminho UNC ter as permissões corretas para permitir o acesso. Por exemplo, criamos C:\test\ como uma pasta no próprio servidor SQL e permissão para permitir que um dev solte arquivos de teste lá. Eles são então chamados por meio do comando de inserção em massa.

Um comando pode precisar ser executado no mestre para permitir que uma permissão de grupo de logon do SQL seja inserida em massa. Isto é como abaixo.
GRANT ADMINISTER BULK OPERATIONS TO "domain\usergroup"