出于特定的安全原因,我们将独立笔记本电脑用于:
这些便携式计算机与需要使用的数据库文件(.mdf
和.ldf
)共享一个具有BitLocker加密的USB驱动器。
最近,我们将USB驱动器替换为更大的驱动器,并且还将文件系统从FAT32替换为NTFS。这将使数据库能够超出FAT32限制。
问题是因为它是NTFS,它具有文件级权限,并且SQL Server现在在附加和分离数据库文件时对数据库文件设置自己的权限。由于在笔记本电脑之间不共享OS用户,因此在数据库上设置了文件许可权的笔记本电脑现在是能够附加文件的唯一笔记本电脑。其他便携式计算机无法识别为SQL Server用户访问 SQLServerMSSQLUser $ {计算机名} $ {SQL实例} 而生成的SQL Server安全组。 Windows也不允许我将此组添加到“管理员”组。
要管理对数据库的访问,我们必须使用SQL Server用户而不是计算机帐户。 sa
用户是通过用户运行的用于查询数据库的软件来附加/分离数据库的人。
由于SQL Server始终在数据库文件权限中保留“管理员”组的权限,因此我们可以以计算机管理员的身份手动登录并更改权限,但是我们需要某种对用户透明的方法。
我们的计划B是使用SQL Server和数据库文件对环境进行虚拟化,并将VM映像保留在NTFS Bitlocker驱动器上,但是我们保留此解决方案作为最后的选择。
我本想对数据库文件应用一种权限掩码,以便当MS SQL更改权限时,它包括“已认证用户”之类的组,但可惜我没有找到方法,SQL Server删除了任何组我在数据库文件上添加了NTFS安全权限。
任何解决方案都可以解决,或者我错过了某些东西可以允许在USB驱动器上的笔记本电脑之间共享数据库文件?
谢谢