Robin's Blog

记录 积累 学习 成长

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

    一个规范的系统应当有合理的用户管理模块,但这些内容有是非常繁琐而又枯燥的。.net 中 Membership 把用户和权限管理的工作简化。只要在 web.config 中配置好这些内容就可以很轻易的使用 ASP.NET 中的 Membership 和 Profile 了。

    很多人说 membership 保存的用户信息十分有限,而且几乎无法扩展。。。其实变通一下,使用 membership 配合 profile 就可以轻易的解决这个问题。思路是这样的,具体的内容就不说了。

    下面是配置好的 web.config 文件,建好 aspnetdb 数据库后适当的修改下面的连接字符串就可以使用了。


<configuration>

    
<!-- 数据库链接项 -->
    
<connectionStrings>
        
<add name="voptAspNetDB"
        connectionString
="Data Source=.;Initial Catalog=aspnetdb;Uid=sa;Pwd=123456;"
        providerName
="System.Data.SqlClient"
        
/>
 
</connectionStrings>
    
<system.web>
    
      
<!-- Membership 角色管理配置 -->
    
<roleManager enabled="true" defaultProvider="voptRole">
      
<providers>
        
<add connectionStringName="voptAspNetDB"
             name
="voptRole"
             type
="System.Web.Security.SqlRoleProvider"
             
/>
      
</providers>
    
</roleManager>
    
      
<!-- Membership 成员管理配置 -->
    
<membership defaultProvider="voptMembership" userIsOnlineTimeWindow="20">
       
<providers>
          
<add connectionStringName="voptAspNetDB"
               enablePasswordRetrieval
="false"
               enablePasswordReset
="true"
               requiresQuestionAndAnswer
="true"
               minRequiredPasswordLength
="5"
               minRequiredNonalphanumericCharacters
="0"
               passwordFormat
="Hashed"
               applicationName
="vopt"
               name
="voptMembership"
               type
="System.Web.Security.SqlMembershipProvider"
               
/>
       
</providers>
    
</membership>
    
       
<!-- Membership 认证模式 -->
    
<authentication mode="Forms"/>

    
<!-- Profile 用户信息配置 -->
    
<profile enabled="true" defaultProvider="voptProvider" automaticSaveEnabled="true">
      
<providers>
        
<add name="voptProvider"
             type
="System.Web.Profile.SqlProfileProvider"
             connectionStringName
="voptAspNetDB"
             description
="Profile 驱动配置"
             
/>
      
</providers>

        
<!-- Profile 用户信息定义 -->
      
<properties>
        
<group name="Person">
          
<add name="email" allowAnonymous="true" type="System.String" />
          
<add name="tel" allowAnonymous="true" type="System.String"/>
        
</group>
      
</properties>

    
</profile>

      
<!-- Profile 匿名用户信息模式启用 -->
    
<anonymousIdentification enabled="true"/>

    
</system.web>
</configuration>
posted on 2009-09-04 16:54  Robin99  阅读(273)  评论(0)    收藏  举报