2010-10-01 2 views
1

У меня есть сервер, который имеет машины ...сброса пароля пользователя

У меня есть администратор и несколько пользователей ... это все пользователи окна и нет в Databse.

Как сбросить пароль пользователя .... я войти с помощью администратора и предоставить имя пользователя, которое необходимо сбросить ..

Я попытался

string newPassword; 

u = Membership.GetUser(UsernameTextBox.Text, false); 

, но это не работает ...

любые предложения ... спасибо

код для добавления пользователей:

DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer"); 
      DirectoryEntry NewUser = AD.Children.Add(username, "user"); 
      NewUser.Invoke("SetPassword", new object[] { password }); 
      NewUser.Invoke("Put", new object[] { "Description", description }); 
      NewUser.CommitChanges(); 
+0

Вы создали опорные жерех. net network database и настройте поставщика членства до того, как попытаетесь использовать эти функции? – jim

+0

Я использую DirectoryEntry для добавления пользователя ... – user175084

+0

Похоже, вы используете проверку подлинности Windows, а не проверку подлинности с помощью форм. Это правда? – Ted

ответ

-1

Я получил это сделано этот methid .. это работает спасибо за ответы, хотя

DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer"); 
DirectoryEntry HostedUser = AD.Children.Find(hostedUserName, "user"); 

string password = new HostedGuiAddMachines().CreateRandomPassword(8); 
HostedUser.Invoke("SetPassword", new object[] { password }); 
HostedUser.Close(); 
AD.Close(); 
5

попробовать этот

string username = "user"; 
string password = "newpassword"; 
MembershipUser mu = Membership.GetUser(username); 
mu.ChangePassword(mu.ResetPassword(), password); 

, если у вас есть в вашем web.config requiresQuestionAnswer = «истина», вы получите сообщение об ошибке, когда вы пытаетесь сбросить пароль.

+0

Я получаю эту ошибку, когда я звоню Membership.GetUser (имя пользователя); – user175084

+1

что за ошибка? – jim

+0

Произошла ошибка во время выполнения файла SQL 'InstallCommon.sql'. Номер ошибки SQL равен 5123, а сообщение SqlException: CREATE FILE обнаружила ошибку операционной системы 5 (Access is denied.) При попытке открыть или создать физический файл «C: \ INETPUB \ WWWROOT \ APP_DATA \ ASPNETDB_TMP.MDF». CREATE DATABASE не удалось. Некоторые имена файлов не могут быть созданы. Проверьте связанные ошибки. Создание базы данных ASPNETDB_1f5ebd767bfd48a9b513cf18197b312d ... – user175084

2

Возможно, вы ищете метод ResetPassword. Для того, чтобы сбросить с известным паролем, который вы можете использовать что-то вроде этого:

MembershipUser currentUser = Membership.GetUser(user_name); 
bool bPasswordChanged = false; 
bPasswordChanged = currentUser.ChangePassword(currentUser.ResetPassword(), new_password); 
+0

Произошла ошибка во время выполнения файла SQL 'InstallCommon.sql'.Номер ошибки SQL равен 5123, а сообщение SqlException: CREATE FILE обнаружила ошибку операционной системы 5 (Access is denied.) При попытке открыть или создать физический файл «C: \ INETPUB \ WWWROOT \ APP_DATA \ ASPNETDB_TMP.MDF». CREATE DATABASE не удалось. Некоторые имена файлов не могут быть созданы. Проверьте связанные ошибки. Создание базы данных ASPNETDB_1f5ebd767bfd48a9b513cf18197b312d ... – user175084

+0

происходит, когда u вызывает функцию Membership.GetUser() – user175084

Смежные вопросы