Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Создать нового пользователя и ...

Ответить
Настройки темы
VBS/WSH/JS - Создать нового пользователя и ...

Пользователь


Сообщения: 50
Благодарности: 1

Профиль | Отправить PM | Цитировать


Добрый день. Нужна реализация на VBS / PS1 .
Создать нового пользователя и добавление его в локальную группу админов....
Спасибо......

Отправлено: 12:25, 12-12-2018

 

Ветеран


Contributor


Сообщения: 2706
Благодарности: 1684

Профиль | Отправить PM | Цитировать


DarckSol,
Лет 10 назад делал на JS
Код: Выделить весь код
/********************************************************************/
/* Имя: Add_and_Del_1_User.js                                       */
/* Язык: JScript                                                    */
/*           Создание пользователя на компьютере в имеющейся группе */
/*           Удаление другого пользователя                          */
/********************************************************************/

var NetWork=WScript.CreateObject("WScript.Network");
var NameComp=NetWork.ComputerName;     // Имя текущего компьютера
///var NameComp="Badukova";               // Имя произвольного компьютера

var WshShell=WScript.CreateObject("WScript.Shell"),
    ComputerObj=GetObject("WinNT://"+NameComp),       //Экземпляр объекта Computer
    Mess="";                                       //Текст сообщения
var LastErr;

// Делаю юзера
LastErr=Make_User("Администраторы","Putin_VV","Путин Владимир Владимирович","Президент РФ","PaRoLe-PaRole"); 

var DelUser="Medvedev";  // Имя удаляемого юзера

if (LastErr) {LastErr=Dele_User(DelUser)};                 // Удаляю юзера, если юзер сделан успешно
if (LastErr) {Mess=Mess+"\n Пользователь "+DelUser+" удален"} else {Mess=Mess+"\n !!! Пользователь "+DelUser+" не удален"}

WshShell.Popup(Mess,10,"Пересоздаем пользователя",64);

/*************  Конец *********************************************/
// Функции

// Удаляю пользователя с именем входа nu
//
function Dele_User(nu)
{
  var i_err=true;
  var Mess;

  try {ComputerObj.Delete("user",nu)};             //Сохраняем информацию на компьютере
  catch (e)
   {
     i_err=false;
//     Mess="\n Не удален пользователь "+nu+" "+e.description;
   }
//  if (i_err)
//   {
//     Mess="\n Пользователь "+nu+" удален";
//   }

//   WshShell.Popup(Mess,10,"Удаляем пользователей",64);

  return i_err;

}


// Создаю пользователя в группе ng 
//               с именем входа nu
//                   полное имя fu
//                     описание du
//             начальный пароль pu
//
// Сообщение о результате работы Mess должно быть описано и определено до вызова
//
function Make_User(ng,nu,fu,du,pu)
{
  var i_err=true;
  var UserObj=ComputerObj.Create("user",nu);       //Экземпляр объекта User

  UserObj.FullName=fu;                             //Добавляем полное имя
  UserObj.Description=du;                          //Добавляем описание созданного пользователя
  UserObj.SetPassword(pu);                         //Добавляем пароль

  try {UserObj.SetInfo()};                         //Сохраняем информацию на компьютере
  catch (e)
   {
     i_err=false;
     Mess="\n Не создан пользователь "+nu+" "+e.description;
   }
  if (i_err)
   {
     Mess="\n Пользователь "+nu+" создан";
     i_err=YesNever(nu);        // ставим юзеру птичку пароль никогда не меняется
   }
  
  if (ng != "" & i_err)  
   {
     i_err=UserInGroup(NameComp,ng,nu);
     if (i_err) {Mess=Mess+" в группе "+ng} else {Mess=Mess+", но в группу "+ng+" не помещен!!!"}
   }

   return i_err; 

}

// В компьютере nc в группу ng помещаю пользователя nu
function UserInGroup(nc,ng,nu)
{
var GroupObj= GetObject("WinNT://"+nc+"/"+ng),     //Связываемся с компьютером
    UserObj,                                       //Экземпляр объекта User
    i_err,Mess;

  i_err=true;
  try {GroupObj.Add("WinNT://"+nc+"/"+nu)};       //Сохраняем информацию на компьютере
  catch (e)
   {
      i_err=false;
      Mess="\n"+nu+" не помещен в группу "+ng+" "+e.description;
//      WshShell.Popup(Mess,1,"Ошибка при группировке",64);
   }
  return i_err; 
}


//// ставим юзеру птичку пароль никогда не меняется
function YesNever(NUser)
{
  var OUser,ltry=true;
  try     // Пытаемся найти имя в текущем компьютере
  {
    OUser=GetObject("WinNT://"+NameComp+"/"+NUser+",user");
  }

  catch (e)
  {
    ltry=e==0;
  }

  if (ltry)
  {
    var Never=OUser.Get("UserFlags");
    OUser.Put("UserFlags",0x10000);
    OUser.SetInfo();
  }
  return true;
}

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 15:04, 12-12-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Сценарий Create a local user account and add it to administrators group

Отправлено: 15:44, 12-12-2018 | #3


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Вот как я делал батником:
Код: Выделить весь код
net user chuvak1 P@ssw0rd! /add
net localgroup Администраторы chuvak1 /add
net localgroup Administrators chuvak1 /add
Полагаю, под PS1 переделать элементарно.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 15:52, 12-12-2018 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Создать нового пользователя и ...

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Доступ - Как создать нового администратора? somer Microsoft Windows 7 1 01-10-2013 14:56
WMI - скрипт, создающий нового пользователя, группу, и добавляющий пользователя в группу Niaoppla Скриптовые языки администрирования Windows 7 11-01-2012 19:34
Разное - Создать нового пользователя с профилем как копия существующего RasKolbas Microsoft Windows 7 4 03-09-2010 15:48
Как создать нового пользователя в Exchange2003? Kel2 Microsoft Exchange Server 1 09-02-2008 15:58




 
Переход