我正在尝试设计一个由用户托管和管理的空气间隙服务器。我将在该服务器上运行SQL Server 2019,它将访问一个重要的托管数据库。
- 如何防止用户在文件系统级别修改或替换数据库?* 请注意,用户将是标准用户,并且不具有管理员权限。
我知道我可以使用角色和密码控制数据库访问,所以我更担心对数据库文件的文件系统访问。
建筑
- 以标准权限运行的.NET应用程序,用户可以使用该应用程序查看数据库中的某些数据(有限的读取访问权限)。
- 以管理权限运行的WCF Web服务,可以读取/写入数据库,但用户无权访问。
理想场景
- 对数据库的所有访问都必须通过SQL Server。
- 用户不能通过文件系统直接访问数据库。
- 用户应该只能通过.NET应用程序有选择地查看某些数据。
1条答案
按热度按时间wdebmtf21#
您无法阻止具有系统管理员权限的用户执行任何他们想要的操作。
理想情况下,您应该给予他们一个黑盒系统,他们没有管理员权限,但这样他们就无法正确管理它,因为系统管理员工作总是需要管理员权限。
因此,包含数据库文件的文件和文件夹将由SQL Server服务帐户拥有和访问。所有其他用户都不应对其具有任何权限。这应防止没有物理访问权限的标准用户获得访问权限。
如果他们是受限用户,您可以像这样轻松锁定文件系统,但具有物理访问权限得坚定用户仍然可以入侵.最终,您要么通过云提供此服务(自己托管),要么签订一份良好得合同.没有其他方法.