AD帳號批量導入導出

一、批量導入帳戶

步驟及原理:

1、先用Excel表格做一個簡單模版,將其保存爲.csv格式!

2、再用For命令結合dsadd 來完成批量創建用戶!

 

使用到的命令:(注:以下命令裏參數爲筆者做測試,別忘記修改!)

for /f  "tokens=1,2,3,4,5 delims=," %a in (D:\USER1.csv) do dsadd user "cn=%c,ou=IT,dc=test,dc=com"  -samid %d -upn %d -ln %a -fn %b -pwd %e -disabled yes -mustchpwd yes

 

以上命令簡介:

tokens=1,2,3,4,5 :表示有五個變量(參數爲表格內的5個參數,順序爲A/B/C/D/E 這5個參數下面會用到)
delims=, :表示分隔符爲“,”
%a in (c:\baidu.csv):表示變量從路徑“c:\baidu.csv”中取數據
dsadd :添加命令
cn=%c,ou=IT,dc=baidu,dc=com :表示所創建的用戶名與創建位置
-samid %d  -upn %d:表示登錄名爲變量d
-ln %a:設置用戶姓爲變量a
-fn %b:設置用戶名爲變量b
-pwd %e:設置密碼爲變量e
-disabled yes :表示導入以後爲禁用狀態

-mustchpwd yes:表示下次登錄要修改密碼, 默認值: no

 

開始創建用戶:

一、創建一個累似以下內容的表格



二、然後將其保存爲.Csv格式


三、在AD上創建一個OU(IT),然後運行CMD,鍵入以下命令並執行:

 

for /f "tokens=1,2,3,4,5 delims=," %a in (d:\USER1.csv) do dsadd user "cn=%c,ou=IT,dc=test,dc=com" -samid %d -upn %[email protected] -fn %b -ln %a -pwd %e -disabled no  -mustchpwd yes

 

 

二、使用CSVDE導出帳戶

語法

Csvde [-i] [-f FileName] [-s ServerName] [-c String1 String2] [-v] [-j Path] [-t PortNumber] [-d BaseDN] [-r LDAPFilter] [-p Scope] [-l LDAPAttributeList] [-o LDAPAttributeList] [-g] [-m] [-n] [-k] [-a UserDistinguishedName Password] [-b UserName Domain Password]

參數

-i

指定導入模式。如果沒有指定,默認模式爲導出。

-f FileName

識別導入或導出文件名。

-s ServerName

指定域控制器執行導入或導出操作。

-c String1 String2

將所有 String1項替換爲 String2。從一個域將數據導入到另一個域以及導出域的可分辨名稱 (String1) 需要替換爲導入域的可分辨名稱 (String2) 時普遍使用該操作。

-v

設置 verbose 模式。

-j Path

設置日誌文件位置。默認路徑爲當前路徑。

-tPortNumber

指定輕型目錄訪問協議 (LDAP) 端口號。默認 LDAP 端口爲 389。全局編錄端口爲 3268。

-dBaseDN

爲數據導出設置搜索庫的可分辨名稱。

-rLDAPFilter

爲數據導出創建 LDAP 搜索篩選器。

-pScope

設置搜索範圍。搜索範圍選項爲 Base、OneLevel 或 SubTree。

-lLDAPAttributeList

設置返回至導出查詢結果中的屬性列表。屬性可由 LDAP 按任何順序返回,CSVDE 不嘗試進行任何列排序。如果省略該參數,則返回所有屬性。

-oLDAPAttributeList

設置要從導出查詢結果中省略的屬性列表。從 Active Directory 中導出對象然後將對象導入到另一符合 LDAP 的目錄中通常使用該方法。如果另一個目錄不支持屬性,您可以使用該選項從結果集中忽略屬性。

-g

忽略分頁搜索。

-m

忽略僅適用於 Active Directory 對象的屬性,如 ObjectGUID、objectSID、pwdLastSet 和 samAccountType 屬性。

-n

忽略二進制值導出。

-k

在導入操作期間忽略錯誤並繼續處理。以下是可忽略錯誤的完整列表:“對象已經存在”、“約束衝突”和“屬性或值已經存在”。

-aUserDistinguishedName Password

將該命令設置成使用提供的 UserDistinguishedNamePassword來運行。默認情況下,將使用當前登錄到網絡的用戶的憑據運行該命令。此操作對用戶名和密碼進行了簡單的 LDAP 綁定。

-bUserName Domain Password

將命令的運行方式設置爲 UsernameDomainPassword。默認情況下,將使用當前登錄到網絡的用戶的憑據運行該命令。此操作將 LDAP 與 NEGOTIATE 身份驗證方法安全地綁定在一起。

-?

顯示命令菜單。

備註

·                                 不能使用 csvde導入用戶密碼,因爲密碼必須通過加密通道發送。Csvde不支持安全套接字層 (SSL) 或加密 LDAP 通信。前面的密碼參考與運行 csvde命令的用戶的憑據相關。與用戶的設置密碼無關。

 

示例

   使用 CSVDE 導出現有對象的列表相當簡單。
    最簡單的用法是:
    csvde –f ad.csv  將 Active Directory 對象導出到名爲 ad.csv 的文件。–f 開關表示後面爲輸出文件的名稱。
    但是必須注意,上述的用法是很簡單,但是導出來的結果可能存在太多你不希望要的記錄和信息。
    如果要實現更精確的導出記錄,可以使用 -d 和 -r 以及 -l 參數。
    其中:-d 用來指定特定的搜索位置和範圍
          -r 用來指定特定的搜索對象類型
          -l 用來指定導出對象的具體屬性
    如:
csvde -f users.csv -d "ou=IT,dc=test,dc=com" -r "(&(objectcategory=person)(objectclass=user))" -l DN,objectClass,description


 注意:如果使用CSVDE導出的帳戶信息中存在中文,會存在亂碼的可能,可以加-U參數來解決。


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