首页 新闻 搜索 专区 学院

Membership 哈希加密问题

0
悬赏园豆:30 [已解决问题] 解决于 2009-02-05 19:08

    最近这个项目要求安全权限部分全部改版,经历要我负责这块,想来想去决定使用ASP.NET Membership机制。

    但是一开始就遇到了一个以前没有想过的问题:

1 当配置文件中passwordFormat值为Hashed的时候,如何指定哈希加密的密钥?

2 如果不指定,会不会出现在不同的机器上加密出的结果不同的情况?(项目是要求各个不同的系统使用同一个数据库,也就是说不同的系统加密的方法和密钥应该相同。)

3 可不可以指定一个已经定义好的加密算法?

4 按照以下的配置文件运行网站,似乎machineKey节点的配置没有起到任何作用,因为重新生成128位随机validationKey值的时候,原有的用户任然能够正常登陆,请问这是什么问题?

Web.config(部分)

 

    期待各位的解答。谢谢!

问题补充: <roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider" cookieTimeout="30" > <providers> <clear/> <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" applicationName="TiscsWebSite" connectionStringName="TiscsWebSiteDB" /> </providers> </roleManager> <membership defaultProvider="AspNetSqlMembershipProvider" hashAlgorithmType="SHA1" userIsOnlineTimeWindow="15"> <providers> <clear/> <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" applicationName="TiscsWebSite" connectionStringName="TiscsWebSiteDB" passwordFormat="Hashed" minRequiredNonalphanumericCharacters="0" /> </providers> </membership> <siteMap defaultProvider="XmlSiteMapProvider" enabled="true"> <providers> <clear/> <add name="XmlSiteMapProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap" securityTrimmingEnabled="true" /> </providers> </siteMap> <machineKey validation="SHA1" validationKey="BB4EF3909308D64CC94BF97014727AAD3C779A02FF319F955B7664CF0D7480838651E9C906A05684FEE68A32AD8446F9B2639246DBBF2162FE0D60FCFCCD1F78" decryptionKey="E047EC5B8BA53955B5E46CDA8759B26C92619F22F551F10E" />
孙长宇的主页 孙长宇 | 初学一级 | 园豆:80
提问于:2009-02-05 08:08
< >
分享
最佳答案
-1

生成的aspnet_Membership表里有一个PasswordSalt的字段,这个就是hash的密钥

Jun1st | 菜鸟二级 |园豆:240 | 2009-02-05 10:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册