使用工具Csvde導出域中所有用戶信息

    有時我們需要獲取AD域用戶中的信息及狀態,想知道哪些用戶帳號是被禁用的,哪些用戶帳號是正常的,用戶的部門、電話、職位信息等等。

下面我將自己做的實驗步驟分享一下。


第1步:首先用腳本命令將AD用戶信息導出,導的時候可以根據自己的需要,導出有用的用戶信息,過濾掉不需要的信息。

命令腳本:

csvde -d "ou=XX公司,DC=contoso,DC=com" -r "(&(objectcategory=person)(objectClass=user))" -l "name,sAMAccountName,description,title,department,telephoneNumber,mail,userAccountControl" -f C:\Users\Administrator\Desktop\Users-List.csv -s contoso.com -u

腳本解釋:

-d "ou=users,ou=XX公司,DC=XXXX,DC=Com"中ou是組織結構,ou=users,ou=XX公司代表的含義是XX公司 組織下的users組織,這是層級結構表示,命令行中由左至右對應層次中的由低至高。DC是域名,也是層級結構,DC=XXXX,DC=Com,表示Com下的XXXX也就是域名XXXX.com。比如abc.XXX.com對應DC=abc,DC=XXXX,DC=Com。


-r "(&(objectcategory=person)(objectClass=user))"是篩選要導出的數據,(objectClass=user)是定義大類,只導用戶信息,但是AD的user 除了用戶信息還包括computer等信息,所以再用(objectcategory=person)篩選,這樣就只有用戶信息了,如果這裏省略就會導出所有AD信息相當亂。


-l "name,userPrincipalName"是需要導出用戶信息具體字段,這裏分別是名稱和登錄名,其它的字段可以參見下面圖片。


-f C:\Users\Administrator\Desktop\Users-List.csv 指的是導出文件路徑,但是用戶的中文信息會以16機制代碼顯示,所以後面加一個-u,但這也有弊端,加-u後導出數據就混在一列裏,可以用excel的導入文本,以逗號分列功能分開即可。


-s servername 要綁定到的服務器(默認爲計算機域的 DC)


在DC服務器上,運行cmd,輸入腳本命令,運行後得到一個csv文件,再用Excel的逗號分列功能分開後得到以下信息

wKioL1mNfR_AAXZaAAJKdVSr-eQ591.jpg


這裏只是導出了我要的部分,如果需要導出其他信息,請參考本文最後的幾張圖片:《用戶信息參數名對照圖》


第2步:整理表格。在DN這一列存在用戶的姓名,以及所隸屬的組織,比較難看,我們用Excel函數將他顯示成我們想要的效果。

在A列後面,插入3列,在B2列輸入函數

=TRIM(LEFT(SUBSTITUTE(MID(SUBSTITUTE($A2,"=",REPT(" ",999)),COLUMN(A2)*999,999),",",REPT(" ",999)),999))

然後橫向拖動這列到C2,D2,再縱向拉下去,最後就把OU後面的部門都分列顯示了。如下圖所示:

wKiom1mNgbeSMEv_AAImZctin3g218.jpg


再把第一行標題修改一下,表格就很好看了。

wKioL1mNgl6whq9zAAEMWHw02q4492.jpg


補充說明一下userAccountControl參數,這個表示帳號狀態,他的數值請參考下圖:

wKiom1mNg-mRRvOTAAOmStOG1UM698.jpg


以下圖片是《用戶信息參數名對照圖》

wKiom1mNhDrAXbxmAACRSeGYvoo896.gif


wKioL1mNhDvABwYbAAC7X-wtBmU623.gif


wKiom1mNhDuB5LyxAABmj8HeODE836.gif


在此寫下這篇日誌,供大家參考查閱、經驗分享、信息共享。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章