2010-09-22 92 views
1
<add name="LDSAMembers" 
    type="System.Web.Security.SqlMembershipProvider" 
    connectionStringName="" 
    applicationName="" 
    requiresUniqueEmail="true" 
    passwordFormat="Encrypted" 
    minRequiredPasswordLength="6" 
    enablePasswordReset="true" 
    enablePasswordRetrieval="true" 
    maxInvalidPasswordAttempts="5" 
    passwordAttemptWindow="15" 
    requiresQuestionAndAnswer="false" 
    minRequiredNonalphanumericCharacters="0" /> 

我需要解密的密码在登录system.i找到密码,并passwordsalt场数据库我可以从数据库中获得解密的密码吗?

+0

你不能通过数据库来完成,你需要通过.NET Membership API来完成。你真的在运行源代码还是试图以“黑匣子”方式获取密码? – Greg 2010-09-22 13:23:58

回答

2

我在适当的情况下(即passwordFormat =“Encrypted”)使用了上述配置。以下代码用于使用指定的新密码重置用户的密码(因为它反对生成新密码),以便cs代表可以在电话中询问用户新密码并为其更改,而无需知道旧密码。

到user.ChangePassword调用需要当前密码传递:

MembershipUser user = Membership.GetUser(userId); 
user.ChangePassword(user.GetPassword(), newpw); 

user.password的()返回明文当前密码。

+0

thnx为您的code.it工程 – Surajit 2010-09-23 10:15:40

1

号这是由设计。

+4

密码格式是加密的,密码检索已启用。应该可以通过API。 http://msdn.microsoft.com/en-us/library/system.web.security.sqlmembershipprovider.enablepasswordretrieval.aspx – Greg 2010-09-22 13:26:40

+0

如何?你可以指导更多我是一个新手 – Surajit 2010-09-22 13:32:47

+0

-1加密是为了颠倒。 – 2010-09-23 02:49:07

0

像这样的系统通常使用单向加密来设计,以防止您正在尝试执行的操作。如果您正在使用该系统,最好创建自己的帐户,而不是使用其他人的帐户。

+1

我不认为有这种“单向加密”的东西。也许你的意思是“哈希”? – 2010-09-22 13:24:34

+1

@Adam:参见http://en.wikipedia。org/wiki/One-way_encryption – RedFilter 2010-09-23 11:17:04

+0

为什么downvote? – RedFilter 2010-09-23 13:48:04

2

我看你有enablePasswordReset="true",所以使用正常路线。

0

假设你确实有一个真正的连接字符串配置(而不是connectionStringName=""就像在你的例子),你可以使用这个在你的代码

Membership.GetPassword(username, ""); 

有很多例外,可以由被抛出该方法,例如,如果密码回答是实际设置的,或者用户被锁定。在这里看到更多的细节:

http://msdn.microsoft.com/en-us/library/system.web.security.sqlmembershipprovider.getpassword.aspx

+0

为什么downvote? – Greg 2010-09-23 14:37:36

0

您将需要加密的密码,盐和从加密的密码机machineKey部分。

必须定义此部分,它不是默认情况下支持加密。因此,除非您在加密数据的服务器上工作,否则您需要从该机器获取密钥。

它们可以在任何地方应用的web.config中一路下跌到根web.config之间定义c:\ WINDOWS \ microsoft.net

所以 - 有是关键,所以要说话。

如果您有权访问此部分,请勿在此发布,但请留下评论,我们可以谈论解密。

相关问题