当前位置:  开发笔记 > 后端 > 正文

如何在ASP.Net中实现现场级安全性?

如何解决《如何在ASP.Net中实现现场级安全性?》经验,为你挑选了1个好方法。

我有一个包含20个字段的.aspx表单,必须根据用户角色和订单记录的状态禁用.目前,该应用程序有5个角色和3个状态,因此我有300个不同的可能条件,我必须考虑.

我的第一个想法是将每个排列存储在一个表中,然后通过循环遍历字段来加载页面时设置字段.有没有更好的办法?请注意,我使用的是.Net 2.0而不是MVC.



1> Zhaph - Ben ..:

我可能会存储每个字段的详细信息,然后是可以编辑它们的角色和状态,并以这种方式执行.

该系统有哪些规则?基本上,真的有300种可能的条件吗?或者是否真的某些字段只能针对特定状态进行编辑,然后只有某些角色可以编辑这些字段?或者某些字段是否也适用于某些角色?

如果它更多的是前者我可能会有这样的事情:

三个主表(如果添加字段,角色或状态,则可以轻松扩展):

字段

角色

状态

然后是两个链接表:

Field.Id和Role.Id

Field.Id和Status.Id

然后,对于任何给定的订单和用户,您可以找到哪些字段可以编辑订单的当前状态和用户角色,并且在您处理字段时适当地设置访问权限 - 但是您设置控件 - 要么动态生成它们在您收集的集合上,或静态地在页面上.

如果您遇到角色可以覆盖状态的问题,您还可以在字段/角色表中存储一个布尔值,指示无论状态如何,该字段都应该是可用的.

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有