public void EnableDisableUser(string server, string name1, string obj1, Int32 sw)
{
try
{
this.Label1.Style["text-align"] = "left";
Label1.ForeColor = Color.Black;
DirectoryEntry root1 = new DirectoryEntry(@"LDAP://rootdse");
string path1 = root1.Invoke("GET", "defaultNamingContext").ToString();
DirectoryEntry root = new DirectoryEntry(
"LDAP://" + path1, txtUsername.Text, txtPassword.Text);
//OU=Computers,OU=Home,dc=ds,dc=apollo,dc=com
DirectorySearcher searcher = new DirectorySearcher(root);
searcher.Filter = "(&(objectClass=*)(sAMAccountName=" + obj1 + "))";
searcher.PropertiesToLoad.Add("cn");
searcher.PropertiesToLoad.Add("userPrincipalName");
searcher.PropertiesToLoad.Add("sAMAccountName");
searcher.PropertiesToLoad.Add("lockoutTime");
if (sw == 0x200)
Label1.Text = "Enabling User:<b> " + obj1 + "</b><br />";
if (sw == 0x2)
Label1.Text = "Disabling User:<b> " + obj1 + "</b><br />";
Label1.Text += "------------------------------------------" +
"---------------------------------- <br />";
SearchResultCollection results = searcher.FindAll();
foreach (SearchResult result in results)
{
string searchpath = result.Path;
Console.WriteLine("path: {0}", searchpath);
searcher.CacheResults = false;
SearchResult result1 = searcher.FindOne();
root = result1.GetDirectoryEntry();
root.Properties["userAccountControl"].Value = sw;
root.CommitChanges();
ResultPropertyCollection rpc = result.Properties;
foreach (string property in rpc.PropertyNames)
{
foreach (object value in rpc[property])
{
if (property == "mail")
{
Label1.Text += "<b>" + property +
"</b>: <a href='mailto:" + value + "'>" + value + "</a><br />";
}
else
{
Label1.Text += "<b>" + property +
"</b>: " + value + "<br />";
}
}
}
Label1.Text += "---------------------------------------"
+ "------------------------------------- <br />";
if (sw == 0x200)
Label1.Text += "This account has been enabled!!!"
+ "<br />";
if (sw == 0x2)
Label1.Text += "This account has been disabled!!!"
+ "<br />";
}
}
catch (Exception ex)
{
Label1.Text += ex.Message;
}
}
No comments:
Post a Comment