Wachtwoord vergeten?

Wachtwoord vergeten
Vul hier uw email adres in. U ontvangt dan een nieuw wachtwoord.

Het maken van computeraccounts automatiseren

Gepost op 16-02-2006 - Windows XP - 0 reacties


De informatie in dit artikel is van toepassing op:

  • Microsoft Windows® 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Datacenter Server

Dit artikel is eerder gepubliceerd onder NL222525

Samenvatting


In dit artikel wordt beschreven hoe u het maken van computeraccounts kunt automatiseren. Er worden twee methoden beschreven:
  • NETDOM (een hulpprogramma uit de Windows 2000 Resource Kit dat ook beschikbaar is in het bestand X86\Support\Tools\Support.cab op de cd van het besturingssysteem).
  • De computeraccount via scripts maken met behulp van ADSI en Windows Script Host

Meer informatie

Computeraccounts maken met behulp van NETDOM

Opmerking U mag alleen de Windows 2000-versie van NETDOM gebruiken (onderdeel van de Windows Resource Kit). Eerdere versies werken niet correct voor alle functies van Windows 2000.


U kunt NETDOM vanaf de opdrachtregel gebruiken (of aanroepen vanuit een batchbestand) om het maken van computeraccounts via een script te laten plaatsvinden. De juiste syntaxis wordt hieronder beschreven. Met dit voorbeeld wordt alleen de computeraccount gemaakt en wordt weergegeven hoe u referenties kunt opgeven van een bevoegde gebruiker die gemachtigd is om computeraccounts in het domein te maken.

NETDOM /Domain:MYNDOMAIN /user:beheerder /password:wachtwoord MEMBER MYCOMPUTER /ADD


Klik voor meer informatie over het gebruik van NETDOM op het volgende artikelnummer in de Microsoft Knowledge Base:

150493Lid worden van een domein vanaf de opdrachtregel

De computeraccount via scripts maken met behulp van ADSI en Windows Script Host


Met behulp van Active Directory Services Interfaces (ADSI) en Windows Script Host (WSH) kan een beheerder een Visual Basic-script (VBScript) maken om het maken van computeraccounts te automatiseren.


Voor meer informatie over Visual Basic Scripting bezoekt u de volgende Microsoft-website:Bij deze methode maakt u een script volgens het volgende voorbeeldscript en slaat u het bestand vervolgens op met de extensie .VBS. Voer het bestand uit door er op te dubbelklikken of typ cscript myscript.vbs bij een opdrachtprompt.

Voorbeeldscript


'***********************'* Begin van script'***********************
Dim sComputerName, sUserOrGroup, sPath, computerContainer, rootDSE, lFlagDim secDescriptor, dACL, ACE, oComputer, sPwd
'*********************************************************************'* Declareer constanten voor het definiëren van de standaardlocatie voor de'* computeraccount, markeringen ter identificatie van het object als een computeraccount,'* en beveiligingsmarkeringen'*********************************************************************
Const UF_WORKSTATION_TRUST_ACCOUNT = &H1000Const UF_ACCOUNTDISABLE = &H2Const UF_PASSWD_NOTREQD = &H20Const ADS_GUID_COMPUTRS_CONTAINER = "aa312825768811d1aded00c04fd8d5cd"Const ADS_ACETYPE_ACCESS_ALLOWED = 0Const ADS_ACEFLAG_INHERIT_ACE = 2
'*********************************************************************'* Stel de markeringen voor dit object zodanig in dat het wordt geïdentificeerd als een computeraccount'* en bepaal de naam. De naam wordt hier statisch gebruikt, maar kan worden'* vastgesteld door middel van een opdrachtregelparameter of via een invoervenster'*********************************************************************
lFlag = UF_WORKSTATION_TRUST_ACCOUNT Or UF_ACCOUNTDISABLE Or UF_PASSWD_NOTREQDsComputerName = "TestAccount"
'*********************************************************************'* Bepaal een pad naar de container in de Active Directory waarin'* de computeraccount wordt gemaakt. In dit voorbeeld wordt automatisch'* een domeincontroller voor het domein gevonden, wordt de'* domeinnaam gelezen en aan de standaardcontainer 'Computers' gebonden'*********************************************************************
Set rootDSE = GetObject("LDAP://RootDSE")sPath = "LDAP://<WKGUID=" & ADS_GUID_COMPUTRS_CONTAINERsPath = sPath + ","sPath = sPath + rootDSE.Get("defaultNamingContext")sPath = sPath + ">"Set computerContainer = GetObject(sPath)sPath = "LDAP://" & computerContainer.Get("distinguishedName")Set computerContainer = GetObject(sPath)
'*********************************************************************'* Hier wordt de computeraccount gemaakt. Bepaalde kenmerken moeten'* een waarde hebben voordat .SetInfo wordt aangeroepen om het object door te voeren (te schrijven)'* in de Active Directory'*********************************************************************
Set oComputer = computerContainer.Create("computer", "CN=" & sComputerName)oComputer.Put "samAccountName", sComputerName + "$"oComputer.Put "userAccountControl", lFlagoComputer.SetInfo
'*********************************************************************'* Stel een standaardwachtwoord voor de computeraccount in'*********************************************************************
sPwd = sComputerName & "$"sPwd = LCase(sPwd)oComputer.SetPassword sPwd
'*********************************************************************'* Geef op welke gebruiker of groep deze computer voor het domein mag'* ongeldig is op het domein. In dit voorbeeld is 'MYNDOMEIN' de domeinnaam en is'* 'JanSmits' de account waaraan de machtiging wordt verstrekt. In'* dit voorbeeld wordt de downlevel-naamgevingsconventie gebruikt.'*********************************************************************
sUserOrGroup = "MYNDOMEIN\jansmits"
'*********************************************************************'* Maak een verbinding met de discretionaire ACL van de zojuist gemaakte computeraccount'* en maak een ACE (Access Control Entry) die de opgegeven gebruiker of groep'* volledig beheer over de computeraccount geeft'*********************************************************************
Set secDescriptor = oComputer.Get("ntSecurityDescriptor")Set dACL = secDescriptor.DiscretionaryAclSet ACE = CreateObject("AccessControlEntry")
'*********************************************************************'* Bij een AccessMask van '-1' wordt er volledig beheer verleend'*********************************************************************
ACE.AccessMask = -1ACE.AceType = ADS_ACETYPE_ACCESS_ALLOWEDACE.AceFlags = ADS_ACEFLAG_INHERIT_ACE
'*********************************************************************'* Wijs het beheer aan de eerder opgegeven gebruiker of groep toe.'*********************************************************************
ACE.Trustee = sUserOrGroup
'*********************************************************************'* Voeg deze ACE nu toe aan de DACL van de computeraccount'*********************************************************************
dACL.AddAce ACEsecDescriptor.DiscretionaryAcl = dACL
'*********************************************************************'* Voer de beveiligingswijzigingen voor de computeraccount door (door deze te schrijven)'*********************************************************************
oComputer.Put "ntSecurityDescriptor", Array(secDescriptor)oComputer.SetInfo
'*********************************************************************'* Als alle parameters en machtigingen zijn ingesteld, schakelt u de'* account in.'*********************************************************************
oComputer.AccountDisabled = FalseoComputer.SetInfo
'*********************************************************************'* Maak een ACE waarmee de opgegeven gebruiker of groep'* volledig beheer over de computeraccount krijgt'*********************************************************************
wscript.echo "De opdracht is uitgevoerd."
'*****************'* Einde van script'*****************

Referenties


Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:

324949De containers Gebruikers en Computers in Windows Server 2003-domeinen omleiden


PrintPrint RSS reactiesRSS reacties BookmarkBookmark

Gekoppelde tags

Access, Visual Basic, Wachtwoord, Windows 2000, Windows Server 2003, Works

Reacties
Nog geen reacties geplaatst.

Winkelmandje

Het winkelmandje is leeg

Inloggen
Als u hierboven op de knop 'bestellen' klikt krijgt u een overzicht van de door uw gewenste producten. Indien het overzicht compleet en correct is kunt via de wizard de verdere gegevens invullen en uw bestelling afronden. In het bestelproces kunt u altijd op 'vorige' drukken om terug te gaan in het proces. Bij Perrit staan vertrouwen, privacy en veiligheid op de eerste plaats, wij zullen uw gegevens dan ook met uiterste zorgvuldigheid behandelen en nooit doorgeven aan derden.

Perrit.nl Sherwood Rangers 29 Hengelo

Perrit.nl telefoon: +31 74 750 12 20

Kenniscentrum - Het maken van computeraccounts automatiseren
Perrit Kenniscentrum - Het maken van computeraccounts automatiseren