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

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

Ответить
Настройки темы
VBS/WSH/JS - Windows AD 2003 и атрибуты пользователя

Аватара для oren_yastreb

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


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

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


Windows 2003 server. Active directory
Имя сервера Proliantd
Имя домена ARB.COM

Добрый день!

У меня в AD пользователи раскинуты по 12 подразделениям(P1,P2...P12). У каждого пользователя в атрибутах стоит галка "Запретить смену пароля пользователем" и "Срок действия пароля неограничен".

Мне нужно заставить пользователей поменять свой пароль. Т.Е. Убрать галочки "Запретить смену пароля пользователем" и "Срок действия пароля неограничен" и у каждого пользователя в подразделении поставить галку "Требовать смену пароля при следующем входе в систему".
Как это скриптом сделать?

Находил такой вариант, но он мне выдал только (null): 0x80005000
Set objUser = GetObject _
("LDAP://CN=user,OU=P1,DC=ARB,DC=com")
objUser.Put "pwdLastSet", 0
objUser.SetInfo

Отправлено: 14:33, 08-09-2011

 

Аватара для oren_yastreb

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


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

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


Получился у меня такой скипт . В принципе работает. Снимает галку "Срок действия пароля" и ставит "Требовать смену пароля".

Set objOU = GetObject ("LDAP://ou=P1,dc=ARB,dc=com")
objOU.Filter = Array("user")
For Each objUser In objOU
'wscript.echo objUser.adspath
objUserFlags = objUser.Get("UserAccountControl")

objPasswordExpirationFlag = 66048
'objPasswordExpirationFlag = 512

'objPasswordMustChanged = 0 ставит галку требовать смену пароля
objPasswordMustChanged = 0

objUser.Put "UserAccountControl", objPasswordExpirationFlag
objUser.Put "pwdLastSet", objPasswordMustChanged
objUser.SetInfo
Next

==============
Но вот проблема подразделение P1 имеет в Аctive Directory подразделения(B1,B2..B7). Т.е. P1 - это верхушка дерева.
Если в строке делаю Set objOU = GetObject ("LDAP://ou=B1,dc=ARB,dc=com") то получаю сообщение
"(null): Такой объект на сервере отсутствует."
Как правильно указать в строке Set objOU = GetObject ("LDAP://ou=??,dc=ARB,dc=com") подразделения B1..B7 ??

Отправлено: 15:54, 08-09-2011 | #2



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

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



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Windows Server 2003 - ошибка при удалении пользователя Aieven Microsoft Windows NT/2000/2003 17 23-12-2010 12:47
Перенос профиля пользователя Windows 2003 R2 rus Flint_ Microsoft Windows NT/2000/2003 3 28-04-2010 16:18
Настройки пользователя Terminal Server 2003 Staub Microsoft Windows NT/2000/2003 7 10-08-2007 19:15
Windows 2003 v64 EE сессия пользователя блокируется, если некоторое время не работать belok Microsoft Windows NT/2000/2003 2 21-07-2006 16:56
Как продлить лицензию у пользователя Windows Server 2003 novinnik Microsoft Windows NT/2000/2003 0 21-04-2006 09:47




 
Переход