ASP.. NET Web Forms - Web Forms的安全性

本文关键字:Web Forms 安全性 ASP NET | 更新日期: 2023-09-27 18:18:11

简单但难以解决的Web表单问题。

我在我的web表单应用程序上强制了基于角色的访问,但我想根据WebForm或URL定制访问,如

/Administration/* --> only admins/Users/* --> admins和Users/* --> anonymous also

关于如何在web.config上做到这一点的任何提示?

谢谢你并致以最良好的祝愿

ASP.. NET Web Forms - Web Forms的安全性

<location path=”Admin”>
                <authorization>
                                <allow roles=”Admin” /> 
                                <deny users=”*” />
                <deny roles=”*” /> 
                </authorization>
</location>

或看这里:http://support.microsoft.com/kb/316871或http://weblogs.asp.net/gurusarkar/archive/2008/09/29/setting-authorization-rules-for-a-particular-page-or-folder-in-web-config.aspx

最简单的方法是在每个子文件夹中创建本地web.config文件。这样的本地web.config将只包含授权信息,以便内置的UriAuthorizationModule可以为您完成其余的工作。

例如,在/Admin文件夹中创建一个带有

web.config
<configuration>
 <system.web>
 <authorization>
   <allow roles="Admin" />
   <deny users="*" />
 </authorization>
 </system.web>
</configuration>

因此只给管理员用户访问权限。对其他子文件夹应用相同的操作,您就完成了—条件是存在角色管理器并提供有关用户角色的信息。

在每个子文件夹中创建仅包含授权数据的本地web.config可以为您提供对授权的细粒度控制。另一种方法是在主web.config中提供此信息,但它很快就会因为引用不同位置的许多授权节点而过载。