Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Как с помощью скрипта создать пользователя с правами администартора (http://forum.oszone.net/showthread.php?t=344425)

kvitalik 15-03-2020 13:33 2913238

Как с помощью скрипта создать пользователя с правами администартора
 
Господа, есть необходимость создать пользователя с полными правами администортора.
Я в этом деле новичок, подскажите пожалуйста как можно это сделать автономно!
Просто частенько нужно создавать права админа а потом его удалять, а ручками долго каждый раз эти действия проделывать....
Кто может помочь с написанием этого скрипта?! Заранее благодарен

Iska 15-03-2020 14:08 2913247

Проще пакетным файлом:
Код:

net.exe user "Вася_Пупкин" "123456789" /add /active:yes && net.exe localgroup "Администраторы" "Вася_Пупкин" /add
и:
Код:

net.exe localgroup "Администраторы" "Вася_Пупкин" /delete && net.exe user "Вася_Пупкин" /delete

kvitalik 15-03-2020 14:09 2913248

Iska, это мне в один скрипт собрать в vbs сохранить и запустить?

Цитата:

Цитата Iska
net.exe user "Вася_Пупкин" "123456789" /add /active:yes && net.exe localgroup "Администраторы" "Вася_Пупкин" /add »

сохраняю этот скрипт как vbs запускаю и пишт ошибку: строка 1 символ 14

Iska, нужно чтобы:
1.Создавалась пользователь со всеми правами администратора.
2.И скрывала себя из экрана приветствия учетную запись.
3.Чтобы пароль был вечным.
4. Скрывала все папки на диске с: Созданной учетки.
Чтобы никому в голову не пришлось взломать ее пароль, ото школьники так и хотят получить доступ там где не нужно.

kvitalik 15-03-2020 14:25 2913256

Iska , возможно ли это сделать ?

Iska 15-03-2020 14:35 2913260

Цитата:

Цитата kvitalik
Iska, это мне в один скрипт собрать в vbs сохранить и запустить? »

kvitalik, я же написал:
Цитата:

Цитата Iska
пакетным файлом »

Цитата:

Цитата kvitalik
Iska, нужно чтобы:
1.Создавалась пользователь со всеми правами администратора.
2.И скрывала себя из экрана приветствия учетную запись.
3.Чтобы пароль был вечным.
4. Скрывала все папки на диске с: Созданной учетки. »

Вы не находите, что это сильно отличается от изначально поставленной техзадачи? Я — нахожу.

Цитата:

Цитата kvitalik
Iska , возможно ли это сделать ? »

Итак:
Цитата:

Цитата kvitalik
1.Создавалась пользователь со всеми правами администратора. »

Можно (только нет никаких «всех прав администратора», забудьте об этом, есть локальная группа Администраторы. И есть привилегии, набор которых определяет права той или иной группы безопасности).

Цитата:

Цитата kvitalik
2.И скрывала себя из экрана приветствия учетную запись. »

Помнится, что можно.

Цитата:

Цитата kvitalik
3.Чтобы пароль был вечным. »

Вечным не бывает ничего. Но можно указать, что срок действия пароля не ограничен.

Цитата:

Цитата kvitalik
4. Скрывала все папки на диске с: Созданной учетки. »

Не вижу в этом ни малейшего смысла, ни какой-либо необходимости.

Цитата:

Цитата kvitalik
Чтобы никому в голову не пришлось взломать ее пароль, ото школьники так и хотят получить доступ там где не нужно. »

Для того, чтобы даже не взломать, а просто снять пароль — достаточно желания, простого физического доступа к машине на некоторое время и немного знаний и умений.

Iska 15-03-2020 15:23 2913268

kvitalik, пробуйте (на WSH):
Скрытый текст
Код:

Option Explicit

Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000
Const HKEY_LOCAL_MACHINE        = &H80000002


Dim strUserName
Dim strComputer

Dim objIADsComputer
Dim objIADsUser

Dim boolUserAlreadyExists


strUserName = "Вася_Пупкин"
strComputer = WScript.CreateObject("WScript.Network").ComputerName


Set objIADsComputer = GetObject("WinNT://" & strComputer & ",computer")
objIADsComputer.Filter = Array("user")

boolUserAlreadyExists = False

For Each objIADsUser In objIADsComputer
        If StrComp(objIADsUser.Name, strUserName, vbTextCompare) = 0 Then
                boolUserAlreadyExists = True
               
                Exit For
        End If
Next

If Not boolUserAlreadyExists Then
        With objIADsComputer.Create("user", strUserName)
                .SetPassword "123456789"
                .SetInfo
               
                GetObject("WinNT://" & strComputer & "/Администраторы,group").Add .ADsPath
               
                .Put "userFlags", .Get("UserFlags") OR ADS_UF_DONT_EXPIRE_PASSWD
                .SetInfo
        End With
Else
        WScript.Echo "User account [" & strUserName & "] already exists."
        WScript.Quit 1
End If

Set objIADsComputer = Nothing

With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(strComputer, "root\default").Get("StdRegProv")
        .CreateKey HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList"
        .SetDWORDValue HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList", strUserName, 0
End With

WScript.Quit 0


и:
Скрытый текст
Код:

Option Explicit

Const HKEY_LOCAL_MACHINE        = &H80000002


Dim strUserName
Dim strComputer

Dim objIADsComputer
Dim objIADsUser


strUserName = "Вася_Пупкин"
strComputer = WScript.CreateObject("WScript.Network").ComputerName


Set objIADsComputer = GetObject("WinNT://" & strComputer & ",computer")
objIADsComputer.Filter = Array("user")

For Each objIADsUser In objIADsComputer
        If StrComp(objIADsUser.Name, strUserName, vbTextCompare) = 0 Then
                objIADsComputer.Delete "user", strUserName
               
                Exit For
        End If
Next

Set objIADsComputer = Nothing

WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(strComputer, "root\default").Get("StdRegProv").DeleteValue _
        HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList", strUserName

WScript.Quit 0


kvitalik 15-03-2020 15:42 2913276

Iska, первый код работает все ок спасибо Вам огромное.

ISKA, Я ПОДНЯЛ НЕКУЮ ТЕМУ НА ФОРУМЕ НО МНЕ НИКТО НЕ СМОГ ПОМОЧЬ.
вот в чем дело:
Как можно использовать одновременно одну и ту же сессию в windows 7 , допустим есть учетная запись пользователя админ, и в ней работает человек я хочу тоже в эту учетку зайти через rdp и одновременно работать и не мешая друг друга и не видя действии друг у друга.
но работать из одной учетной записи?!

Дело в том, что когда я подключаюсь к учетной записи которая активна удаленным пользователем у него с сеанса выкидывает, и подключаюсь я уже к его учетке, тоже самое и наоборот происходит. Так как можно одновременно работать с одной и той же учетной записи не мешая друг друга?!

нашел эту утилиту но и она не помогла RDP Wrapper Library v1.5

DJ Mogarych 15-03-2020 15:58 2913284

Цитата:

Цитата kvitalik
НО МНЕ НИКТО НЕ СМОГ ПОМОЧЬ »

И не сможет, потому что работать под одной сессией невозможно. Сказано же - делайте вторую учётку.

Iska 15-03-2020 16:24 2913294

Цитата:

Цитата kvitalik
Iska, первый код работает »

И второй тоже.


Время: 07:38.

Время: 07:38.
© OSzone.net 2001-