Вывод информации о пользователе и смена его пароля
Вывод информации о пользователе и смена его пароля
В листинге 11.4 приведен сценарий UserInfo.js, в котором выводится на экран информация о созданном в сценарии AddUser.js пользователе XUser (рис. 11.2).
Рис. 11.2. Информация о локальном пользователе XUser
Для получения этой информации мы производим связывание с нужным пользователем, т.е. создаем экземпляр UserObj объекта User и читаем данные из полей этого объекта:
//Связываемся с пользователем XUser компьютера 404_Popov
UserObj=GetObject("WinNT://404_Popov/XUser, user");
//Формируем строку с информацией о пользователе
SInfо="Информация о пользователе XUser: ";
SInfо+="Имя: "+UserObj.Name+" ";
SInfо+="Описание: "+UserObj.Description+" ";
//Выводим сформированную строку на экран
WScript.Echo(SInfo);
После этого в сценарии выдается запрос на изменение пароля пользователя XUser. Для этого мы используем метод Popup() объекта WshShell:
//Создаем объект WshShell
WshShell=WScript.CreateObject("WScript.Shell");
//Запрос на изменение пароля
Res=WshShell.Popup("Изменить пароль у XUser?", 0, "Администрирование пользователей", vbQuestion+vbYesNo);
В случае утвердительного ответа пароль изменяется с помощью метода SetPassword() объекта User, после чего все произведенные изменения сохраняются на рабочей станции с помощью метода SetInfo():
if (Res==vbYes) {
//Нажата кнопка "Да"
//Устанавливаем новый пароль
UserObj.SetPassword("NewPassword");
//Сохраняем сделанные изменения
UserObj.SetInfо();
WScript.Echo("Пароль был изменен");
}
Листинг 11.4. Вывод информации о пользователе компьютера и смена его пароля
/********************************************************************/
/* Имя: UserInfo.js */
/* Язык: JScript */
/* Описание: Вывод информации о пользователе компьютера и смена */
/* его пароля */
/********************************************************************/
var
UserObj, //Экземпляр объекта User
Res, //Результат нажатия кнопки в диалоговом окне
SPassword, //Строка с новым паролем
SInfo; //Строка для вывода на экран
//Инициализируем константы для диалогового окна
var vbYesNo=4,vbQuestion=32,vbYes=6;
//Связываемся с пользователем XUser компьютера 404_Popov
UserObj=GetObject("WinNT://404_Popov/XUser,user");
//Формируем строку с информацией о пользователе
SInfo="Информация о пользователе XUser: ";
SInfo+="Имя: "+UserObj.Name+" ";
SInfo+="Описание: "+UserObj.Description+" ";
//Выводим сформированную строку на экран
WScript.Echo(SInfo);
//Создаем объект WshShell
WshShell=WScript.CreateObject("WScript.Shell");
//Запрос на изменение пароля
Res=WshShell.Popup("Изменить пароль у XUser?", 0,
"Администрирование пользователей", vbQuestion+vbYesNo);
if (Res==vbYes) { //Нажата кнопка Да
//Устанавливаем новый пароль
UserObj.SetPassword("NewPassword");
//Сохраняем сделанные изменения
UserObj.SetInfo();
WScript.Echo("Пароль был изменен");
} else WScript.Echo("Вы отказались от изменения пароля");
/************* Конец *********************************************/