首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 软件时空 > 软件相关 > NETCF开发之移动Web网站安全性
【标  题】:NETCF开发之移动Web网站安全性
【关键字】:NETCF,Web
【来  源】:http://blog.csdn.net/yanyouning/archive/2006/08/01/1006587.aspx

NETCF开发之移动Web网站安全性

1.1    移动Web网站安全性

ASP.NET中的安全性由三个不同的方面组成:身份验证、授权和加密。.NET FrameworkInternet信息服务(IIS)一起提供这方面的支持,以保护Web应用程序。要编写安全的Web应用程序,了解配置选择将影响应用程序的安全性是很重要的。ASP.NET依赖于IISASP.NET的基础结构来保护应用程序。

.NET Framework支持集成Windows身份验证与授权、Microsoft Passport身份验证和窗体身份验证。但是由于各种原因,目前只有窗体身份验证方式适合用于移动设备。本节介绍适合移动设备的窗体身份验证方案,以及为确保各种设备可以访问应用程序所必须采取的步骤。

1.1.1    窗体身份验证

ASP.NET提供的窗体身份验证支持在应用程序中创建登录页并管理身份验证,并且不需要使用计算机上或域中的单独帐户。窗体身份验证的基本思路是在每个请求中检查身份验证Cookie。如果未找到CookieCookie无效或Cookie过期,则用户被重定向到登录页(默认情况下,该页为login.aspx)。提供窗体身份验证的登录页与任何.aspx页相同。该登录页上有一个供用户提交凭据的窗体。当用户发送要求的数据时,将在代码中执行身份验证检查,然后用户将被重定向到当初请求的页,并且记录该Cookie

某些设备和设备网关在执行重定向时不记录Cookie。在这种情况下,再次发送原始请求时意味不带所需的身份验证Cookie,因此用户将被再次重定向到登录页。对于不支持Cookie的设备,解决方法是将身份验证添加到URL的查询字符串中。

为了演示窗体身份验证,需要修改web.config文件,并且添加默认登录页面login.aspx和一个测试登录的页面FormsAuth.aspx。在web.config文件需要添加以下配置:

 

<authentication mode="Forms" />

<authorization>

<deny users="?" />

</authorization>

 

login.aspx页面的窗体设计如图18-15所示,对应的login.aspx.vb文件代码如清单18-21所示。FormsAuth.aspx页面对应的FormsAuth.aspx.vb文件代码如清单18-22所示。

 

18-15login.aspx窗体设计

 

清单18-21login.aspx.vb

Partial Class WebSecurity

    Inherits System.Web.UI.MobileControls.MobilePage

 

    Protected Sub cmdLogin_Click(ByVal sender As Object, _

ByVal e As System.EventArgs) Handles cmdLogin.Click

        If UserEmail.Text = "software2002" And UserPass.Text = "123456" Then

            Mobile.MobileFormsAuthentication.RedirectFromLoginPage(UserEmail.Text, False)

        Else

            message.Visible = True

            message.Text = "登录用户名和密码不正确"

        End If

    End Sub

End Class

 

18-16FormsAuth.aspx窗体设计

 

清单18-22FormsAuth.aspx.vb

Partial Class FormsAuth

    Inherits System.Web.UI.MobileControls.MobilePage

    Protected Sub formA_Load(ByVal sender As Object, _

ByVal e As System.EventArgs) Handles formA.Load

        label1.Text = String.Format("Welcome {0}", User.Identity.Name)

    End Sub

    Protected Sub cmdLoginOut_Click(ByVal sender As Object, _

ByVal e As System.EventArgs) Handles cmdLoginOut.Click

        Mobile.MobileFormsAuthentication.SignOut()

        ActiveForm = formB

    End Sub

End Class

 

清单18-21中演示了MobileFormsAuthentication的用法。在该示例中验证以software2002为用户名,以123456为密码的用户登录。清单18-22中的System.Web.Mobile.MobileFormsAuthenticationSignOut方法,用于清除Cookie或额外的查询字符串参数。 
SQL语句判断某表是否存在:【上一篇】
收尸,又见收尸:【下一篇】
【相关文章】
  • Webwork2+Spring+Hibernate体验
  • Google Web Toolkit (GWT)入门
  • Spring+EasyJWeb+iBatis版j2ee在线购物jpetstore系统源码
  • 消息中间件及WebSphere MQ入门
  • 未完成--web server
  • 一个软件搞定web网页不能保存的问题
  • IEEE 802 Work Groups - Public Web Sites
  • WEB标准略解(一):DOCTYPE、名字空间、语言编码、样式表等
  • WEB标准略解(二):XHTML代码规范、CSS等
  • 自定义Web控件(简单的Repeater数据绑定)
  • 【随机文章】
  • PB: Windows 状态条控件在 PB 中的运用
  • XULRunner 的 "Hello world"
  • A Quick Way to Copy DataRow
  • 注意!买二手本本后要做四件事
  • 毕业设计_postgreSQL {编译前的环境构建[就是下载软件一顿安装][*_*] }
  • 第11章 终端I/O
  • 磁盘阵列柜的常用操作
  • Excel 排 序
  • 检测内存中的 Soft-Ice又一法
  • FreeBSD Apache+Mysql+Php4的安装
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.