Имя: Пароль:
IT
Админ
Win 2008R2 создание пользователей скриптом
0 Trance_1C
 
06.04.12
07:55
Поделитесь плиз у кого есть скрипт любой vbs, js...
для создания локального пользователя (без АД)с указанием среды, групп, изменением дефолтных галочек "юзен должен изменить пароль при первом входе", "срок пароля не ограничен"...
Очень ищу такой скриптик :)
1 povar
 
06.04.12
08:43
таких нет в природе
2 Kandellaster
 
06.04.12
08:52
Set objNetwork = CreateObject("WScript.Network")
strComputer = objNetwork.ComputerName

Set colAccounts = GetObject("WinNT://" & strComputer & "")
Set objUser = colAccounts.Create("user", "LocalAdmin")
objUser.SetPassword "Hello123456789"
objUser.SetInfo

Set objGroup = GetObject("WinNT://" & strComputer & "/Администраторы,group")
Set objUser = GetObject("WinNT://" & strComputer & "/LocalAdmin,user")
objGroup.Add(objUser.ADsPath)

Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000
UserFlags = objUser.Get("UserFlags")
objPasswordExpirationFlag = UserFlags OR ADS_UF_DONT_EXPIRE_PASSWD
objUser.Put "userFlags", objPasswordExpirationFlag
objUser.SetInfo
3 Kandellaster
 
06.04.12
08:53
вот стало быть пример, можно допилить
4 mr_fix
 
06.04.12
10:42
5 Trance_1C
 
06.04.12
12:06
(2) все так и сделал, я его отлаживаю в консольном VB приложении VS2010, пользователь создается, но в группы поместить не могу, пишет объект не существует когда пытаюсь присвоить юзера группе.

 Sub Main()
       ' Open up the text file
       Dim oFSO, oTS, sOU, sGrp
       oFSO = CreateObject("Scripting.FileSystemObject")
       oTS = oFSO.OpenTextFile("C:\users.csv")

       Const ADS_PROPERTY_APPEND = 3


       ' create the necessary variables
       Dim sUserID, sGivenName, sDisplayname, sSurname, sDescription, sPassword, strComputer, colAccounts, objUser, objGroup, objGroup55, sPonge, objUser2

       'skip the first line of the file
       Dim sLine, sData
       'sLine = oTS.ReadLine
       sLine = oTS.ReadLine
       strComputer = "."
       colAccounts = GetObject("WinNT://" & strComputer & "")
        ' now go through the file one line at a Time
       Do Until oTS.AtEndOfStream


           On Error Resume Next
           'read the line and split it on the commas
           sLine = oTS.ReadLine
           sData = Split(sLine, ",")

           ' get the user information from this row
           'sPassword = sData(0)
           sGivenName = sData(0)
           sSurname = sData(1)
           sPassword = sData(2)
           sDescription = sData(3)


           objUser = colAccounts.Create("user", sGivenName)
           objUser.SetPassword(sPassword)
           objUser.SetInfo()

           objUser.description = sDescription
           objUser.fullname = sSurname

           objUser.TerminalServicesInitialProgram = "D:\batch\union.cmd"
           objUser.ConnectClientDrivesAtLogon = 1
           objUser.DefaultToMainPrinter = 1
           
           objUser.SetInfo()
           objUser = GetObject("WinNT://" & strComputer & "/" & sGivenName & ",user")

           objGroup = GetObject("WinNT://" & strComputer & "/Пользователи удаленного рабочего стола,group")
           objGroup.Add(objUser.ADsPath)

           objGroup55 = GetObject("WinNT://" & strComputer & "/Пользователи,group")
           objGroup55.Add(objUser.ADsPath)
 
        Loop

       oTS.Close()

   End Sub
6 Trance_1C
 
06.04.12
12:13
Вот эти моменты отрабатывают с исключением:

objGroup.Add(objUser.ADsPath) - тут добавляю в группу пользователей RDP.

objGroup55.Add(objUser.ADsPath)  - тут добавляю в группу пользователей.
7 Trance_1C
 
06.04.12
12:28
Не удалось добавить или удалить члена локальной группы так как он не существует.
8 Trance_1C
 
06.04.12
12:30
как так не существует если до этого пользователь 2 раза записывается...