Я собираюсь обновить вопрос безопасности и ответить в aspnet_Membership. Обычно это делается по коду:Обновить пароль пользователя членства aspnet
user.ChangePasswordQuestionAndAnswer(password, question, answer);
Но я не знаю пароля. Я обнаружил, что есть по умолчанию хранится procedure.The хранимой процедуры:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
ALTER PROCEDURE [dbo].[aspnet_Membership_ChangePasswordQuestionAndAnswer]
@ApplicationName nvarchar(256),
@UserName nvarchar(256),
@NewPasswordQuestion nvarchar(256),
@NewPasswordAnswer nvarchar(128)
AS
BEGIN
DECLARE @UserId uniqueidentifier
SELECT @UserId = NULL
SELECT @UserId = u.UserId
FROM dbo.aspnet_Membership m, dbo.aspnet_Users u, dbo.aspnet_Applications a
WHERE LoweredUserName = LOWER(@UserName) AND
u.ApplicationId = a.ApplicationId AND
LOWER(@ApplicationName) = a.LoweredApplicationName AND
u.UserId = m.UserId
IF (@UserId IS NULL)
BEGIN
RETURN(1)
END
UPDATE dbo.aspnet_Membership
SET PasswordQuestion = @NewPasswordQuestion, PasswordAnswer = @NewPasswordAnswer
WHERE [email protected]
RETURN(0)
END
Однако я только что нашел ответ явного текста. Как я могу использовать хранимую процедуру и хешировать ее?
Спасибо.
Я не» На самом деле я понимаю этот вопрос, но похоже, что вы спрашиваете, можно ли хэш-ответы? Если это так, вам может потребоваться взглянуть на 'HASHBYTES': http://msdn.microsoft.com/en-us/library/ms174415.aspx –
Отраженный путь ASP.NET: http: // форумы. asp.net/t/1338984.aspx/1 –
@Tim, он запросил пароль, но я полагаю, что админы не знают пароль пользователя. –