Supprimer un compte ordinateur


Cet exemple de script avec son code permet de supprimer un compte ordinateur d'un serveur de domaine AD.


Code du script VBS


' *********************************************************************************************************************
' Supprimer un ordinateur du domaine AD
' *********************************************************************************************************************

On Error Resume Next
 
Const ADS_SCOPE_SUBTREE = 2
Const ADS_SECURE_AUTHENTICATION = 1
Const cTitle = "Supprimer le compte Ordinateur du Domaine NomDomaine.site.local"
Set oWS = CreateObject("WScript.Shell")
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
 
' Modifier les paramètres NomDomaine.site.local et CompteUtilisateur par les paramètres de votre réseau ** 
' CompteUtilisateur doit avoir des droits pour pouvoir supprimer un ordinateur du réseau **
sUser = InputBox("Entrer le nom du domaine et le compte utilisateur pour se connecter",cTitle ,"NomDomaine.site.local\CompteUtilisateur")
sPassword = InputBox("Entrer le mot de passe",cTitle,"mot de passe")
strComputer = InputBox("Entrer le nom de l'ordinateur à supprimer",cTitle,"NomOrdinateurNumeroXXX")
objConnection.Properties("User ID") = sUser
objConnection.Properties("Password") = sPassword
objConnection.Properties("Encrypt Password") = True
objConnection.Properties("ADSI Flag") = 1
 
sUserDom = Split(sUser,"\")
strDomain = sUserDom(0)
 
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
 
objCommand.Properties("Page Size") = 100
objCommand.Properties("Cache Results") = False
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
 
objCommand.CommandText = _
    "SELECT ADsPath FROM 'LDAP://" & strDomain & "' WHERE objectCategory='computer' " & _
        "AND Name='" & strComputer & "'"
Set objRecordSet = objCommand.Execute
 
objRecordSet.MoveFirst
 
strADsPath = ""
While Not objRecordSet.EOF
    strADsPath = objRecordSet.Fields("ADsPath").Value
    objRecordSet.MoveNext
Wend
If strADsPath = "" Then
      oWS.Popup "Ordinateur non trouvé sur le domaine: " & strDomain, ,cTitle , vbExclamation
Else
      oWS.Popup "Chemin de l'ordinateur à supprimer: " & strADsPath, ,cTitle,vbInformation
      Set objNS = GetObject("LDAP:")
      Set objComputer =  objNS.OpenDSObject(strADsPath, sUser, sPassword,ADS_SECURE_AUTHENTICATION)
        objComputer.DeleteObject (0)
      If Err.Number <> 0 Then
      	oWS.Popup "Ordinateur " & strComputer & " non supprimé du domaine: " & strDomain & vbcrlf &_
      	"Erreur Numéro: " & Err.Number & vbCrLf &_
      	"Erreur et Description: " & Err.Description, ,cTitle, vbCritical
      End If
End If
' *********************************************************************************************************************







Lire la suite »






0244587