在Whidbey中实现Provider

时间:2010-03-06 20:03:10  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:写什么代码就能够实现用户验证和角色管理功能。关于这些控件和配置工具的具体使用,可以参考这篇文章:使用更精简的代码保证 ASP.NET 应用程序的安全            但是在PDC Preview版本的Whidbey中,这个配置工具的功能还不是很完善。从我使用的情况来看,它目前还只能创建和连接自己的Demo用的Access数据库,不能连接...
  正文:ASP/ target=_blank class=infotextkey>asp.Net 2.0(codename Whidbey)通过Provider模式为用户验证、角色管理等方面提供了非常强大易用的框架模型。Whidbey中提供了一个Asp.Net configuration工具,通过它可以非常容易地配置用户信息数据库,管理角色等等,再与新加入的Security控件配合,几乎不用写什么代码就能够实现用户验证和角色管理功能。关于这些控件和配置工具的具体使用,可以参考这篇文章:使用更精简的代码保证 ASP.NET 应用程序的安全
  
  
  
  但是在PDC Preview版本的Whidbey中,这个配置工具的功能还不是很完善。从我使用的情况来看,它目前还只能创建和连接自己的Demo用的Access数据库,不能连接SQL Server数据库进行扩展。因此,为了能够连接SQL Server,我们必须提供我们自己的Providers。这里以连接IBuySpy的Portal数据库为例来说明如何实现一个Membership Provider。
  
  
  
  为了搞清楚如何实现我们自己的Membership Provider,有必要先看看Whidbey默认使用的Membership Provider是如何做的。在machine.config配置文件中,Whidbey使用类似下面这样的配置实现:
  
  
  
  <membership defaultProvider="AspNetAccessProvider" userIsOnlineTimeWindow="15" >
  
   <providers>
  
   <add name="AspNetSqlProvider"
  
   type="System.Web.Security.SqlMembershipProvider, System.Web, Version=1.2.3400.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
  
   connectionStringName="LocalSqlServer"
  
   enablePasswordRetrieval="false"
  
   enablePasswordReset="true"
  
   requiresQuestionAndAnswer="false"
  
   applicationName="/"
  
   requiresUniqueEmail="false"
  
   passwordFormat="Hashed"
  
   description="Stores and retrieves membership data from the local Microsoft SQL Server database"
  
   />
  
  
  
   <add name="AspNetAccessProvider"
  
   type="System.Web.Security.AccessMembershipProvider, System.Web, Version=1.2.3400.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
  
   connectionStringName="AccessFileName"
  
   enablePasswordRetrieval="false"
  
   enablePasswordReset="true"
  
   requiresQuestionAndAnswer="false"
  
   applicationName="/"
  
   requiresUniqueEmail="false"
  
   passwordFormat="Hashed"
  
   description="Stores and retrieves membership data from the local Microsoft Access database file"
  
   />
  
   </providers>
  
  </membership>
  
  
  
  关于这段配置文件的更详细解说,可以参考《A First Look at ASP.NET v. 2.0》。
  
  
  
  可以看出,Whidbey默认使用SqlMembershipProvider或者AccessMembershipProvider来进行用户验证和管理。这两个Provider实现了IProvider和IMembershipProvider接口,实际上这两个接口也是每个MembershipProvider所必需的,其中IProvider负责Provider的初始化,而IMembershipProvider则实现MembershipProvider的主要功能。它们的定义如下:
  
  
  
  namespace System.Configuration.Provider "在Whidbey中实现Provider"由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/aspnet/13081.html


关键字:

关于《在Whidbey中实现Provider》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td