用Excel函式簡化批量匯入AD使用者及修改密碼

2021-09-22 04:44:02 字數 1852 閱讀 2844

近期公司的ad和exchange專案如預期的進展還不錯,趕上ad使用者的批量匯入,5k使用者,工作量很大哦,還好無意間看到一篇blog,講借助excel函式簡化**的輸入操作,試用了下還不錯,修改後分享給大家,增加**操作哦,原blog是沒有的哦。。。,廢話不多說轉入正題。。。。

通過指令碼的方式批量的匯入ad賬戶,或者批量修改密碼。方法很多的,網上教程也很多,不少朋友都知道,就是windows自帶的幾個cmd命令。就不再過多廢話這如何通過命令編輯指令碼來實現這個功能了,如果真有需要,大家可以google、baidu一下,很多的。

今天給大家分享借助excel的函式功能來簡化指令碼的編寫。網上很多是直接用txt文字編輯或者借助excel**補充完整後,轉換成csv格式的。像我們公司動輒5k使用者需要新增到ad中還要設定密碼,用複製貼上的方式得做無數遍啊,用嶽老師的話:得找幾個「表妹」來碼這些個**。。。。。。

想到很久前看到過一網友寫的一文章,借助excel函式來簡化輸入,於是自己試著做了下,效果還不錯。。。。

首先說下用到的命令,csvde.exe和dsmod.exe,具體用法可參考微軟kb庫

簡單說下csvde.exe中用到的定義值

dn,objectclass,samaccountname,description,userprincipalname,displayname,useraccountcontrol

dn:名字標示

objectclass:組的類別

samaccountname:2000以前版本:也是使用者登入名稱的意思

description:使用者描述

userprincipalname:使用者登入全程

displayname:使用者登入顯示的名稱

useraccountcontrol:對賬戶許可權進行控制,512啟動, 514禁用, 66048代表永不過期

本次共用到兩張**,如下,由於無法全顯示,已將**上傳附件

第一步批量匯入ad賬戶。在檔案的第一張**中,綠色的區域是需要我們手動添填入資訊的,主要是賬戶名、 ou、賬戶顯示名稱。以及描述,(注:ou一定要提前建好,關於批量ou可參考我的另一篇文章---一次批量匯入ou,本次實驗主要考慮到需要中文名稱及工號資訊,所以手動輸入的較多,對於不需要這兩項資訊的可修改下excel檔案,只需輸入賬戶名及ou即可,簡化操作)。其他區域都是寫固定格式,或者自動生成的(黃色及藍色區域))。最後我們只需要將藍色區域的字元內容copy到乙個txt文字檔案中,然後用「@」替換掉所有的「#」(函式中不支援輸入@)。另外,還需要將csvde.exe值定義的那行(本文中的紅色文字)放到txt檔案的第一行。這樣,csvde.exe所需要呼叫的文字,就製作完成了。

值得一提的是我們的資料**往往都是hr部門或者相關經過整理的資料,大多數都是乙個excel**,所以我們可以直接copy到這個excel裡面。這樣,連乙個乙個敲名字都不用了。不管使用者數量多少,幾次全選複製就ok了。。。。

接下來要做的就是將我們這個txt檔案拿到我們的域控中或者具有管理aduc許可權的計算機中,開啟cmd.exe,然後執行一條命令就完成匯入操作。如圖所示

開啟我們的aduc就能看到我們匯入的使用者了。。。

第二步是修改密碼。在檔案的第二張表中,沒有需要輸入的地方,如果我們需要修改使用者的密碼,只要將表中的綠色區域替換成實際密碼即可。然後將表二中的藍色區域字元,copy到txt檔案中。需要注意的是,我們需要將「-pwd」前面的那個逗號「,」用替換的方式一次性全部去掉。然後將這個txt文字的字尾改為.bat。最後以管理員許可權執行在域控中或者具有管理aduc許可權的計算機中即可。

最後一部啟用我們匯入的賬戶即可,可以批量啟用

如果我們的使用者很多,如我們5k使用者,bat執行的過程會持續乙個相對較長的時間。儘管如此,它都能大幅度提高我們的工作效率。

最好在操作時輸出乙個日誌檔案,方便我們時候查詢處理過程、排錯以及核對匯入的資訊是否正確。

巧用Excel函式,簡化批量匯入AD使用者及密碼修改

相信大家如果用ad的話,都碰見過一些頭疼的事情,特別是ad使用者的一攤子事情。前段時間在弄全球的ad規劃和部署,其中最耗時又不討好的就是使用者賬號的問題了。其中最主要的就是兩件事,乙個是新建使用者,乙個是改密碼。由於業務系統在海外上線,需要通過ad進行身份驗證,使得以前僅僅只面向集團總部一部分管理層...

巧用Excel函式,簡化批量匯入AD使用者及密碼修改

相信大家如果用ad的話,都碰見過一些頭疼的事情,特別是ad使用者的一攤子事情。前段時間在弄全球的ad規劃和部署,其中最耗時又不討好的就是使用者賬號的問題了。其中最主要的就是兩件事,乙個是新建使用者,乙個是改密碼。由於業務系統在海外上線,需要通過ad進行身份驗證,使得以前僅僅只面向集團總部一部分管理層...

用ADO向excel批量匯入數

和前面一篇用oledb的方法類似,我們可以用ado從recordset物件向excel批量插入資料,這個方法無法自動複製欄位名。我們需要引用ado和excel的com物件 參考 c code using system using system.collections.generic using sy...