嗨,Scripting Guy!我有辦法獲得 Active Directory 中所有用戶帳戶的列表嗎?
-- CB, Fremont, CA
你好,CB.截止目前,實(shí)現(xiàn)這個(gè)目的的最快、最容易的方法就是在 Active Directory 中搜索所有用戶帳戶。這里有一個(gè)簡(jiǎn)單的示例腳本,用來搜索 fabrikam.com 域;為了搜索您自己的域,根據(jù)需要編輯 LDAP 連接字符串(‘LDAP://dc=fabrikam,dc=com’)即可。例如,如果您的域名為 contoso.com,則應(yīng)該將連接字符串修改為‘LDAP://dc=contoso,dc=com’。
On Error Resume NextConst ADS_SCOPE_SUBTREE = 2Set objConnection = CreateObject("ADODB.Connection")Set objCommand = CreateObject("ADODB.Command")objConnection.Provider = "ADsDSOObject"objConnection.Open "Active Directory Provider"Set objCommand.ActiveConnection = objConnectionobjCommand.Properties("Page Size") = 1000objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREEobjCommand.CommandText = _"SELECT Name FROM ‘LDAP://dc=fabrikam,dc=com‘ WHERE objectCategory=‘user‘"Set objRecordSet = objCommand.ExecuteobjRecordSet.MoveFirstDo Until objRecordSet.EOFWscript.Echo objRecordSet.Fields("Name").ValueobjRecordSet.MoveNextLoop
關(guān)于這個(gè)腳本,有太多的東西需要解釋;如果您對(duì)它的編寫思想和具體工作原理感興趣,而且還想在 Active Directory 中搜索其他數(shù)據(jù),可以參閱先前的Scripting Guys Web 廣播 on this very topic.
聯(lián)系客服