Partager via


Création d'une unité d'organisation

Maintenant que vous disposez de l’objet de domaine, vous pouvez commencer à créer des unités d’organisation. Fabrikam a deux divisions : Sales et Production. L’entreprise prévoit d’embaucher deux administrateurs Windows 2000 pour gérer chaque division. Joe Worden, en tant qu’administrateur d’entreprise, créera deux nouvelles unités d’organisation sous le domaine Fabrikam. En créant une unité d’organisation, Joe peut regrouper plusieurs objets et laisser quelqu’un d’autre gérer ces objets. L’exemple de code suivant crée l’unité d’organisation (UO) Sales.

Dim dom as IADsContainer
Set dom = GetObject("LDAP://DC=Fabrikam,DC=Com")
Set salesOrg = dom.Create("organizationalUnit", "OU=Sales")
salesOrg.Put "description", "Sales Headquarter,SF"
salesOrg.Put "wwwHomePage", "https://fabrikam.com/sales"
salesOrg.SetInfo

La méthode IADsContainer.Create accepte le nom de la classe et le nom du nouvel objet. À ce stade, l’objet n’est pas commité dans Active Directory. Toutefois, vous aurez une référence d’objet ADSI/COM sur le client. Avec cet objet ADSI, vous pouvez définir ou modifier des attributs à l’aide de la méthode IADs.Put . La méthode IADs.Put accepte le nom de l’attribut et la valeur de l’attribut. Pourtant, rien n’est commité dans le répertoire ; tout est mis en cache sur le client. Lorsque vous appelez la méthode IADs.SetInfo , les modifications, dans ce cas, la création d’objet et la modification d’attribut, sont validées dans le répertoire. Ces modifications sont traitées, ce qui signifie que vous verrez le nouvel objet avec tous les attributs que vous définissez, ou aucun objet du tout.

Vous pouvez également imbriquer des unités d’organisation. L’exemple de code suivant suppose que la division Ventes est divisée en régions Est et Ouest.

Set east = salesOrg.Create("organizationalUnit", "OU=East")
east.SetInfo

Cela s’applique également à la région Ouest.

Pour établir une liaison directe à la région Est dans le organization Ventes, spécifiez le nom unique.

Set east = GetObject("LDAP://OU=East,OU=Sales,DC=Fabrikam,DC=COM")
Debug.Print east.Get "description"
east.Put "wwwHomePage", "https://fabrikam.com/sales/east"

Si vous êtes déjà lié à l’objet parent (Sales), vous pouvez le lier à l’objet enfant (Est) à partir de l’objet parent à l’aide du nom relatif de l’objet enfant.

Set east = salesOU.GetObject("organizationalUnit", "OU=East")

Pour vous assurer que les objets ont été créés, utilisez le composant logiciel enfichable MMC Utilisateurs et ordinateurs Active Directory pour afficher les nouvelles unités d’organisation.

Déplacement d’utilisateurs existants vers l’unité d’organisation