Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Обратите внимание, что в таблице нет флага для параметра «User Must Change Password at Next Logon». Для установки флага следует менять значение свойства PasswordExpired. О том, как это сделать, речь пойдет позже. Для просмотра и изменения шестнадцатеричных флагов используют операторы Or, Xor и And следующим образом:
n оператор Or – для начальной установки бита. На практике используется в случае создания новой учетной записи пользователя;
n оператор Xor – для переключения статуса флага. Флаг может быть активизирован и дезактивирован;
n оператор And – для просмотра значения, хранящегося в базе SAM.
Для просмотра значения флага используется функция Get(). Рассмотрим пример, в котором прочитаем значение параметра ADS_UF_DONTEXPIREPASSWD – управление флагом «Password Never Expires»:
Пример 15
Set obj=GetObject("WinNT:")
For Each str In obj
DomainName=str.Name
Next
Set UserName="Value"
temp=""
Set element=GetObject("WinNT://" & DomainName & "/"& UserName)
flag=element.Get("UserFlags")
if (flag AnD &H10000)<>0 then
temp="Флаг установлен"
else
temp="Флаг не установлен"
end if
MsgBox temp
Для изменения значения флага используется функция Put(), которая имеет следующий формат: value.Put «UserFlags» String. Рассмотрим использование данной функции на примере, в котором изменим значение параметра на противоположное ADS_UF_DONTEXPIREPASSWD. Для того чтобы изменения вступили в силу, необходимо использовать метод value.SetInfo.
Пример 16
Set obj=GetObject("WinNT:")
For Each str In obj
DomainName=str.Name
Next
ADS_UF_DONTEXPIREPASSWD=&H0040
Set UserName="Value"
Set element=GetObject("WinNT://" & DomainName & "/"& UserName)
element.put "userFlags", element.Get("UserFlags") Xor ADS_UF_DONTEXPIREPASSWD
element.setinfo
MsgBox element.get("UserFlags")
Подкласс Group
Подкласс Group включает в себя 2 параметра: описание и SID группы. Чтение этих параметров происходит аналогичным способом, описанным в предыдущем разделе. Изменение описание группы осуществляется использованием метода SetInfo.
Взаимосвязь учетных записей пользователей и групп
В этом параграфе будут рассмотрены вопросы добавления и исключения учетной записи пользователя из группы членства пользователей в группе, принадлежность пользователя к группам.
1) Добавление пользователя в группу осуществляется с помощью функции Add(), для удаления пользователя – функция Remove(). При использовнии метода Add() чтобы изменения вступили в силу, необходимо использовать метод SetInfo. Удаление учетной записи пользователя из группы происходит сразу после вызова метода Remove.
Пример 17. Добавление учетной записи Value_Name в группу Value_Group
Set obj=GetObject("WinNT:")
For Each str In obj
DomainName=str.Name
Next
Set UserName="Value_Name"
Set GroupName="Value_Group"
Set element_user=GetObject("WinNT://" & DomainName & "/"& UserName & ", user")
Set element_group=GetObject("WinNT://" & DomainName & "/"& GroupName & ", group")
element_group.Add(element_user.ADsPath)
element_group.SetInfo
Для удаления учетной записи из группы в приведенном примере последние две строки необходимо заменить на строку element_group.Remove(element_user.ADsPath).
2) Для перечисления всех пользователей группы, например, группы GroupName, используют свойство Members:
Пример 18