我正在使用VS 2010与.NET 4.0和SQL 2008成员资格/角色提供程序。我的目标是只允许那些已登录并具有“成员”角色的用户访问名为“members”(及其子目录)的文件夹。 “members”文件夹中没有任何asp页面,只有jpegs等文件。在我的开发机器上,我已经配置了我的根web.config文件,如下所示:
<authentication mode="Forms">
<forms loginUrl="default.aspx" />
</authentication>
</system.web>
<location path="members">
<system.web>
<authorization>
<allow roles="member"/>
<deny users="?"/>
<allow users="*"/>
</authorization>
</system.web>
这一切在我的开发机器上运行良好。但是,当我发布到我的生产服务器时它不起作用...所有用户都可以访问文件夹“members”而不仅仅是以“成员”角色登录的用户。
我的生产服务器正在运行IIS 7.我认为问题出在那里。我在IIS管理器中为“成员”添加了授权规则,以允许访问和拒绝匿名用户。这没什么区别。
有什么想法吗? 谢谢......鲍勃 PS:我建议称他们为鼠标用户,我讨厌匿名拼写。
答案 0 :(得分:0)
已修复,IIS中的角色不正确。