Active Directory & .Net 2.0


précédentsommairesuivant
existe déjà

4. Opérations sur d'autres types objets de l'annuaire

4.1. Pas de différence notable

Que cela concerne des objets de type comptes d'utilisateurs ou n'importe quel autre type d'objet les opérations de base ne changent pas. Pour travailler sur d'autres types d'objet il faudra surtout penser à configurer le filtre de la recherche avec la bonne classe d'objet et veiller à accéder aux bonnes propriétés des différents objets stockés dans l'annuaire, je vous recommande d'ailleurs à ce sujet d'utiliser l'utilitaire de Microsoft ADSIedit qui permet vraiment d'entrer dans le détail et la composition de chaque objet. Attention cependant, cet utilitaire est extrêmement puissant mais il faut prendre garde à ce que l'on fait avec ! En effet, en deux clics de souris vous pouvez potentiellement mettre à genoux votre infrastructure Active Directory, donc prenez garde, ce n'est pas un outil à mettre entre toutes les mains.

Cet utilitaire n'est pas installé par défaut, mais il se trouve sur le CD de votre Windows Server dans le répertoire "\support\tools". En installant le suptools.msi vous aurez ainsi accès à de trés nombreux outils qui vous permettront d'administrer de manière trés productive votre serveur.

4.2. Lister les objets ordinateurs contenus dans une OU

Pour vous montrer à quel point le fonctionnement reste le même quelque soit le type d'objet concerné, je vous propose un exemple montrant comment lister tous les comptes d'ordinateurs se trouvant dans une OU donnée.

Lister ordinateurs contenus dans une OU
Sélectionnez

    Public Function getListeComputerContainer(ByVal conteneurAinspecter As String, _
	                                          ByVal monUsername As String, _
	                                          ByVal monPassword As String) As ArrayList

		' Exemple de chemin vers un conteneur : "OU=monOU,DC=contoso,DC=local"


        ' Liste qui sera retournée avec les noms des ordinateurs 
        ' trouvés lors de la recherche
        Dim maListeComputers As New ArrayList

        Try

            ' Définition de la DirectoryEntry pour accéder à l'annuaire
            Dim monEntry As DirectoryEntry = New DirectoryEntry("LDAP://" & _
			    conteneurAinspecter, monUsername, monPassword, AuthenticationTypes.Secure)
			    
            Dim maRecherche As DirectorySearcher = New DirectorySearcher(monEntry)

            ' Filtre spécifiant que l'on recherche des objets de type 'computer'
            maRecherche.Filter = ("(objectClass=computer)")

            Dim unComputer As SearchResult = Nothing

            ' Boucle permettant de placer dans un liste chaque nom d'ordinateur
            ' retourné par la recherche.
            For Each unComputer In maRecherche.FindAll
                maListeComputers.Add(unComputer.GetDirectoryEntry.Name)
            Next

        Catch ex As Exception

            MessageBox.Show(ex.Message)

        End Try

        Return maListeComputers

    End Function

précédentsommairesuivant
existe déjà

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2005 Ronald VASSEUR. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.