Pessoal,
estou fazendo alguns testes com o Filestream e na parte de segurança me deparei com um problema: se qualquer usuário for no diretório do Filestream e deletar um arquivo manualmente, a minha base fica inconsistente,
tento fazer o select e ele retorna o seguinte erro:
"Msg 233, Level 20, State 0, Line 0
A transport-level error has occurred when receiving results from the server. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.)"
Se os dados fossem gravados no SQL, em uma coluna varbinary(max), esse delete seria feito apenas pela aplicação que tivesse a role datawriter, e o erro não aconteceria.
Tem alguma forma de evitar esse tipo de problema? Utilizamos a versão 2012 Enterprise em nosso ambiente, o File Table pode ajudar nesse sentido? O problema é que se um administrador de rede mal intencionado
deletar um arquivo do diretório, ele deixa minha base inconsistente. Pensei em criar até uma "trigger" para controlar essas exclusões, caso exista.