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
Header iads.h

こちらもご覧ください

ADSI 列挙