Tag: 访问控制

自定义授权(权限)ASP.NET MVC

在我的应用程序中,角色具有多个权限。 我希望用户能够访问依赖于权限的操作,而不是角色。 所以假设: 管理员有perm1,perm2,perm3, SuperAdmin拥有管理员拥有的所有权限+ perm4和perm5。 此外,还有一些小家伙也有perm1,perm3,perm6,perm7。 我想做以下事情:我想让那些假设perm3或perm4的人可以访问。 这两个权限来自两个不同的角色。 但是除了perm3 Admin有perm1和perm2之外,这个动作也可以由具有perm3的小家伙访问(不一定是admin或superadmin)。 所以你明白我的意思吧? 我想在ASP.NET MVC 4中实现这一点。所以我想我需要创建自己的AuthorizeAttribute ,我自己的IIdentity并在global.asax中编写一些方法。 ASP.NET中还有一个成员资格我是否需要触摸它? 我不知道如何把所有的东西放在一起。 谁能帮我吗?

ASP.NET MVC中基于文档的安全性

我已经了解ASP.NET MVC中的用户和基于角色的安全性。 但现在我需要一些更精细的东西。 假设我有一份文档列表,其中一些是用户授权的,有些则不是。 每个文档在数据库的文档表中都有相应的记录。 如果用户具有安全访问权限,则可以下载文档以供查看。 如果您有角色,也可以添加文档。 每个文档都有一个URL,每个文档列表都有一个URL。 我想安全修整列表,以便用户只能看到他授权的那些文档。 但是我还需要对这些列表和文档的URL请求进行身份validation,因为没有什么可以阻止用户为他们不再有权访问的文档添加书签,或者只是在浏览器中键入URL。 内置的基于角色的安全模型是否适用于此,或者我是否需要创建单独的基于表的安全性? 我可以将安全性放在我的存储库中,以便返回的记录已被修剪,或者它应该是控制器的一部分吗? 我是否需要安全属性来validation控制器请求,或者我应该将它作为前几行代码放在控制器方法中?

如何正确打开FileStream以与XDocument一起使用

我想使用Linq2XML将一些节点附加到xml文档。 有问题的文件正由其他进程使用,他们应该能够在我更新文件时读取该文件。 所以我提出了这个解决方案,这显然不是正确的方法(方法doc.Save()失败并说另一个进程正在使用该文件): using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.Read)) { doc = XDocument.Load(new StreamReader(fs)); doc.Root.Add(entry); doc.Save(filename); fs.Close(); } 任何帮助都非常有用。