【问题标题】:How to let Mac and Windows users change their AD password?如何让 Mac 和 Windows 用户更改他们的 AD 密码?
【发布时间】:2011-01-10 07:41:29
【问题描述】:

我需要寻找一个 Web 应用程序的示例,最好是 ASP.NET,但任何其他 Web 语言都可以,它可以让 Mac 和 Windows 用户更改他们的 AD 密码。

任何技术、应用程序或源代码都会很棒。

P.S:我们的 Mac 没有连接到 AD,我们也有 Windows 用户。

谢谢!

【问题讨论】:

  • Mac 用户如果不在 AD 上,如何更改其 AD 密码?
  • @ck 我们有大量的 mac 用户针对我们的 AD 目录进行身份验证。

标签: asp.net windows macos active-directory passwords


【解决方案1】:

要查看的相关库是 System.DirectoryServices。在你的网络应用中这样的东西会起作用:

// Elsewhere in your code:
using System.DirectoryServices;

// ...

string u = "userToFind"; // User to look for goes here.
DirectoryEntry de = GetDirectoryObject();
DirectorySearcher s = new DirectorySearcher();

s.SearchRoot = de;
s.Filter = "(&(objectClass=user)(SAMAccountName=" + u + "))";
s.SearchScope = SearchScope.Subtree;

SearchResult r = s.FindOne();

// Connect with user's credentials.
de = (r != null) ? new DirectoryEntry(
  r.Path, "user", "pwd", AuthenticationTypes.Secure) : null;

// ...

try {
   // Change the password.
   de.Invoke("ChangePassword", new object[]{strOldPassword, strNewPassword});
}
catch (Exception ex) {
   Debug.WriteLine("Error changing password. Reason: " + ex.Message);
}

【讨论】:

    猜你喜欢
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-15
    • 1970-01-01
    相关资源
    最近更新 更多