AD域匯入匯出使用者

2021-09-21 10:38:33 字數 1787 閱讀 6272

作為域管理員,有時我們需要批量地向ad域中新增使用者帳戶,這些使用者帳戶既有一些相同的屬性,又有一些不同屬性。如果在圖形介面逐個新增、設定,那麼需要的時間和人力會超出能夠承受範圍。一般來說,如果不超過10個,我們可利用ad使用者帳戶複製來實現。如果再多的話,就應該考慮使用使用命令列工具,實現批量匯入匯出物件。微軟預設提供了兩個批量匯入匯出工具,分別是csvde(csv目錄交換)和ldifde(ldap資料互換格式目錄交換)。

具體選擇上述哪個工具取決於需要完成的任務。如果需要建立物件,那麼既可以使用csvde,也可以使用ldifde,如果需要修改或刪除物件,則必須使用ldifde。本文不涉及使用csvde匯入物件。而是換另一種匯入匯出ad帳戶思路:使用csvde工具匯出ad帳戶到csv格式的檔案中,再使用for語句讀取該檔案,使用dsadd命令進行批量新增。

具體步驟:

一:使用csvde匯出帳戶

使用 csvde 匯出現有物件的列表相當簡單。

最簡單的用法是:

csvde –f ad.csv  將 active directory 物件匯出到名為 ad.csv 的檔案。–f 開關表示後面為輸出檔案的名稱。

但是必須注意,上述的用法是很簡單,但是匯出來的結果可能存在太多你不希望要的記錄和資訊。

如果要實現更精確的匯出記錄,可以使用 -d 和 -r 以及 -l 引數。

其中:-d 用來指定特定的搜尋位置和範圍

-r 用來指定特定的搜尋物件型別

-l 用來指定匯出物件的具體屬性

如:csvde –f users.csv –d "ou=users,dc=contoso,dc=com" –r       "(&(objectcategory=person)(objectclass=user))" –l dn,objectclass,description

注意:如果使用csvde匯出的帳戶資訊中存在中文,會存在亂碼的可能,可以加-u引數來解決。

二:批量匯入帳戶

首先需要明確的概念是,要實現批量匯入帳戶,必須要存在乙個已包括多個帳戶資訊的檔案。沒有檔案,無法實現批量匯入。

假設之前已經通過csvde工具匯出過這樣的乙個檔案users.csv,且檔案內容如下

姓 名   全名   登入名      密碼

張,三,  張三,  three.zhang,pass01

李,四,  李四,  four.li,    passo2

王,五,  王五,  five.wang,  pass03

劉,六,  劉六,  six.liu,    passo4

趙,七,  趙七,  seven.zhao, pass05

有了上述格式的檔案後,我們就可以使用for命令來讀取檔案中的每條資訊並利用dsadd實現帳號新增。

具體語句如下:

c:\>for /f "tokens=1,2,3,4,5 delims=," %a in (uses.csv) do dsadd user "cn=%c,ou=

newusers,dc=contoso,dc=com" -samid %d -upn %[email protected] -fn

%b -ln %a -pwd %e -disabled no

作用:將上述檔案中五個帳戶新增到contoso.com域,名為newusers的ou中,且預設已啟用使用者。

其中:-samid為登入名

-upn為upn登入名

-fn為 名

-ln為 姓

-pwd為 密碼

簡單解釋一下for語句

/f 表示從檔案中讀取資訊

tokens表示每行使用的記號,對應於後面的變數具體的值

delims表示每個字段之間的分隔符

批量匯入 匯出域(活動目錄 AD)使用者帳戶

批量匯入 匯出域 活動目錄 ad 使用者帳戶 exchange 相關 批量匯入 匯出域 活動目錄 ad 使用者帳戶 在活動目錄的管理中會遇到對使用者進行批量操作的問題,例如,在公升級作業系統時或在剛剛使用活動目錄時,管理人員需要批量的新增或刪除使用者帳戶。批量匯入 匯出域使用者可以使用windows...

域使用者如何匯入匯出

第一步匯出按以下命令 c documents and settings administrator ldifde f user04.ldf d dc liangshan,d c com r objectclass user l objectclass,displayname,name 連線到 zxh...

VBScripit 匯出AD使用者資訊

新建文字,把以下 拷貝進去並修改ldap 儲存為.vbs檔案。然後雙擊執行之後就可以在當前資料夾獲得user.csv的檔案。const ads scope subtree 2 set objconnection createobject adodb.connection set objcommand...