Skip to main content
 首页 » 编程设计

c#之用于页面访问控制的 PrincipalPermission 与 web.config

2024年01月12日28mayingbao

我目前在 web.config 中拥有我的访问权限:

 <location path="Account"> 
    <system.web> 
      <authorization> 
        <allow users="?"/> 
      </authorization> 
    </system.web> 
 </location> 
 ... 

我不喜欢这个有两个原因:

  1. web.config 随着我的网站的建立变得一团糟
  2. 我不确定将网页访问规则与页面本身如此分开是否安全。毕竟,我每天大部分时间都在编辑 aspx/c# 文件而不是 web.config,所以事情往往会出错。
  3. 这是一个非常奇怪的...我刚刚添加了 ASP.NET4 路由,它改变了 URL。所以,突然间我的 web.config 权限不再有效!类似于上面的第 2 点。

我认为最好只使用 PrincipalPermission 作为每个 aspx 中涉及的类/c# 文件的安全属性。我的问题:

  • 这是由任何人完成的,还是一个坏主意?
  • 更重要的是...我的 PrincipalPermission 属性生成异常(好)但不会将用户重定向回登录页面(坏)。这可以修复吗?

请您参考如下方法:

我知道一个可能有用的技巧 - 如果将页面放在单独的文件夹中,则每个文件夹都可以有一个本地 web.config。不需要包含在全局 Web 配置中。 请参阅“配置设置范围”部分中表格的“ASP.NET 应用程序子目录”行 here .