Usuário com melhor resposta
Gerar Nova Senha Membership User

Pergunta
-
Boa Tarde,
Estou com dificuldades para gerar uma nova senha para o usuário utilizando membership. A senha está armazenada como Hashed (não posso recuperar a mesma). Já estou usando enablePasswordReset="true". Vamos imaginar que o usuário perdeu a senha. Eu gostaria de fazer com que o membership gere uma nova senha e mande a mesma para o email do usuário.
Estou esbarrando justamente na troca da senha pois o método ResetPassword está me solicitando o PasswordAnswer ao qual não tenho acesso e o overload do método ResetPassword que não pede parametro não está funcionando.
Valor não pode ser nulo. Nome do parâmetro: passwordAnswer
Dim mUsuario As MembershipUser = Membership.GetUser(sUsuario)
Label1.Text = mUsuario.UserName Label2.Text = mUsuario.LastLoginDate Label3.Text = mUsuario.ResetPassword()
como posso resolver esse problema?
Obrigado,
Rodrigo
Respostas
-
Oi,
Na configuração do provider de Membership, no web.config, altere o atributo RequiresQuestionAndAnswer para false.
Caso a configuração do membeshipprovider não esteja no web.config, copie do machine config, troque o name e defina o novo name como default provider (atributo da tag membership).
Não precisa fazer código, utilize o próprio webcontrol PasswordRecovery para fazer isso.
[]'s
Dennes*Treinamento de ASP.NET em SP 25/05 apenas 12x70,88 - http://www.bufaloinfo.com.br/cursos/aspnet2.asp
*Treinamento de ASP.NET no Rio 01/08, http://www.bufaloinfo.com.br/cursos/aspnet2.asp
Tels: (11) 3170-3056, (21) 2262-1368, (21) 9240-5134 E-Mail : Contato@bufaloinfo.com.br
Dennes - Se resolveu, classifique a mensagem, por favor - [http://www.bufaloinfo.com.br] NOVO DVD Segurança no ASP.NET : http://www.bufaloinfo.com.br/LearingSeriesSegurancaASPNET2.asp
Todas as Respostas
-
Olá Rodrigo,
O PasswordAnswer é a resposta a pergunta a qual seu usuário escolheu no momento do cadastro. Você deve solicitá-la para o usuário, mostrando quando é a Question.
System.Web.Security.MembershipUser User = System.Web.Security.Membership.GetUser("jose");
Label1.Text = User.PasswordQuestion;
Assim que o usuário digitar a Resposta, você passa esta reposta para o mètodo ResetPassword
User.ResetPassword(Textbox1.Text);
Espero ter ajudado.
Att,
Everton -
ola everton,
obrigado pela dica porem como disse nao tenho acesso a essa propriedade uma vez que o usuario tambem nao possui. Justamente por isso desejo resetar a senha pelo sistema onde o administrador executa o botao que envia a nova senha por email.
obrigado,
rodrigo -
-
-
Oi,
Na configuração do provider de Membership, no web.config, altere o atributo RequiresQuestionAndAnswer para false.
Caso a configuração do membeshipprovider não esteja no web.config, copie do machine config, troque o name e defina o novo name como default provider (atributo da tag membership).
Não precisa fazer código, utilize o próprio webcontrol PasswordRecovery para fazer isso.
[]'s
Dennes*Treinamento de ASP.NET em SP 25/05 apenas 12x70,88 - http://www.bufaloinfo.com.br/cursos/aspnet2.asp
*Treinamento de ASP.NET no Rio 01/08, http://www.bufaloinfo.com.br/cursos/aspnet2.asp
Tels: (11) 3170-3056, (21) 2262-1368, (21) 9240-5134 E-Mail : Contato@bufaloinfo.com.br
Dennes - Se resolveu, classifique a mensagem, por favor - [http://www.bufaloinfo.com.br] NOVO DVD Segurança no ASP.NET : http://www.bufaloinfo.com.br/LearingSeriesSegurancaASPNET2.asp -
-
-
Boa tarde!!
Comecei estudar programação agora e preciso de ajuda. Estou com esse mesmo problema, mas não sei nem por onde começo, gostaria de um passo a passo para eu poder comparar com o meu e identificar onde estou errando. Desde já agradeço.
Rafael