2010-01-28 203 views
2

我需要尋找一個web應用程序的例子,最好是ASP.NET,但任何其他的web語言都會這樣做,讓Mac和Windows用戶更改他們的AD密碼。如何讓Mac和Windows用戶更改他們的AD密碼?

任何技術,應用程序或源代碼都會很棒。

P.S:我們的Mac沒有連接到AD,我們也有Windows用戶。

謝謝!

+0

如果Mac用戶不在AD上,Mac用戶如何更改他們的AD密碼? – cjk 2010-01-28 08:33:31

+0

@ck我們有大量的mac用戶根據我們的AD目錄進行身份驗證。 – mxmissile 2010-01-28 08:37:32

回答

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