gpt4 book ai didi

asp.net - 你如何在 ASP.Net 中实现字段级安全?

转载 作者:行者123 更新时间:2023-12-04 18:00:04 25 4
gpt4 key购买 nike

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

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

最佳答案

我可能会存储每个字段的详细信息,然后是可以编辑它们的角色和状态,然后就这样做。

系统的规则是什么?基本上,真的有 300 种可能的条件吗?或者真的某些字段只能在某些状态下编辑,然后只有某些角色可以编辑这些字段?还是某些字段也可用于某些角色?

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

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

  • 字段
  • 角色
  • 状态

  • 然后是两个链接表:
  • Field.Id 和 Role.Id
  • Field.Id 和 Status.Id

  • 然后对于任何给定的订单和用户,您可以找到哪些字段可针对订单的当前状态和用户角色进行编辑,并在您处理这些字段时适本地设置访问权限 - 但是您设置了控件 - 或者基于动态生成它们在您返回的集合上,或静态地在页面上。

    如果您遇到 Role 可以覆盖 Status 的问题,您还可以在 Field/Role 表中存储一个 bool 值,指示无论状态如何,该字段是否都应该可用。

    关于asp.net - 你如何在 ASP.Net 中实现字段级安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/450160/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com