位置:海鸟网 > IT > ASP.NET >

Active Directory 对象的控制

方法一
LDIFDE.exe,用于批量导入和导出 Active Directory 对象。使用 LDIFDE 可以将新用户记录导入目录,或将特定用户的特定信息导出到一个文本文件中。LDIFDE 默认采用的是输出模式(从目录中读取信息)。如果添加了 -i 选项,则还可以将更改写入目录(请参阅 Microsoft 知识库文章 Q237677: Using LDIFDE to Import and Export Directory Objects to the Active Directory,“使用 LDIFDE 向 Active Directory 中导入或从中导出目录对象”)。另外,如果只想对特定 OU(组织单位)中的所有用户导出和提取特定的细节,如用户名、职务和登录名,可以运行以下命令:
ldifde -f C:\ldif\ExportUsers.ldf –s SERVERNAME -d "OU=YourOUname,dc=YourDomainName,dc=com" -p subtree -r "(objectClass=User)" -l "cn,givenName,Title,SamAccountName"


方法二
使用vbs脚本自己编写一个(如下)
'Global variables
Dim oContainer
Dim OutPutFile
Dim FileSystem

Set FileSystem = Wscript.CreateObject("scripting.FileSystemObject")
Set OutPutFile = FileSystem.CreateTextFile("asd.txt", True)  
 '输出内容添加入文件名称为asd.txt文件中

Set oContainer = GetObject("WinNT://billgates.")    'Winnt://为本机名称  或 LDAP为域名称

EnumerateUsers(oContainer)


OutPutFile.Close
Set FileSystem = Nothing
Set oContainer = Nothing

Wscript.Echo "Finished"                  '弹出对话框finish
Wscript.Quit(0)

Sub EnumerateUsers(oCont)
Dim oUser

For Each oUser In oCont
Select Case LCase(oUser.Class)
Case "group"
If Not IsEmpty(oUser.name) Then
OutPutFile.WriteLine "user: " & oUser.name     '显示组名称或用户名称
End If
If Not IsEmpty(oUser.Class) Then
OutPutFile.WriteLine "Class: " & oUser.Class     '显示组类型或用户类型
End If
If Not IsEmpty(oUser.member) Then
OutPutFile.WriteLine "Members: " & oUser.member   '显示组成员
End If
End Select

Next
End Sub