大家好,我有一个问题,我会尽可能好地描述。 我的项目位于我的服务器上的文件夹中,url的路径就像
www.domain.com \ project现在我想要实现的是只有用户登录时才能访问\ project目录。场景将是用户打开网址www.domain.com并且他看到登录屏幕,如果他登录路径\项目将是可访问的,如果他没有并尝试去转到direcoty或目录中的任何文件它应该给他一个错误并将他重定向回登录屏幕。我在我的项目中使用MVC3,但我可以在asp.net web表单中编写登录屏幕。 我还希望授权基于db的用户登录表,因此当用户登录时,它会根据表中的信息进行验证。我不是根据登录直接访问url来寻找角色或权限。如果有人能够展示如何实现这一目标的示例或代码示例,我将不胜感激。
答案 0 :(得分:2)
在你的web.config中试试这个:
<system.web>
... other stuff
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
... other stuff
</system.web>
... more stuff
// secure only one directory [goes at the same level as your standard <system.web>]
<location Path="Project">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>