我刚刚设置了一个 server 2012 essentials R2 盒子作为我的小型企业的测试平台。它在 Essentials R2 主机上作为 VM 运行 Essentials R2。我已将其设置为 DC 和 DHCP 服务器并加入了客户端。
我的下一个任务是将它用作文件服务器,但我不太确定如何设置它。所有客户端与文件服务器的交互都将通过客户端软件进行。因此,除了通过软件之外,我不希望对文件进行任何访问。
我查看了 ntfs 权限,并且有一个名为“列出文件夹/读取数据”的权限,但是我不确定这是否能满足我的要求。
是否可以授予对文件的访问权限,但不允许通过 Windows 资源管理器/命令行进行访问?
这取决于应用程序如何与文件和用户进行交互。
根本问题是:“有没有办法使用与用户登录会话不同的安全主体来访问文件”?如果答案是“否”,那么你不能限制它。
更务实:
如果应用程序是远程(在客户端计算机上运行的应用程序通过 SMB 共享访问文件)或本地(例如通过终端服务)使用的传统桌面应用程序,那么不,您通常不能使用权限限制对文件的访问因为该进程使用用户的身份来访问它。
如果应用程序是 n 层应用程序(例如,Web 应用程序),那么您通常可以对数据文件访问设置额外限制:您限制用户的权限并允许安全主体所需的任何级别的访问权限将被使用(通常通过将特定的服务服务帐户分配给相关进程来完成)。但是请注意,n 层应用程序可能会模拟用户访问令牌。在这种情况下,您应该确保您要保护的文件实际上根本无法通过 SMB 获得(例如,通过将它们放置在无法从任何 SMB 共享可用的 SMB 共享中访问的驱动器或文件夹中)用户)。
请注意,无论上面的答案是什么,如果应用程序支持 UNC 路径,您可以通过将文件隐藏在隐藏的网络共享下来降低用户访问文件的可能性。隐藏共享所需要做的就是在其名称末尾添加一个美元符号 ($)。它不会阻止除了不太懂技术的用户之外的任何人在需要时访问该文件,但它可能会防止事故发生。