<authentication mode="Forms">
<forms loginUrl="Login.aspx" name=".ASPXAUTH"></forms>
</authentication>
设置了所有页面必须登陆才能访问:
<authorization>
<deny users="?"/>
</authorization>
因为登陆界面上的图片也一同禁止访问了,就在configuration节点下添加了如下内容:
<location path="images">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
项目原先是使用的session来验证的,改成forms身份验证后,一些后台处理页面(ashx)在登陆超时的时候访问会跳转到login.aspx,导致前台js出现错误.我想取消ashx类型文件的身份验证,加了这个代码:
<location path="*.ashx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
结果提示:<location> 路径属性必须为相对虚拟路径。它不能包含“?”、“:”、“\”、“*”、“"”、“<”、“>”或“|”中的任何一个。
看来这条路行不通了。
问下大家,我想取消所有ashx页面、保留其它页面的身份验证(目前各个ashx是单独进行的验证,方便在未登录的时候显示提示信息),应该如何做,或者还有没有其它更好的办法?
4 个解决方案
#1
可以把允许的文件放到一个文件夹当中!操作这个文件夹的权限!
#2
关键是我在原来的系统上修改的,各个文件夹下都有ashx类型的页面,这样移动工作量好大 。能不能有稍微简单一点的办法。
#3
自己顶一下。。
#4
#1
我在web.config文件中配置为了使用forms身份验证:
<authentication mode="Forms">
<forms loginUrl="Login.aspx" name=".ASPXAUTH"></forms>
</authentication>
设置了所有页面必须登陆才能访问:
<authorization>
<deny users="?"/>
</authorization>
因为登陆界面上的图片也一同禁止访问了,就在configuration节点下添加了如下内容:
<location path="images">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
项目原先是使用的session来验证的,改成forms身份验证后,一些后台处理页面(ashx)在登陆超时的时候访问会跳转到login.aspx,导致前台js出现错误.我想取消ashx类型文件的身份验证,加了这个代码:
<location path="*.ashx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
结果提示:<location> 路径属性必须为相对虚拟路径。它不能包含“?”、“:”、“\”、“*”、“"”、“<”、“>”或“|”中的任何一个。
看来这条路行不通了。
问下大家,我想取消所有ashx页面、保留其它页面的身份验证(目前各个ashx是单独进行的验证,方便在未登录的时候显示提示信息),应该如何做,或者还有没有其它更好的办法?
可以把允许的文件放到一个文件夹当中!操作这个文件夹的权限!
#2
我在web.config文件中配置为了使用forms身份验证:
<authentication mode="Forms">
<forms loginUrl="Login.aspx" name=".ASPXAUTH"></forms>
</authentication>
设置了所有页面必须登陆才能访问:
<authorization>
<deny users="?"/>
</authorization>
因为登陆界面上的图片也一同禁止访问了,就在configuration节点下添加了如下内容:
<location path="images">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
项目原先是使用的session来验证的,改成forms身份验证后,一些后台处理页面(ashx)在登陆超时的时候访问会跳转到login.aspx,导致前台js出现错误.我想取消ashx类型文件的身份验证,加了这个代码:
<location path="*.ashx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
结果提示:<location> 路径属性必须为相对虚拟路径。它不能包含“?”、“:”、“\”、“*”、“"”、“<”、“>”或“|”中的任何一个。
看来这条路行不通了。
问下大家,我想取消所有ashx页面、保留其它页面的身份验证(目前各个ashx是单独进行的验证,方便在未登录的时候显示提示信息),应该如何做,或者还有没有其它更好的办法?
可以把允许的文件放到一个文件夹当中!操作这个文件夹的权限!
关键是我在原来的系统上修改的,各个文件夹下都有ashx类型的页面,这样移动工作量好大 。能不能有稍微简单一点的办法。
#3
自己顶一下。。