我得到的错误是
It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. C:\Users\Jangid\Downloads\TestWebSite1\TestWebSite1\Backup\TestWebSite1\Web.config 26
我使用ASP.Net 2.0在服务器上托管了一个网站,我在根文件夹中有一个web.config,在Admin文件夹中也有一个,但是admin文件夹不是虚拟目录,我不想创建
<authentication mode="Forms">
<forms loginUrl="Admin/Login.aspx" name=".ASPXFORMSAUTH"/>
</authentication>
<authorization>
<allow roles="Admins"/>
<deny users="*"/>
<deny users="?"/>
</authorization>
但是对于Admin文件夹的身份验证和登录工作,我使用了ASP.Net登录控制,但这个错误阻止我向前移动。
还请任何人给我一个学习ASP.Net登录控制的链接,就像访问Admin文件夹的用户应该通过角色管理员进行身份验证, 如何创建角色并在服务器上分配给用户
答案 0 :(得分:3)
<system.web>
<authentication mode="Forms">
<forms name="cokiename"
loginUrl="./protectedFolder/login.aspx"
protection="All"
timeout="60"
defaultUrl="./protectedFolder/protectedPafe.aspx"/>
</authentication>
</system.web>
这应该在你的主web.config文件中
以下进入子目录config
<configuration>
<system.web>
<customErrors mode="Off"/>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</configuration>
protected文件夹包含登录页面,受保护页面和web.config
答案 1 :(得分:1)
您需要在主web.config中拥有身份验证标记。 不需要管理员的单独登录页面。 您需要在您的会员数据库中创建管理员角色。(可以使用asp.net网站管理员) 这是您使用成员资格数据库的方式 http://revenmerchantservices.com/page/ASpnet-20-step-by-step-Membership-Provider-.aspx http://msdn.microsoft.com/en-us/library/ms178329.aspx
这是基于角色的安全性,您可以使用它来保护您的目录(虚拟) http://www.codeproject.com/KB/web-security/formsroleauth.aspx