DirectoryEntry Rename Object

image_pdfimage_print
   


using System;
using System.DirectoryServices;

public class RenameObject
{
   public static void Main()
   {
      DirectoryEntry de = new DirectoryEntry(
        "LDAP://192.168.1.100/ou=auditing, ou=accounting, dc=ispnet1, dc=net",
        "cn=Administrator, dc=ispnet1, dc=net", "password",
        AuthenticationTypes.ServerBind);

      DirectoryEntries des = de.Children;
      DirectoryEntry badObject = des.Find("cn=test");
      badObject.Rename("cn=testing");
      de.CommitChanges();
      de.Close();
   }
}


           
          


DirectoryEntry and DirectoryEntries

image_pdfimage_print
   



using System;
using System.DirectoryServices;

public class RemoveObject
{
   public static void Main()
   {
      DirectoryEntry de = new DirectoryEntry(
        "LDAP://192.168.1.100/ou=accounting, dc=ispnet1, dc=net",
         "cn=Administrator, dc=ispnet1, dc=net", "password",
         AuthenticationTypes.ServerBind);

      DirectoryEntries children = de.Children;
      try
      {
         DirectoryEntry badObject = children.Find("ou=auditing");
         children.Remove(badObject);
         de.CommitChanges();
         Console.WriteLine("the object was removed");
      } catch (Exception)
      {
         Console.WriteLine("the object was not found");
      }
   }
}

           
          


DirectoryServices:Modify Property

image_pdfimage_print
   

using System;
using System.DirectoryServices;

public class ModifyProperty
{
   public static void Main()
   {
      DirectoryEntry de = new DirectoryEntry(
         "LDAP://192.168.1.100/cn=kblum, ou=sales, dc=ispnet1, dc=net",
         "cn=Administrator, dc=ispnet1, dc=net", "password",
          AuthenticationTypes.ServerBind);

      de.Properties["sn"][0] = "Mullen";
      de.CommitChanges();
      Console.WriteLine("New property value: {0}", de.Properties["sn"][0]);
      de.Close();
   }
}


           
          


DirectoryEntry : List Objects

image_pdfimage_print
   

using System;
using System.Collections;
using System.DirectoryServices;

public class ListObjects
{
   public static void Main()
   {
      DirectoryEntry de = new DirectoryEntry(
        "LDAP://192.168.1.100/dc=ispnet1, dc=net");

      Console.WriteLine(de.Path);
      DirectoryEntries des = de.Children;
      foreach(DirectoryEntry entry in des)
      {
         Console.WriteLine("  child: " + entry.Name);
      }
   }
}



           
          


retrieves Active Directory information

image_pdfimage_print
   


using System;
using System.DirectoryServices;

public class Example21_16 
{

  public static void Main() 
  {

    // connect to AD
    DirectoryEntry de = new DirectoryEntry(
      "WinNT://DomanName/MachineName", "Administrator", "Password");

    foreach(DirectoryEntry child in de.Children) 
    {
      Console.WriteLine(child.SchemaClassName + ": " + child.Name);
    }
  }

}




           
          


DirectoryServices DirectoryEntry

image_pdfimage_print
   
 
using System;
using System.Net;
using System.DirectoryServices;
using System.DirectoryServices.Protocols;

public class MainClass {
    public static void Main() {
        using (DirectoryEntry de = new DirectoryEntry()) {
            de.Path = "LDAP://yourSite/rootDSE";
            de.Username = @"explorerchris";
            de.Password = "password";

            PropertyCollection props = de.Properties;

            foreach (string prop in props.PropertyNames) {
                PropertyValueCollection values = props[prop];
                foreach (string val in values) {
                    Console.Write(prop + ": ");
                    Console.WriteLine(val);
                }
            }
        }
    }

}

    


Using DirectorySearcher

image_pdfimage_print
   
 

using System;
using System.Net;
using System.DirectoryServices;


public class MainClass {
    public static void Main() {
        using (DirectoryEntry de = new DirectoryEntry("LDAP://yourV/OU=yourV, DC=explorer, DC=local"))
        using (DirectorySearcher searcher = new DirectorySearcher()) {
            de.Username = @"exploreryourName";
            de.Password = "password";
            searcher.SearchRoot = de;
            searcher.Filter = "(&(objectClass=user)(description=Auth*))";
            searcher.SearchScope = System.DirectoryServices.SearchScope.Subtree;
            searcher.PropertiesToLoad.Add("name");
            searcher.PropertiesToLoad.Add("description");
            searcher.PropertiesToLoad.Add("givenName");
            searcher.PropertiesToLoad.Add("wWWHomePage");
            searcher.Sort = new SortOption("givenName", SortDirection.Ascending);
            SearchResultCollection results = searcher.FindAll();
            foreach (SearchResult result in results) {
                ResultPropertyCollection props = result.Properties;
                foreach (string propName in props.PropertyNames) {
                    Console.Write(propName + ": ");
                    Console.WriteLine(props[propName][0]);
                }
            }
        }
    }
}