繁体   English   中英

如何在没有web.config的情况下限制对文件夹中所有文件的访问

[英]how can I restrict access to all files in a folder without web.config

我需要限制对某些人访问我的管理员文件夹。 那些没有身份验证票证的人应该被重定向到“不允许的页面”。 如何识别管理员文件夹中的所有页面。 我到目前为止但是可以吗?

If url.Contains("/admin") Then

'如果验证票不正确那么

        `Response.Redirect("~/notallowed_admin.aspx")`

End If

而不是,我不能使用我的web.config来解决这个特殊问题。

非常感谢

您应该将安全检查放到Global.asax

此外,用regexp更精确的匹配来替换你的条件是明智的,以避免偶尔的不匹配。

    protected override void Application_BeginRequest(Object sender, EventArgs e) {
        if (Regex.IsMatch(Request.Url.ToString(),@".*/system\.aspx/admin.*\.aspx",RegexOptions.IgnoreCase)) {
            Response.Redirect("~/AdminSecurityCheck.aspx");
            return;
        }
        .......
    }

If url.contains("/admin")在大多数情况下应该足够了。 然而,大多数程序员会发现它有点像KLUDGE。

您还可以编写一个抽象类来继承Page类,该类包含检查授权然后重定向的代码。 然后,您可以为admin文件夹中的所有代码隐藏文件声明类以继承该类。

我相信是的,你想要做的事情是可能的,尽管你所做的任何事情都会从.net的观点来看,因为web.config是MS提供的用于指定授权的方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM