V tomto článku si ukážeme, jak naplnit počítače ve službě Active Directory pomocí Poweshell. Jako příklad ukážeme, jak uložit informace o modelu počítače do pole Popis objektů typu „Počítač“ ve službě Active Directory..
Chceme tedy, aby se informace o výrobci počítače, jeho modelu a sériovém čísle zobrazovaly v poli Popis (Popis) počítače v konzole Uživatelé a počítače služby Active Directory. Tyto informace lze získat pomocí takové žádosti WMI:
Get-WMIObject Win32_ComputerSystemProduct | Vyberte dodavatele, jméno, identifikační číslo
Dotaz vrací následující data:
- Výrobce (Prodejce) - HP
- Model (Jméno) - Proliant DL 360 G5
- Sériové číslo (Identifikační číslo) - CZJ733xxxx
Nyní musíte tato data zadat do pole Popis tohoto počítače v AD. Modul nám s tím pomůže. ActiveDirectory pro Windows Powerhell (předpokládá se, že tento modul je již nainstalován z balíčku RSAT).
Importujeme modul pomocí tohoto příkazu:
Import-Module ActiveDirectory
Proměnné $ computer přiřadíme název účtu počítače ve službě Active Directory, který chceme změnit:
$ computer = "PC-Name-up01"
Poté v následujících proměnných zapíšeme potřebná počítačová data:
$ prodejce = (Get-WMIObject -ComputerName $ computer Win32_ComputerSystemProduct) .Vendor
$ name = (Get-WMIObject -ComputerName $ computer Win32_ComputerSystemProduct) .Name
$ IdentificationNumber = (Get-WMIObject -ComputerName $ computer Win32_ComputerSystemProduct) .identifyingNumber
Podívejme se, jaké hodnoty jsou proměnným přiřazeny:
$ prodejce
$ name
$ IdentificationNumber
Zbývá zaznamenat přijatá data do pole Popis účtu počítače ve službě Active Directory. K tomuto nám pomůže cmdlet Powershell: Set-adcomputer. Spusťte následující příkaz:
Počítač set-ADComputer $ počítač - Popis „$ vendor: $ name: $ IdentificationNumber“
Zkontrolujte, zda se v poli Popis našeho počítače v konzole AD objevily údaje o výrobci a modelu systému.
Aktualizovali jsme data v AD pouze pro jeden počítač. Chcete-li vyplnit data pro všechny počítače v konkrétním kontejneru (OU) v AD, použijte rutinu Get-adcomputer a foreach smyčka.
Vytvořte pole obsahující seznam všech počítačů v určeném OU:$ computers = Get-ADComputer -Filter * -searchBase "OU = Computers, DC = winitpro, DC = en"
Pak pomocí smyčky foreach získáme data každého počítače prostřednictvím služby WMI a uložíme je ve službě Active Directory:
foreach ($ počítač v $ počítačích)
$ vendor = (Get-WMIObject -ComputerName $ computer Win32_ComputerSystemProduct) .Vendor
$ name = (Get-WMIObject -ComputerName $ computer Win32_ComputerSystemProduct) .Name
$ IdentificationNumber = (Get-WMIObject -ComputerName $ computer Win32_ComputerSystemProduct) .IdentifyingNumber
$ prodejce
$ name
$ IdentificationNumber
Počítač set-ADComputer $ počítač - Popis „$ vendor: $ name: $ IdentificationNumber“
Po spuštění skriptu bude pole Popis vyplněno pro všechny počítače vybrané OU služby Active Directory.
Poznámka:. Chcete-li přijímat data, musí být zapnuty cílové počítače a nesmí být blokovány požadavky WMI prostřednictvím sítě.Zvažovaným způsobem je možné organizovat automatické vyplňování pole Popis počítače ve službě Active Directory. Nejjednodušší způsob, jak to provést, je použít přihlašovací skript Zásady skupiny, takže při spuštění počítače se spustí aktualizace dat do záznamů AD. K provedení takového scénáře budete muset zajistit Authenticated Users právo Napište popis a aplikovat na Potomkové počítačové objekty.
Poznámka:. Nevýhodou tohoto přístupu je, že každý oprávněný uživatel služby AD může změnit nebo vymazat popis jakéhokoli počítače ve službě Active Directory.Pomocí této techniky můžete organizovat ruční nebo automatické vyplňování jakéhokoli dostupného atributu počítače ve službě Active Directory. Zejména v poli popisu můžete napsat jméno aktuálního uživatele registrovaného v systému a jeho oddělení (tato data lze získat pomocí rutiny Get-ADUser), ip adresu počítače nebo jakékoli další potřebné informace.