我正在编写一个 C#/WPF 业务应用程序,它需要(除其他外)重新组织一些媒体文件(音频、视频和图像文件)。应用程序还必须在当前用户的安全上下文中运行,因此具有与他们相同的访问权限。
该应用程序将成为可以访问媒体的一个地方,以阻止对文件进行任何未经授权的访问。我最初的想法是将媒体组织在只读文件夹中,并使用具有适当权限的服务将文件移动到只读文件夹中。
实际应用程序将无权将文件移动到只读文件夹,因为它共享当前用户的权限,而当前用户不能访问该文件夹。
起初,我查看了一个 Windows 服务,但认为与它进行通信设置起来太痛苦了。因此,我正在使用 WCF 服务,但是虽然服务设置有效,但拥有一个只有一种方法“MoveFile”的服务似乎有点浪费......应用程序(和用户)仍然可以从文件夹中读取,只是不写它。
将文件移动到 .NET 中的只读文件夹是否有更好的解决方案?例如,是否可以在将文件移动到只读文件夹时让应用程序的一部分作为单独的用户运行?