ADModify.net 簡介

ADModify.net 簡介 發佈者 Marc Nivens 和 Dan Winter
本文對 ADModify (ADModify.net) 工具進行了介紹,該工具在排除 Microsoft Exchange Server 的疑難問題時十分有用。
功能概述
ADModify 使用 Microsoft Visual C#.NET 2003 編寫。其 2.0 版本經過改進,執行相同修改時所花費的時間僅僅是先前版本所需時間的一半。其功能集允許管理員批量修改任何 Active Directory 分區中的任何 Active Directory 目錄服務屬性,具有近乎無限的靈活性。管理員不再受限於硬編碼到該工具中的屬性,因爲 ADModify 可通過屬性名和屬性值修改任何屬性。ADModify 也不再受限於編寫在程序中的文本值。現在,它可以根據當前的 Active Directory 屬性動態生成值。
所有日誌均使用 XML 格式進行記錄,因此管理員可輕鬆地操縱和存儲數據,甚至可以使用 Undo(撤銷)這樣的功能。爲遵守 Microsoft Windows Server 2003 發出的倡議,即能夠在 GUI 中完成的任何工作也應該能夠通過命令行來完成,該工具還提供了一個具有完全相同功能的命令行版本。
ADModify 需要 .NET Framework。它不能跨網絡驅動器運行。
若要獲得 ADModify 工具,請聯繫微軟產品支持服務。有關如何聯繫微軟產品支持服務的更多信息,請參見微軟支持和幫助網站
您還可以通過 GotDotNet 網站獲得 ADModify 工具。有關獲得該工具的更多信息,請參見ADModify.NET:Workspace 主頁
   注意:
您還可通過本主題中提供的第三方網站信息,查找所需的計數信息。網站的 URL 可能隨時發生更改,恕不另行通知。
返回頁首返回頁首 Terminal Server 屬性
現在,可以使用 ADModify 修改 Windows Server 2003 Terminal Server 屬性。可在 Windows Server 2003 的“Active Directory 用戶和計算機”的“用戶”屬性頁面中設置所有 Terminal Server 屬性。ADModify 使用 TSUserExLib 庫,所以如果要修改 Terminal Server 設置,Windows Server 2003 是必需的。雖然不必運行 Windows Server 2003 域,但您需要在運行 Windows Server 2003 的服務器上運行該程序,以便實現這個特定的功能。
返回頁首返回頁首 郵箱權限
郵箱權限現在也可以進行批量修改。在處理郵箱權限時,有四個選項可供選擇:
   注意:
由於使用了 CDOEXM,必需在運行 ADModify 的計算機上安裝 Exchange Server 2003 或 Exchange 2000 Server Exchange System Manager。
轉儲郵箱權限 - 此選項將用戶郵箱權限中的所有訪問控制列表項 (ACE) 導出到一個 .xml 文件,並按繼承權限和非繼承權限進行分隔。管理員可使用該文件跟蹤郵箱權限,也可使用它導入權限。使用此選項時不支持 Undo(撤銷),因爲它是一個只讀操作。
導入郵箱權限 - 只要成功導出了郵箱權限,便可以使用“導入有效權限”導入它們。需要的所有東西僅是一個有效的 Mbxrights.xml 文件。使用此選項時不支持 Undo。
向郵箱權限批量添加用戶 - 利用此選項,可以將具有特定權限的用戶同時添加到多個郵箱。例如,可以向用戶 DOM\user1 授予對特定用戶子集的“完全郵箱訪問”。使用此選項時支持 Undo。
從郵箱權限中批量刪除用戶 - 與“向郵箱權限批量添加用戶”類似,但是此選項會從郵箱權限中刪除指定的用戶。使用此選項時支持 Undo。
返回頁首返回頁首 命名屬性
也許 ADModify 的最強大功能是其命名要修改的屬性的能力。包含字符串、布爾(真/假)值或整數值的任何屬性都可以被修改。不支持包含諸如安全標識符(SID)和長整型數據的屬性。
請觀察如下的屏幕截圖。
在屏幕截圖的相應字段中,填寫屬性名和值。對於涉及多個值的操作,請確信選擇了多值附加多值刪除。需要這麼做的原因是:如果您修改了具有多值的屬性並且沒有選擇多值附加多值刪除選項,那麼將使用新值覆蓋該屬性,而不會將新值附加到該屬性。
返回頁首返回頁首 使用變量
批量修改用戶時,管理員不再受限於使用編寫在程序中的文本值。ADModify 支持使用變量。變量允許您根據一個或多個當前屬性來爲屬性生成值。如果以單引號 (') 將值包括起來,則會將其視爲一個變量。如果您希望同時使用變量和文本值構建一個屬性,請記住:需要使用百分號 (%) 將變量和文本值分隔開。您還可以取屬性中的前 x 個字符並使用它。
變量示例:
使用 Description 屬性作爲您的值的語法:'description'
使用兩個屬性的語法,givenNamesn(使用空格分隔):%'givenName'% %'sn'%
使用多個屬性和文本值的語法:h:\homefolders\%'sAMAccountName'%\%'givenName'%\
取屬性第一個字符的語法:%1'givenName'%.%'sn'%@microsoft.com
如果您需要在屬性值中使用真正的百分號 (%) 或單引號 (') 字符,可使用正斜槓作爲轉義字符。可以混合使用變量和文本值,幷包括 % 和 ' 字符,只要使用的語法正確即可。
以下提供了一些示例:
若要賦“This is a percent sign:%”這個值,可使用:This is a percent sign:/%
若要賦“My username is 'username' ”這個值(這裏的用戶名爲 sAMAccountName),可使用:My username is /'%'sAMAccountName'%/'
返回頁首返回頁首 Undo 特性
管理員不再需要擔心對 Active Directory 用戶執行大批量更新這個問題了。除了刪除 Exchange 屬性導入郵箱權限選項,所有的修改都是可撤銷的。所有修改都被寫入到一個以當前日期和時間命名(格式爲 MMDDYYYYHHMMSS.xml)的日誌文件中。所有修改都記錄了新值和用戶的先前值。只要日誌文件保持完整,ADModify 就可分析它並撤銷先前所做的更改。除了在 .xml 文件中記錄更改之外,還有一個 Undo.log 文件。該文件包含 Undo 特性處理的所有用戶,記錄了跳過的用戶以及跳過該用戶的原因,並對所做更改進行了彙總。
命令行語法爲:admodcmd -undo filename.xml
返回頁首返回頁首 ADModify 的命令行用法
admodcmd.exe 工具是 ADModify 的一個全功能命令行版本。可以使用 admodcmd -? 查看命令行語法。常見管理任務的用法示例如下:
添加 [email protected] 的備用簡單郵件傳輸協議 (SMTP) 地址:
admodcmd -dn OU=MyOU,DC=domain,DC=com -addsmtp %1'givenName'%.%'sn'%@example.com
命名您想要修改的屬性,並修改描述字段以包含“My legacyExchangeDN is (legacyExchangeDN)”這個值,這裏的 (legacyExchangeDN) 是用戶的 legacyExchangeDN
admodcmd -dn OU=MyOU,DC=domain,DC=com -custom description "My legacyExchangeDN is %'legacyExchangeDN'%"
修改顯示名以讀取姓和名:
admodcmd -dn OU=MyOU,DC=domain,DC=com -custom displayName "%'sn'%, %'givenName'%"
將用戶的相對可辨識名稱從“名,姓”修改爲“姓,名”:
admodcmd -dn OU=MyOU,DC=domain,DC=com -modrdn "%'sn'%, %'givenName'%"
有關 admodcmd 的更多用法示例,請參閱 ADModify 幫助文件。
返回頁首返回頁首 針對 Exchange 管理員的技巧和提示
以下是一些 Exchange 管理員可能需要執行的常見任務。
設置擴展屬性
擴展屬性選項卡在 ADModify 已被刪除。現在,若要修改 extensionAttribute1 ~ 15,可以在自定義選項卡中進行。
修改 extensionAttribute1 ~ 15
1.
運行 ADModify,然後單擊修改屬性
2.
域列表框中,選擇域。
3.
域控制器列表框中,選擇域控制器。
4.
轉到用戶容器並展開它,通過選擇用戶對象來選擇要修改的用戶,然後單擊添加到列表
5.
在右側面板中,選擇用戶對象並單擊下一步
6.
自定義選項卡中,選擇執行自定義修改框。
7.
屬性名框中,輸入extensionAttributex,這裏的 x 是要修改擴展屬性的編號。
8.
屬性值框中,輸入擴展屬性的新值。
9.
單擊修改
在整個 Exchange 組織結構中設置“允許繼承的權限傳播給此對象”
由於 ADModify 可瀏覽並修改配置容器,因此您可對 Exchange 組織結構的層次結構進行批量修改。對於 Exchange 管理員而言,一個有用的功能便是該工具確保 Exchange 層次結構中的所有項都正確設置了繼承位這一能力。
批量修改層次結構中所有 Exchange 對象上的繼承位
1.
運行 ADModify,然後單擊修改屬性
2.
域列表中,選擇配置分區。
3.
域控制器列表框中輸入一個域控制器名稱,並單擊修改
4.
單擊自定義 LDAP 查詢。輸入篩選條件 (objectClass=*) 並單擊確定
5.
選擇遍歷子容器框。
6.
配置轉移到服務,並選擇Microsoft Exchange
7.
單擊添加到列表
8.
選擇右側窗格中的所有對象並單擊下一步
9.
單擊帳戶選項卡,然後選擇允許繼承權限設置旁邊的兩個複選框。
在刪除 Exchange 屬性之前保存 proxyAddresses
一些環境包含 proxyAddresses,它是手動輸入的,或者未由 Recipient Update Service 進行保存。在這些應用情境中,如果在未保存這些地址的情況下刪除 Exchange 屬性,便可能導致問題。若要保存 proxyAddresses,請執行如下操作。
保存 proxyAddresses
1.
運行 ADModify,然後單擊修改屬性
2.
從下拉列表中選擇域控制器。
3.
添加用戶並單擊下一步
4.
單擊自定義選項卡。在屬性名中,輸入 proxyAddresses,然後在屬性值中,輸入 null
上述過程將清空 proxyAddresses 屬性,但是會首先將當前的所有 proxyAddresses 記錄到 ADModify 的 .xml 日誌文件中。如果已經記錄到該文件中,則可以刪除這些屬性了。如果這些屬性已被恢復,請在撤銷模式下運行 ADModify 並選擇先前列出的日誌文件。撤銷模式將利用日誌文件中保存的數據替換當前的 proxyAddresses 集合。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章