Estou usando o Microsoft SQL Server 2014 em uma máquina Windows Server 2012 R2 Datacenter. Depois de encontrar problemas ao executar uma tarefa específica, estou tentando investigar se a conta de serviço que está executando o Serviço do Windows do SQL Server tem acesso a determinados arquivos. Eu fiz uma instalação pronta do SQL Server, e a conta de serviço que executa esse serviço é NT SERVICE\MSSQLSERVER
(há também NT SERVICE\SQLSERVERAGENT
para o Integration Services).
Como faço para verificar a quais arquivos esta conta tem acesso? Estou bem com a verificação em uma base de arquivo por arquivo.
Uma maneira que pensei em fazer isso foi rodar cmd.exe como outro usuário e começar a fazer dir
s. Quando eu Shift-Right Click C:\Windows\System32\cmd.exe
e selecione Executar como um usuário diferente, tento inserir o nome completo da conta, incluindo o domínio, mas recebo este erro: O nome fornecido não é um nome de conta formado corretamente. É por causa do espaço no domínio. Se eu omitir o domínio, o padrão é o domínio do qual o computador faz parte, que não é NT SERVICE
. Isso está assumindo que a senha deve ser deixada em branco.
Como eu faço login como um usuário cujo domínio tem um espaço?
fonte
Respostas:
Você não pode entrar com o
NT Service\MSSQLSERVER
conta ou oNT SERVICE\SQLSERVERAGENT
conta. Eles são contas especiais apenas para o serviço que tem um SID para permitir que as permissões sejam configuradas, mas o Windows sabe que elas não são contas reais, por isso não permitirá que você faça o login com elas.Você pode examinar a quais permissões essas contas têm acesso usando a ferramenta Sysinternals AccessChk e digitalizar uma unidade.
Um exemplo de comando é:
Isso pesquisará a unidade C recursivamente mostrando todas as pastas nas quais a conta possui acesso de gravação. Usar
accesschk64.exe /?
para uma lista completa de opções.fonte