C# 重置用户密码

C# 重置用户密码,c#,asp.net,C#,Asp.net,我有一台有机器的服务器 我有一个管理员和多个用户。。。这些都是windows用户,不在数据库中 如何重置用户密码。。。。我使用管理员登录,并提供需要重置的用户名 我试过了 string newPassword; u = Membership.GetUser(UsernameTextBox.Text, false); 但这不起作用 任何建议。。。谢谢 要添加用户的代码: DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environ

我有一台有机器的服务器

我有一个管理员和多个用户。。。这些都是windows用户,不在数据库中

如何重置用户密码。。。。我使用管理员登录,并提供需要重置的用户名

我试过了

 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();
试试这个

string username = "user";
string password = "newpassword";
MembershipUser mu = Membership.GetUser(username);
mu.ChangePassword(mu.ResetPassword(), password);
如果您的web.config requiresQuestionAnswer=“true”中有,则在尝试重置密码时会出现错误

试试这个

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

如果您的web.config requiresQuestionAnswer=“true”中有,则在尝试重置密码时会出现错误

您可能正在寻找该方法。要重置为已知密码,可以使用以下方法:

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

您可能正在寻找该方法。要重置为已知密码,可以使用以下方法:

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

我用这种方法做的。。这很有效谢谢你的回答

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();

我用这种方法做的。。这很有效谢谢你的回答

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();


执行SQL文件“InstallCommon.SQL”时出错。SQL错误号为5123,SqlException消息为:创建文件在尝试打开或创建物理文件“C:\INETPUB\WWWROOT\APP\u DATA\ASPNETDB\u TMP.MDF”时遇到操作系统错误5(访问被拒绝)。创建数据库失败。无法创建列出的某些文件名。检查相关错误。正在创建ASPNETDB_1f5ebd767bfd48a9b513cf18197b312d数据库…但是您可以创建用户,返回用户列表并对其进行迭代?您仅在尝试重置用户密码时看到错误?InstallCommon.sql安装与成员资格相关的服务,如果您已经启动并正在运行,则不应该看到它。您是否具有app_数据文件夹的读/写权限?执行SQL文件“InstallCommon.SQL”时出错。SQL错误号为5123,SqlException消息为:创建文件在尝试打开或创建物理文件“C:\INETPUB\WWWROOT\APP\u DATA\ASPNETDB\u TMP.MDF”时遇到操作系统错误5(访问被拒绝)。创建数据库失败。无法创建列出的某些文件名。检查相关错误。正在创建ASPNETDB_1f5ebd767bfd48a9b513cf18197b312d数据库…但是您可以创建用户,返回用户列表并对其进行迭代?您仅在尝试重置用户密码时看到错误?InstallCommon.sql安装与成员资格相关的服务,如果您已经启动并正在运行,则不应该看到它。您是否具有app_数据文件夹的读/写权限?执行SQL文件“InstallCommon.SQL”时出错。SQL错误号为5123,SqlException消息为:创建文件在尝试打开或创建物理文件“C:\INETPUB\WWWROOT\APP\u DATA\ASPNETDB\u TMP.MDF”时遇到操作系统错误5(访问被拒绝)。创建数据库失败。无法创建列出的某些文件名。检查相关错误。创建ASPNETDB_1f5ebd767bfd48a9b513cf18197b312d数据库…在调用Membership.GetUser()函数时发生。执行SQL文件“InstallCommon.SQL”时出错。SQL错误号为5123,SqlException消息为:创建文件在尝试打开或创建物理文件“C:\INETPUB\WWWROOT\APP\u DATA\ASPNETDB\u TMP.MDF”时遇到操作系统错误5(访问被拒绝)。创建数据库失败。无法创建列出的某些文件名。检查相关错误。创建ASPNETDB_1f5ebd767bfd48a9b513cf18197b312d数据库…在调用Membership.GetUser()时发生功能在尝试使用这些功能之前,您是否设置了支持asp.net成员身份数据库表结构并配置了您的成员身份提供程序?我使用DirectoryEntry添加用户…听起来您使用的是Windows身份验证,而不是表单身份验证。这是真的吗?啊…现在一切都清楚了…在这里了解更多关于asp.net成员资格的信息嘿,吉姆。。谢谢你的链接。。但是我不能单独使用表单身份验证。。我使用窗体和windows身份验证的组合。。。。因此,现在我的问题是,如果我可以创建windows用户而不修改任何内容并使用AD,为什么我不能重置密码…在尝试使用这些功能之前,您是否设置了支持asp.net成员资格数据库表结构并配置了您的成员资格提供程序?我使用DirectoryEntry添加用户…听起来您正在使用Windows身份验证,而不是窗体身份验证。这是真的吗?啊…现在一切都清楚了…在这里了解更多关于asp.net成员资格的信息嘿,吉姆。。谢谢你的链接。。但是我不能单独使用表单身份验证。。我使用窗体和windows身份验证的组合。。。。所以现在我的问题是,如果我可以创建windows用户而不需要修改任何内容和使用AD为什么我不能重置密码。。。