Problem dotyczy modyfikacji zawartości grupy "Administrators" na komputerze (nie w AD) za pomocą PowerShell.
Problem dotyczy modyfikacji zawartości grupy "Administrators" na komputerze (nie w AD) za pomocą PowerShell.
Dodanie konta domenowego (użytkownika lub grupy) do lokalnej grupy administratorów można zrealizować z poziomu PowerShella na co najmniej 3 sposoby, używając:
Aby zrealizować zadanie przy pomocy WinAPI, należy wywołać funkcję NetLocalGroupAddMembers z biblioteki Netapi32.lib.
W przypadku PowerShell wywołanie można zrealizować mapując wcześniej funkcję za pomocą PInvoke:
[DllImport("NetApi32.dll", CharSet=CharSet.Auto, SetLastError=true)] public static extern Int32 NetLocalGroupAddMembers( string servername, //server name string groupname, //group name UInt32 level, //info level ref LOCALGROUP_MEMBERS_INFO_3 buf, //Group info structure UInt32 totalentries //number of entries );
Drugi sposób, czyli wykorzystanie ADSI, może być zrealizowane np. w ten sposób:
$aa = [ADSI]"WinNT://./Administrators,group" $Domain= 'CONTOSO' $Account = 'Exec' $AccountToAdd = "WinNT://$Domain/$Account" $aa.add($AccountToAdd)
Ostatnia i jednocześnie najprostsza metoda to użycie systemowego polecenia NET LOCALGROUP:
net localgroup administrators /add Contoso\Exec