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


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

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

 

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

命令腳本:

1 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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM