asp.net 2.0中,新增了许多新的功能和控件。其中,新增的登陆控件可谓使得web应用的设计更加得心应手。什么是登陆控件呢?就是我们平常在web应用中经常要用到的用户注册,登陆,忘记密码,登陆后根据权限的不同而显示不同的页面等功能,现在在asp.net 2.0中都已经可以由提供的控件来实现了。asp.net 2.0中的登陆控件比较多,封装了大部分web应用中要实现系统登陆的系列功能,涉及到很多方面,本文将简单介绍一下它们的主要功能。
首先,asp.net 2.0中,为了更方便创建和管理用户,以及对 web 应用程序中的页进行密码保护,引进了新的框架membership。新的框架包含用于处理身份验证和授权的新增功能,能够同时满足 web 站点管理员和开发人员的需要。web 站点管理员可以利用新的 web 站点管理工具来创建新的用户和角色,以及控制对 web 应用程序中页面的访问。web 站点管理工具是一组预先编写的 asp.net页,不具备编程技巧的用户可以使用它们来配置 web 应用程序。利用membership api,编程人员可以很方便地使用拖拉控件的方法,再加以少量的代码,就可以完全实现对用户,角色权限等的管理,还可以自定义做扩充。
其中,membership框架中包含了两个默认的用户验证程序:默认的 accessmembershipprovider以及 sqlmembershipprovider。如果希望在 microsoft sql server 数据库中存储成员身份信息,则可以将应用程序配置为使用 sqlmembershipprovider,如果要使用access数据库,则使用accessmembershipprovider。还可以创建自定义成员身份提供程序。例如,如果需要在 xml 文件、或 oracle 数据库中存储成员身份信息,希望创建自己的成员身份提供程序,则需要实现抽象类membershipprovider 的所有方法和属性。本文中,将以access数据库为例子做说明,所以使用accessmembershipprovider。
我们可以使用asp.net 2.0自带的web站点安全配置工具,就可以无需编程,在系统向导的带领下,自动建立一个存储用户角色身份的数据库了。比如,我们现在需要建立一个access的数据库,里面存储用户名,密码,密码提示问题,用户email等资料,则可以通过web站点安全配置工具来实现。步骤如下:
1)先使用visual studio express 2005建立一个web站点,命名为dorknozzle,使用vb.net语言,之后,我们点选visual studio express中的website菜单中的asp.net configuration,这时会弹出一个新的页面窗口,其中选择security选项,如下图:
2) 从上图可以看到,安全设置选项被分为三部分:用户,角色和规则。由于我们是第一次配置,选择“to configure security step by step, use the security setup wizard”,在出现的界面点“next”进入下一步。
在第二步中,你可以选择验证的类型,比如你的站点是发布在inte.net还是intr.net,再点next进入下一步,系统会提示目前是使用as.netaccessprovider ,继续点下一步,系统会询问是否创建基于角色的应用,如果应用中要用到角色,就必须将那个单选框打勾,本文不选择该项,继续下一步。
3) 此时,系统会询问我们输入创建用户的信息,如下图,比如输入用户名,密码,email等信息。在输入后,点next进入下一步。
4)系统会允许你对某一用户进行有关规则的详细设置,比如允许某一用户行驶或拒绝使用某角色等。本文将忽略不用,继续选next进下一步,此时,完成了系统的初步配置了。
此时,accessmembershipprovider会自动在当前工程的data目录下,创建一个as.netdb的access数据文件,打开它,会发现自动生成了相关的表格,比如有as.net_users表,存放用户的基本信息,as.net_membership表,存放用户加密的密码和其他信息。
在进行完上面的步骤后,下面我们开始认识并使用asp.net 2.0中的登陆控件。这些控件在工具箱的login选项组中,共有login, loginview, passwordrecovery, loginstatus, loginname, createuserwizard, changepassword 共7个,下面逐一介绍:
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器