日期:2014-05-18  浏览次数:20398 次

IIS与ASP.NET访问权限问题
由于对用户访问权限的整个过程不是很理解,我做了一个实验

运行环境XP(sp2)+IIs5.1+asp.net2.0

我在IIS中建立了一个虚拟目录,然后对这个虚拟目录进行了安全性设置:只勾选了匿名访问,取消了集成Windows身份验证和基本身份验证(以明文形式发送密码)
然后对这个虚拟目录所映射的实际文件夹进行安全性设置:添加了Internet来宾用户IUSR_*****和ASPNET帐户

最后在应用程序的web.config添加了以下结点
 <authentication mode="Forms">
  <forms name="TEST" loginUrl="Default.aspx">
  <credentials >
  <user name="aaa" password="bbb"/>
  </credentials>
  </forms>
  </authentication>
   
  <authorization >
  <deny users="?"/>
  <deny users="*"/>
  </authorization>

整个应用程序只有Default.aspx这个页面,这个页面的内容是Hello Word.没有后台代码.

按照上面的配置,在<authorization >结点中我拒绝了所有用户访问这个页面,程序运行后应该不能进入到Default.aspx这个页面的,但实际上却显示了Hello Word,不知道为什么?

IIS中的匿名访问权限和Web.config中 <authorization >结点<allow users="?">有什么关系?



------解决方案--------------------
loginUrl="Default.aspx" 
你不是指定了登陆页面吗

------解决方案--------------------
Default.aspx是你的登陆页面..