Поделиться через


перечисление ADS_GROUP_TYPE_ENUM (iads.h)

Перечисление ADS_GROUP_TYPE_ENUM указывает тип объектов группы в ADSI.

Синтаксис

typedef enum __MIDL___MIDL_itf_ads_0001_0023_0001 {
  ADS_GROUP_TYPE_GLOBAL_GROUP = 0x2,
  ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP = 0x4,
  ADS_GROUP_TYPE_LOCAL_GROUP = 0x4,
  ADS_GROUP_TYPE_UNIVERSAL_GROUP = 0x8,
  ADS_GROUP_TYPE_SECURITY_ENABLED = 0x80000000
} ADS_GROUP_TYPE_ENUM;

Константы

 
ADS_GROUP_TYPE_GLOBAL_GROUP
Значение: 0x2
Указывает группу, которая может содержать учетные записи из того же домена и другие глобальные группы из того же домена. Этот тип группы можно экспортировать в другой домен.
ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP
Значение: 0x4
Указывает группу, которая может содержать учетные записи из любого домена, другие локальные группы домена из того же домена, глобальные группы из любого домена и универсальные группы. Этот тип группы не должен включаться в списки управления доступом к ресурсам в других доменах.

Этот тип группы предназначен для использования с поставщиком LDAP.
ADS_GROUP_TYPE_LOCAL_GROUP
Значение: 0x4
Указывает группу, идентичную группе ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP , но предназначенную для использования с поставщиком WinNT.
ADS_GROUP_TYPE_UNIVERSAL_GROUP
Значение: 0x8
Указывает группу, которая может содержать учетные записи из любого домена, глобальные группы из любого домена и другие универсальные группы. Этот тип группы не может содержать локальные группы домена.
ADS_GROUP_TYPE_SECURITY_ENABLED
Значение: 0x80000000
Указывает группу с включенной безопасностью. Эту группу можно использовать для применения списка управления доступом к объекту ADSI или файловой системе.

Комментарии

Так как VBScript не может считывать данные из библиотеки типов, приложения VBScript не распознают константы, как определено выше. Вместо этого используйте числовые константы, чтобы задать соответствующие флаги в приложении VBScript. Чтобы использовать символьные константы в качестве хорошей практики программирования, напишите явные объявления таких констант, как показано здесь, в приложении VBScript.

Примеры

В следующем примере кода показано, как можно использовать элементы этого перечисления.

Dim rootDSE // IADs
Dim dom // IADsContainer
Dim grp // IADs
Public Const ADS_GROUP_TYPE_GLOBAL_GROUP = &H2
Public Const ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP = &H4
Public Const ADS_GROUP_TYPE_UNIVERSAL_GROUP = &H8
Public Const ADS_GROUP_TYPE_SECURITY_ENABLED = &H80000000

On Error Resume Next
 
Set rootDSE = GetObject("LDAP://RootDSE")
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Exit Sub
End If

Set dom = GetObject("LDAP://" & rootDSE.Get("defaultNamingContext"))
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Set rootDSE = Nothing
    Exit Sub
End If

Set rootDSE = Nothing
 
' Creating Secured Global Group.
Set grp = dom.Create("group", "CN=group1")
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Set dom = Nothing
    Exit Sub
End If

grp.Put "samAccountName", "group1"
grp.Put "groupType", ADS_GROUP_TYPE_GLOBAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED
grp.SetInfo
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Set dom = Nothing
    Set grp = Nothing
    Exit Sub
End If
 
Set grp = Nothing
 
' Creating Distribution List Local Group.
Set grp = dom.Create("group", "CN=group2")
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Set dom = Nothing
    Exit Sub
End If

grp.Put "samAccountName", "group2"
grp.Put "groupType", ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP
grp.SetInfo
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Set dom = Nothing
    Set grp = Nothing
    Exit Sub
End If

Set grp = Nothing
 
' Create Secured Universal Group (ONLY IN NATIVE MODE).
Set grp = dom.Create("group", "CN=group3")
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
    Set dom = Nothing
    Exit Sub
End If

Set grp = Nothing

grp.Put "samAccountName", "group3"
grp.Put "groupType", ADS_GROUP_TYPE_UNIVERSAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED
grp.SetInfo
If (Err.Number<>0) Then
    MsgBox("An error has occurred. " & Err.Number)
End If

Set dom = Nothing
Set grp = Nothing

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Верхняя часть iads.h

См. также раздел

Перечисления ADSI