当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net 特定目录form验证

ASP.NET
Visual Studio.Net 内幕(7)
.Net 2.0 原汁原味读取注册表
ASP.NET 2.0中预设的cookie
ASP.NET:一段比较经典的多线程学习代码
ASP.NET2.0服务器控件之自定义状态管理
Asp.net给站点某目录增加Aspnet用户
ASP.NET技巧:请求网址并解析返回的html
在Asp.net用C#建立动态Excel
ASP.NET2.0:页面中链入的CSS、js文件带中文时需注意
ASP.NET技巧:数据岛出到Excel最为简易的方法
第一次用.net2.0 LOGIN登陆控件的困惑和解决方法
在ASP.net中保存/取出图片入/从SQL数据库
ASP.NET技巧:做个DataList可分页的数据源
在.NET中利用委托实现窗体间通信
在.NET2.0中使用自定义事务操作
解决 ASP.NET中目录访问权限的问题
ASP.Net防止刷新自动触发事件的解决方案
白刃之战:PHP vs. ASP.NET(节选)-架构比较
C#中使用SendMessage
提取HTML代码中文字的C#函数

ASP.NET 中的 asp.net 特定目录form验证


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 106 ::
收藏到网摘: n/a

前几听我的一个同事说form验证,我也只是听说过,说是一个很简单的验证,最近也在做一个小型的企业网站(因为刚进公司不久,老板就给了单独一个小项目练练手)。 就想将这个form验证运用到我作的网站上去,这样也可以增强一点网站的基础安全性。
今天上午,来到公司开始上网查找资料,学习form验证,因为我做的那个网站框架已经设计好了,需要对后台进行验证,后台的所有文件是在一个admin文件夹下,也就是说,所谓的form验证就是对admin下的文件进行form验证。我上网找了一些资料,都只是说对根目录下面的文件或者文件夹进行验证,也看到了可以运用<location path=”1111”>来进行排除,我就反其道而行之。
复制代码 代码如下:

<authentication mode="Forms">
<forms loginUrl="aspx/Default.aspx" defaultUrl="Default3.aspx"></forms>
</authentication>
<authorization >
<deny users="*"/>
</authorization>
<location path="admin">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>

这是我进行的设置,我看到不管是打开那里的网页都要跳转到login.aspx上,我想是不是应该把他们分别进行设置,于是,就在admin目录中有新建了一个webconfig文件,进行配置,但是还是以上的结果,
我也不知道是哪里的原因,上网找资料,没有发现,找高手问,他们也是说了用以上的方法就可以,但是我这里就是不行。还以为是我的这个项目就问题,就新建了一个项目,首先进行测试,后来看见
复制代码 代码如下:

<authorization >
<allow roles=””>
<deny users="*"/>
</authorization>

其中有一个allow 标签,但是他中间roles是用来对身份进行验证的,我这里用不到,偶尔之间看到了 allow标签下有一个users属性,就试着对它进行测试。结果OK!
后来的演变成了
复制代码 代码如下:

<system.web>
<authentication mode="Forms">
<forms loginUrl="aspx/Default.aspx" defaultUrl="Default3.aspx"></forms>
</authentication>
<authorization >
<allow users="*"/>
</authorization>
</system.web>
<location path="aspx">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>

这样就完成了对特定目录的一个验证,这是忙了一上午的结晶,写下来做一个记录,防止以后忘记!
其实我也就是加了<allow users="*">这样的一句,问题就解决了!这句话的意思是允许所有用户进行操作。deny="*"是什么意思呢?