Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how do i create new OU in Active Directory using DirectoryServices.AccountManagement in .net 3.5 or 4

to create & find users & groups in Active Directory i've been using this code: http://anyrest.wordpress.com/2010/06/28/active-directory-c/ that is using the new System.DirectoryServices.AccountManagement namespace that was introduced in .net 3.5...

i'd like to add a method that creates a new OU (if the OU doesnt exist already) using the newest technology with .net 3.5 or 4.0 (and not using the old System.DirectoryServices)

any idea how to do that ?

like image 778
danfromisrael Avatar asked Oct 17 '11 10:10

danfromisrael


1 Answers

According to Managing Directory Security Principals in the .NET Framework 3.5 specialy the architecture here under and System.DirectoryServices.AccountManagement Namespace article, accountManagement is for users groups and computers (security principals).

Active Directory Architecture

For organizationalUnit, you can use System.DirectoryServices.ActiveDirectory here is an example :

using System.DirectoryServices;

...

/* Connection to Active Directory
 */
DirectoryEntry deBase = new DirectoryEntry("LDAP://WM2008R2ENT:389/ou=Monou,dc=dom,dc=fr", "jpb", "PWD");

DirectorySearcher ouSrc = new DirectorySearcher(deBase);
ouSrc.Filter = "(OU=TheNewOU)";
ouSrc.SearchScope = SearchScope.Subtree;
SearchResult srOU = ouSrc.FindOne();
if (srOU == null)
{
  /* OU Creation
   */
  DirectoryEntry anOU = deBase.Children.Add("OU=TheNewOU", "organizationalUnit");
  anOU.Properties["description"].Value = "The description you want";
  anOU.CommitChanges();
}

Don't forget to use using(){} directive

like image 96
JPBlanc Avatar answered Sep 19 '22 12:09

JPBlanc