2011-12-01 34 views
0

我们在ASP.net(4.0)Web应用程序的根文件夹中有一个名为Admin的目录。ASP.net不允许直接访问管理目录

我创建了一个路线管理员/ Dashboard.aspx

〜/管理者/仪表板/

,它工作正常。

我很好奇,如果我能禁止运行通过直接访问该文件,甚至到了管理员。

〜/管理/ Dashboard.aspx

是否可行?

请帮助。

回答

1

你可以用一些web.config的设置像下面

<location path="~/Admin/Dashboard.aspx"> 
<system.web> 
<authorization> 
<allow roles="admin"/> 
<deny users="*"/> 
</authorization> 
</system.web> 
</location> 
+0

我想禁止通过直接访问完全访问文件。这是否伤害了路线? – Nancy

+0

@Nancy您是否使用MVC架构? 如果是的话,看看这个链接http://stackoverflow.com/questions/1370315/asp-net-mvc-restricting-access-using-url 如果没有然后http://stackoverflow.com/questions/405394/ using-routing-without-mvc-authentication-form –

+0

我没有使用MVC。 – Nancy

0

Admin文件夹中创建一个本地web.config并创建配置文件中的授权规则做:

<configuration> 
    <system.web> 
     <allow ... 
     <deny ... 
    </system.web> 
</configuration> 

其中allowdeny应该调整以满足您的需求。特别是,deny users="*"将禁止所有人访问您的页面。