限制某些页面 - 在每个页面上重定向?或者通过在网址中查看当前页面在母版页上?

时间:2011-02-06 19:15:28

标签: asp.net user-controls permissions master-pages

根据不同的用户模式,除非用户具有有效的会话密钥,否则用户不应访问某些页面。

在您的意见中 - 最好在母版页中列出可接受的页面,并检查当前页面是否对当前用户有效?或者在每个子页面上处理这个?

我正在考虑母版页,只想知道你的输入是什么。

由于

2 个答案:

答案 0 :(得分:1)

母版页或定义的基页是放置此类逻辑的最佳位置。这样做的原因是您将过滤逻辑放在一个地方。复制每个页面的cookie切割器代码将导致问题。

您还应该使此逻辑尽可能通用,并在数据库中存储将要更改的数据(您的页面列表,权限等)。当您想要添加页面时,这将最大限度地减少代码更改。

最后,您需要为未定义的页面定义某种默认行为。理想情况下,您将锁定没有权限数据的页面。这将确保您不会意外地允许访问需要限制的页面。

答案 1 :(得分:0)

我看到至少有两个案例:

  1. 如果您要重定向的所有页面都有一个母版页,请使用母版页。

  2. 如果有一个母版页但页面不相同且该母版页的所有页面都是重定向的,但只有部分页面,最好在当前页面上查看而不是在母版页上。

  3. 原因是如果你把它放在集合页面上,那么你需要抛出一个案例列表,然后检查你所在的巫婆页面中的母版页。这需要更多的时间和更多的内存,并且如果您创建页面,然后您更改它等,则会产生更多的错误风险。在母版页上也难以知道哪些页面是孩子并识别它们。

    在当前页面上,您只需要检查用户是否可以看到它。