Kategorie: Skripty CMD / BAT / VBS

VBS - Připojení počítače do domény nebo skupiny

Skript pro zautomatizování této zdánlivě jednoduché operace.

Tento skript využívá třídu Win32_ComputerSystem, která představuje samotný počítač s Windows. Problematické části lze shrnout takto:
  • Skript musí být spuštěn s právy administrátora
  • Jedná-li se o doménu, potřebuje skript přihlašovací údaje doménového administrátora
Pro připojení je třeba uvést název domény nebo skupiny, v případě skupiny přihlašovací údaje doménového administrátora, Při připojování se mohou použít následující parametry:
1JOIN_DOMAINPřipojení do domény, pokud není použito, jde o skupinu
2ACCT_CREATEVytvořit účet v doméně
4ACCT_DELETESmazat účet v doméně pokud existuje (???)
16WIN9X_UPGRADEPřipojování do domény při upgradu ze starší verze Windows
32DOMAIN_JOIN_IF_JOINEDPřipojit k doméně i pokud je počítač již připojený
64JOIN_UNSECUREUmožnit nezabezpečené připojení k doméně
128MACHINE_PASSWORD_PASSEDPři nezabezpečeném připojení použít heslo počítače, ne uživatele (???)
256DEFERRED_SPN_SETZápis SPN a DnsHostName odložit až do přejmenování počítače (pokud se bude počítač ještě přejmenovávat)
262144INSTALL_INVOCATIONPřipojování do domény při instalaci Windows
Například v příkladu níže můžete vidět JOIN_DOMAIN + ACCT_CREATE - tedy, bude se připojovat do domény, ne do skupiny, a zároveň se počítači automaticky vytvoří účet na serveru. Pokud tomu moc nerozumíte a stačí vám běžné připojení do domény, můžete to tak ponechat.
strDomain   = "DOMENA"
strUser     = "uzivatel"
strPassword = "heslo"

Const JOIN_DOMAIN             = 1
Const ACCT_CREATE             = 2
Const ACCT_DELETE             = 4
Const WIN9X_UPGRADE           = 16
Const DOMAIN_JOIN_IF_JOINED   = 32
Const JOIN_UNSECURE           = 64
Const MACHINE_PASSWORD_PASSED = 128
Const DEFERRED_SPN_SET        = 256
Const INSTALL_INVOCATION      = 262144

Set objNetwork = CreateObject("WScript.Network")
strComputer = objNetwork.ComputerName
Set objComputer = _
    GetObject("winmgmts:{impersonationLevel=Impersonate}!\\" & _
    strComputer & "\root\cimv2:Win32_ComputerSystem.Name='" _
    & strComputer & "'")
ReturnValue = objComputer.JoinDomainOrWorkGroup(strDomain, _
    strPassword, _
    strDomain & "\" & strUser, _
    NULL, _
    JOIN_DOMAIN + ACCT_CREATE)

Připojení do skupiny

Pro připojení do skupiny stačí jenom změnit JOIN_DOMAIN + ACCT_CREATE na 0 (nula).

Pro fungování skriptu je třeba Windows XP a/nebo Windows Server 2003 nebo novější. (V případě domény obojí)

Komentáře


Nebyly přidány žádné komentáře.