|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
15.18 ADSI. Работа с объектом группы и интерфейс IADsGroup Интерфейс IADsGroup в скриптах ADSI на VBScript, создание групп в Active Directory, работа со свойствами групп, добавление пользователей в группы, получение списка членов группы из скрипта Группы в Active Directory обычно используются для целей:
С группами можно работать как средствами провайдера LDAP, так и средствами провайдера WinNT. Создание группы производится, как правило, при помощи метода Create() интерфейса IADsContainer вышестоящего контейнерного объекта (домена или организационного подразделения). Например, создать группу Script Users в организационном подразделении HQ в домене NWTRADERS1.MSFT можно следующим образом: Set oOU = GetObject("LDAP://OU=HQ,DC=nwtraders1,DC=msft") Set oGroup = oOU.Create("group", "CN=Script Users") oGroup.Put "groupType", &H4 Or &H80000000 oGroup.Put "samAccountName", "Script Users" oGroup.Put "name", "Script Users" oGroup.Put "displayName", "Script Users" oGroup.Put "description", "Script Users Security Group" oGroup.SetInfo Прокомментируем значения, которые назначаются атрибуту groupType. Для этого атрибута используется пять значений:
Если тип группы не указывать, то по умолчанию будет создана глобальная группа распределения. Получение ссылки на существующую группу можно произвести как при помощи провайдера LDAP: Set oGroup = GetObject _ ("LDAP://CN=Script Users,OU=HQ,DC=nwtraders1,DC=msft") так и при помощи провайдера WinNT: Set oGroup = GetObject("WinNT://nwtraders1/Script Users") Объект группы поддерживает стандартные интерфейсы ADSI (IADs, IADsPropertyList), а также специализированный интерфейс IADsGroup с важными методами. Отметим, что несмотря на удобство этих методов, многие важные свойства групп (например, тип группы) через данный интерфейс недоступны и работать с ними придется напрямую средствами интерфейсов PropertyList/PropertyEntry/PropertyValue. Ниже представлена информация о свойствах и методах интерфейса IADsGroup:
Set oGroup = GetObject _ ("LDAP://CN=Script Users,OU=HQ,DC=nwtraders1,DC=msft") Wscript.Echo oGroup.Description
путь в формате свойства AdsPath для добавляемого объекта: Set oGroup = GetObject _ ("LDAP://CN=Script Users,OU=HQ,DC=nwtraders1,DC=msft") oGroup.Add "LDAP://CN=Alexander Ivanov,OU=HQ,DC=nwtraders1,DC=msft" SID добавляемого объекта в различных форматах: oGroup.Add _ "LDAP://SID=<010500000000000515000000c6bb507afbda8b7f43170a325b040000>" или (только в Windows 2003): oGroup.Add _ "LDAP://<SID=S-1-5-21-2052111302-2139871995-839522115-1115>" или (при использовании провайдера WinNT): oGroup.Add "WinNT://S-1-5-21-35135249072896"
Set oGroup = GetObject _ ("LDAP://CN=Script Users,OU=HQ,DC=nwtraders1,DC=msft") For Each Obj In oGroup.Members Wscript.Echo Obj.Name & vbTab & Obj.ADsPath Next
Set oGroup = GetObject _ ("LDAP://CN=Script Users,OU=HQ,DC=nwtraders1,DC=msft") oGroup.Remove "LDAP://CN=Alexander Ivanov,OU=HQ,DC=nwtraders1,DC=msft"
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||