结合OracleMembershipProvider开发简单的asp.net应用程序----配置web.config文件

配置web.config文件

    <authentication mode="Forms">      
      
<forms loginUrl="~/Login.aspx"  defaultUrl="~/Default.aspx"   protection="All" timeout="1000" cookieless="UseCookies">

      
</forms>
    
</authentication>

authentication节点,添加forms的说明
loginUrl:登录页面
defaultUrl:缺省页面
timeout:过期时间

这些节点值,可以直接通过FormsAuthentication类访问,如访问loginUrl,代码是:FormsAuthentication.LoginUrl

配置数据源
  <connectionStrings>
    
<add name="LingAnChuLi" connectionString="Data Source=zwz;Persist Security Info=True;User ID=test;Password=test"
     providerName
="System.Data.OracleClient" />
   
</connectionStrings>

配置OracleMembershipProvider
    <membership defaultProvider="OracleMembershipProvider" userIsOnlineTimeWindow="10">
      
<providers>
        
        
<add name="OracleMembershipProvider" type="OracleMembershipProvider" requiresQuestionAndAnswer="true" connectionStringName="LingAnChuLi" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordFormat="Encrypted"/>
      
</providers>      
    
</membership>
    
<machineKey validationKey="D61B3C89CB33A2F1422FF158AFF7320E8DB8CB5CDA1742572A487D94018787EF42682B202B746511891C1BAF47F8D25C07F6C39A104696DB51F17C529AD3CABE" decryptionKey="FBF50941F22D6A3B229EA593F24C41203DA6837F1122EF17"/>
  

在membership节点声明OracleMembershipProvider,节点的意义参考微软的说明文档。
在这里注意属性passwordFormat="Encrypted",下面是引用的一段说明

PasswordFormat 属性指示存储密码的格式。密码可以采用 Clear、Encrypted 和 Hashed 密码格式存储。Clear 密码以明文形式存储,这可以提高存储和检索密码的性能,但安全性较差,当数据源安全性受到威胁时此类密码很容易被读取。Encrypted 密码在存储时进行了加密,可以在比较或检索密码时进行解密。此类密码在存储和检索时需要进行额外的处理,但比较安全,在数据源的安全性受到威胁时不容易被获取。Hashed 密码在存储到数据库时使用单向哈希算法和随机生成的 salt 值进行哈希处理。在验证某一密码时,将用数据库中的 salt 值对该密码进行哈希计算以进行验证。无法检索哈希密码。

使用Hashed是最安全的方式,但由于是单向加密,无法解密,故而无法使用“找回密码”的功能。所以这里使用了Encrypted的方式。

如果要使用“找回密码”功能,需要配置邮箱的设置

<system.net>
    
<mailSettings>      
      
<smtp deliveryMethod="Network" from="jlike@163.com">
        
<network  host="smtp.163.com" userName="jlike" password="" port="25" defaultCredentials="false"  />
      
</smtp>

    
</mailSettings>
  
</system.net>

至此,使用登录控件的web.config配置完成。

posted on 2007-08-26 14:09  amber lee zhao  阅读(462)  评论(0编辑  收藏  举报

导航