PDA

Показать полную графическую версию : Как с помощью скрипта создать пользователя с правами администартора


kvitalik
15-03-2020, 13:33
Господа, есть необходимость создать пользователя с полными правами администортора.
Я в этом деле новичок, подскажите пожалуйста как можно это сделать автономно!
Просто частенько нужно создавать права админа а потом его удалять, а ручками долго каждый раз эти действия проделывать....
Кто может помочь с написанием этого скрипта?! Заранее благодарен

Iska
15-03-2020, 14:08
Проще пакетным файлом:
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
Iska, это мне в один скрипт собрать в vbs сохранить и запустить?

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
Iska , возможно ли это сделать ?

Iska
15-03-2020, 14:35
Iska, это мне в один скрипт собрать в vbs сохранить и запустить? »
kvitalik, я же написал:
пакетным файлом »

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

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

2.И скрывала себя из экрана приветствия учетную запись. »
Помнится, что можно.

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

4. Скрывала все папки на диске с: Созданной учетки. »
Не вижу в этом ни малейшего смысла, ни какой-либо необходимости.

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

Iska
15-03-2020, 15:23
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
Iska, первый код работает все ок спасибо Вам огромное.

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

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

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

DJ Mogarych
15-03-2020, 15:58
НО МНЕ НИКТО НЕ СМОГ ПОМОЧЬ »
И не сможет, потому что работать под одной сессией невозможно. Сказано же - делайте вторую учётку.

Iska
15-03-2020, 16:24
Iska, первый код работает »
И второй тоже.




© OSzone.net 2001-2012