28/01/2008

Creare un utente Windows ed associarlo ad un gruppo

A cura di Efran Cobisi
Tag: Nessun tag disponibile.


Non capita di rado che chi amministra un sistema Windows, sia questo isolato o collegato e gestito in rete, necessiti di creare utenti ed associarli a gruppi nuovi o pre-esistenti. PowerShell e l'integrazione con ADSI permettono di gestire con facilità questi oggetti ed integrare le operazioni di creazione di nuovi utenti all'interno di script automatizzati.

Ecco come è possibile, ad esempio, creare l'utente pippo, con password powershell all'interno del sistema Windows locale (per sistemi remoti è sufficiente modificare la stringa identificativa dell'host name, in prima riga):

$hostName = [Environment]::MachineName
$computer = [ADSI]("WinNT://$hostName, computer")

# Nota che qui 'pippo' è il nome utente

$newUser = $computer.PSBase.Children.Add('pippo', 'user')

# Impostazione della password

$newUser.SetPassword('powershell')

# Salvataggio

$newUser.SetInfo()

# Associazione dell'utente al gruppo 'Administrators'

$groupName = "Administrators"
$group = [ADSI]("WinNT://$hostName/$groupName, group")
$group.PSBase.Add($newUser.PSBase.Path)

Commenti


04/11/2010 12.16
Griso: Errore nell esecuzione
Salve,
ho provato a far girare questo script,ma l'ultima riga genera il seguente errore:

Method invocation failed because [System.Management.Automation.PSInternalMemberSet] doesn't contain a method named 'Add
'.

At line:1 char:18
+ $group.PSBase.Add <<<< ($newUser.PSBase.Path)
+ CategoryInfo : InvalidOperation: (Add:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound


ho provato ad aggiornare il powershell all aversione 2.0 ma il problema continua a persitere.

come posso risolvere?
Grazie.


Cobisi EmailVerify.NET is a Microsoft .NET software component that validates email addresses. valid email