限制在文件系统中删除的文件流容器数据

时间:2011-10-21 05:36:13

标签: sql-server sql-server-2008 filestream

刚刚在SQL Server Express 2008 R2上观察到,我能够在文件系统中手动删除每个表行的文件流文件。删除后,应用程序将抛出错误

  

从服务器接收结果时发生传输级错误。 (提供者:共享内存提供者,错误:0 - 管道的另一端没有进程。)

有没有办法在使用filestream时限制文件系统上的删除操作以避免这种情况?

我正在关注这篇文章Link

在“文件系统流访问”下,它表示

  

由于文件操作是事务性的,因此无法通过文件系统删除或重命名FILESTREAM文件。

但是,我可以删除它们。

1 个答案:

答案 0 :(得分:1)

从您提供的链接

  

仅运行SQL Server服务帐户的帐户   授予FILESTREAM容器NTFS权限。我们推荐   没有其他帐户被授予数据容器的权限。

这正是你所看到的......

这反过来意味着您的设置不安全 - 机器登录和SQL Server服务帐户必须不同,机器登录不应该访问文件系统的那些部分!