我正忙于一个项目,您可以在该项目中从门户(ASP.NET 网站)管理共享驱动器的文件夹权限。有没有什么快速的方法可以在文件夹结构中找到用户的特定权限?我在文件服务器上运行了一个 C#.NET 服务。
这是我尝试存档的内容:
文件夹结构:
RootFolder -> TestUser 具有特殊权限,因此用户可以导航到 Folder1
-> 文件夹 1 -> TestUser 已读取(本地)
-> 文件夹 1.1 -> TestUser 已读取(继承)
-> 文件夹 1.1.1 -> TestUser 已阅读(本地)
现在我从文件夹 1 中删除了 TestUser,但是当发生这种情况时,我需要知道 TestUser 是否对结构中某个位置的文件夹具有权限,如果是这种情况,我需要为文件夹 1 和文件夹 1.1 提供特殊权限,以便用户可以导航到文件夹 1.1.1。
我在数据库中拥有完整的文件夹结构和权限,但只有读/写权限而不是特殊权限(授予用户查看文件夹的权限,以便他/她可以导航到具有读/写权限的文件夹)。现在,如果我可以在文件夹结构中进行快速搜索,那就太好了,看看用户是否有一些权限,这样我就可以为用户清理/添加特殊权限(这样用户就可以导航到他/她读过的所有文件夹/写权限)。
我尝试使用 Directory.GetDirectories(fullPath) 遍历文件夹结构,然后为每个目录使用 dir.GetAccessRules() 方法,但是对于大文件夹结构(10.000 个文件夹),这非常慢。
我希望问题很清楚,任何建议都将不胜感激!