我们有一个文件夹供员工扫描合同。扫描后,他们应该根据我们的惯例重命名它们,以便它们可以进一步处理。作为对最近事件的回应,这些文件夹的安全性已被锁定(它们被授予写入权限,但没有修改权限),现在它们无法重命名文件。
有没有一种技术方法可以完成我想做的事情?从我读过的内容来看,我认为这是不可能的。
如果没有,你能建议任何解决方法吗?一种可能性是在扫描文件时设置文件的名称。另一种方法是让受信任的管理人员获得足够的重命名权限。
我们有一个文件夹供员工扫描合同。扫描后,他们应该根据我们的惯例重命名它们,以便它们可以进一步处理。作为对最近事件的回应,这些文件夹的安全性已被锁定(它们被授予写入权限,但没有修改权限),现在它们无法重命名文件。
有没有一种技术方法可以完成我想做的事情?从我读过的内容来看,我认为这是不可能的。
如果没有,你能建议任何解决方法吗?一种可能性是在扫描文件时设置文件的名称。另一种方法是让受信任的管理人员获得足够的重命名权限。
显然重命名需要删除权限。或者,您可以在将文件放入所需文件夹之前重命名这些文件吗?
另一个想法 - 也许可以运行一个批处理作业来适当地重命名文件,这些文件可以在具有适当权限的服务器上作为计划任务运行。
不仅使用 NTFS 文件权限。
您可以创建一个程序,该程序作为在计算机启动时启动的服务运行。所述服务在允许删除和创建文件(并因此重命名文件)的帐户下运行。
然后创建一个小程序,通过调用您编写的服务对文件执行重命名。当右键单击一个文件作为“特权重命名”时,该程序可以在资源管理器上下文菜单中显示自己。
让我写下我的评论作为答案。您可以编写一个常驻 PowerShell 脚本,该脚本使用(
Start-FileSystemWatcher
来自PowerShellPack)来监视该特定位置中的新文件,然后将这些文件硬链接到员工无法访问的位置。您最担心的似乎是没有任何数据会再次被删除,因此这将完成它,同时仍然提供Delete
重命名所需的 ACE。在带有硬链接的“备份”位置,您可以保留一个基于密码的索引(想到 SHA1),从而避免重复。当然,可以进一步提高其复杂性以满足您的需求。当然,这样的 PowerShell 脚本可以自己接管重命名任务。取决于规则自动化的难易程度。
Rename 实际上是 FS 操作方面的移动命令,所以答案是否定的。