通过学习我掌握了两种控制方法,实现了对于网站的匿名访问控制,一个是通过IIS实现,另一个是通过ASP.NET实现。个人感觉两种基本上可以实现的功能没有什么差别,不过通过ASP.NET实现的更易于管理和维护。 对于通过IIS的实现都比较清楚,可以对文件夹或单个文件(页面)设置访问权限,IIS提供了“目录安全性”和“文件安全性”的设置方法。并可以通过直接设置不同访问人的权限。其中就提供了匿名访问的控制方法,这里不再细说。 ASP.NET控制方法: 首先介绍例子实现的效果,一个网站登陆以后可以将用户信息保存在一个cookie中,并标识用户是通过身份验证的,在访问其他页面的时候直接对用户的身份是否通过验证进行判断,如果通过即可继续访问页面,如果是一个未通过验证的匿名访问用户(即未登录用户)则将跳转到登陆页面提示用户登录。设置其中一个用户注册页面为可以匿名访问,因为业务逻辑上只有允许注册才能登陆。 在登陆页面还是先对用户的用户名和密码进行验证,至于使用与数据库比对的方法还是到AD中验证等都可以,然后通过以下的方法将当前用户在cookie中标识为通过验证的用户,并跳转到用户跳转到登陆页之前请求的页面。 FormsAuthentication.RedirectFromLoginPage(userName,createPersistentCookie); 在用户直接请求的页面上我们使用如下的方法来验证用户。 Context.User.Identity.IsAuthenticated Context:获取与该页关联的 System.Web.HttpContext 对象 User:为当前 HTTP 请求获取或设置安全信息 Identity:获取当前用户的标识 IsAuthenticated:获取一个bool值,该值指示是否验证了用户 然后我们在Web.config中进行安全设置。 <authentication mode=”Forms”> <forms loginUrl=”Login.aspx”></forms> </authentication> “Forms” 您为用户提供一个输入凭据的自定义窗体(Web 页),然后在您的应用程序中验证他们的身份。用户凭据标记存储在 Cookie 中。 <authorization> <deny users=”?” /> </authorization> deny表示禁止,users=”?”表示匿名用户 <location path=”NewUser.aspx”> <system.web> <authorization> <allow users=”*” /> </authorization> </system.web> </location> 表示新用户注册页面NewUser.aspx,可以允许任何人访问。 这样就实现了对于匿名用户的访问控制。 例子: 下载http://bear-study-hard.cnblogs.com/Files/Bear-Study-Hard/UserAuthentication.rar http://bear-study-hard.cnblogs.com/archive/2006/05/31/414134.html
asp.net实现匿名访问控制_asp.net技巧
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » asp.net实现匿名访问控制_asp.net技巧
相关推荐
-      对.net framework 反射的反思_asp.net技巧
-      .net3.5和vs2008中的asp.net ajax_asp.net技巧
-      使用asp.net ajax框架扩展html map控件_asp.net技巧
-      asp.net应用程序资源访问安全模型_asp.net技巧
-      photoshop初学者轻松绘制螺旋漩涡特效_photoshop教程
-      photoshop通道结合图层模式抠狗尾巴草_photoshop教程
-      web.config详解+asp.net优化_asp.net技巧
-      asp.net中多彩下拉框的实现_asp.net技巧