• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

asp.net实现匿名访问控制_asp.net技巧

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

asp.net实现匿名访问控制_asp.net技巧
www.diybl.com    时间 : 2010-07-22  作者:网络   编辑:huyang629 点击:  15 [ 评论 ]
-
-
通过学习我掌控了两种控制方法,实现了对于网站的匿名访问控制,一个是通过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,能够允许任何人访问。

这样就实现了对于匿名用户的访问控制。

文章出处:飞诺网(www.diybl.com):http://www.diybl.com/course/4_webprogram/asp.net/asp_netshl/20100722/488539.html


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
asp.net认证与授权发布时间:2022-07-10
下一篇:
模拟Asp.Net Forums 2.0 数据提供者类发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap