如何在 Active Directory 中還原已刪除的使用者帳戶及其群組成員資格

本文提供如何在 Active Directory 中還原已刪除的使用者帳戶和群組成員資格的相關資訊。

原始產品版本:   Windows Server 2019,Windows Server 2016,Windows Server 2012 R2
原始 KB 編號:   840001

簡介

您可以使用數種方法還原已刪除的使用者帳戶、電腦帳戶和安全性群組。 這些物件統稱為安全性主體。

最常見的方法是在以 Windows Server 2008 R2 及更新版本為基礎的網域控制站上啟用 AD 回收站功能。 如需此功能的詳細資訊,包括如何啟用它及還原物件,請參閱 Active Directory 回收站逐步指南

如果您無法使用此方法,則可以使用下列三種方法。 在所有三個方法中,您會以權威性的方式還原刪除的物件,然後還原已刪除的安全性主體的群組成員資格資訊。 當您還原已刪除的物件時,您必須 member memberOf 在受影響的安全性主體中還原先前的和屬性值。

注意

在以 Windows Server 2008 R2 及更新版本為基礎的網域控制站上啟用 AD 回收站功能,即可簡化 Active directory 中已刪除的物件。 如需此功能的詳細資訊,包括如何啟用它及還原物件,請參閱 Active Directory 回收站逐步指南

其他相關資訊

方法1和2為網域使用者和系統管理員提供更好的體驗。 這些方法會將新增至安全性群組中所做的新增至最近的系統狀態備份時間與刪除發生時間之間的安全性群組。 在方法3中,您不會對安全性主體進行個別調整。 相反地,您可以在最後一次備份時,將安全性群組成員資格回復至其狀態。

大部分大規模的刪除作業都會意外進行。 Microsoft 建議您採取數個步驟,避免其他人大量刪除物件。

注意

若要防止意外刪除或移動物件 (尤其是組織單位) 、兩個拒絕存取控制專案 (ace) 可以新增到每個物件的安全性描述項中 (拒絕 刪除 & 刪除樹) 和一個拒絕存取控制專案 (ace) 可以新增至每個物件之父代的安全性描述項 (deny delete CHILD) 。 若要這麼做,請使用 Active Directory 使用者和電腦、ADSIEdit、LDP 或 DSACLS 命令列工具。 您也可以變更組織單位之 AD 架構中的預設許可權,以供預設包含這些 Ace。

例如,若要保護呼叫的組織單位。 稱為「MyCompany」的父組織單位所呼叫的 AD 網域中的使用者 CONTOSO.COM ,請進行下列設定:

若為 MyCompany 組織單位,新增拒絕 ACE 以供 個物件使用 這個僅限此物件 的範圍中 刪除子 系:

DSACLS "OU=MyCompany,DC=CONTOSO,DC=COM" /D "EVERYONE:DC"/

針對 [使用者] 組織單位,新增 [拒絕 ACE] 供 個物件 刪除及刪除樹****只有此物件 範圍:

DSACLS "OU=Users,OU=MyCompany,DC=CONTOSO,DC=COM" /D "EVERYONE:SDDT"

在 Windows Server 2008 中的 [Active Directory 使用者和電腦] 嵌入式管理單元包含 [物件] 索引標籤上的 [防止意外刪除] 核取方塊。

注意

必須啟用 [ 高級功能 ] 核取方塊,才能查看該索引標籤。

當您使用 Windows Server 2008 中的 [Active Directory 使用者和電腦] 建立組織單位時,會出現 [ 防止意外刪除的容器 ] 核取方塊。 預設會選取此核取方塊,而且可取消選取此核取方塊。

雖然您可以使用這些 Ace 設定 Active Directory 中的每個物件,但最適合組織單位。 刪除或移動所有的葉物件會產生重大影響。 這種設定可防止這類刪除或移動。 若要使用這類設定來實際刪除或移動物件,必須先移除 Deny Ace。

本文討論如何在從 Active Directory 刪除使用者帳戶、電腦帳戶及其群組成員資格之後加以還原。 在此案例的變化中,使用者帳戶、電腦帳戶或安全性群組可能會個別刪除或以某種組合的形式刪除。 在上述所有情況下,將會套用相同的初始步驟。 您以權威性的還原或驗證還原,這些物件在不慎刪除。 有些已刪除的物件需要還原更多工作。 這些物件包括像是使用者帳戶的物件,其中包含其他物件之屬性的反向連結的屬性。 這兩個屬性是 managedBymemberOf

當您將安全主體(例如使用者帳戶、安全性群組或電腦帳戶)新增至安全性群組時,您會在 Active Directory 中進行下列變更:

  1. 安全性主體的名稱會新增至每個安全性群組的 member 屬性。
  2. 針對使用者、電腦或安全性群組所屬的每個安全性群組,會將 back 連結新增至安全主體的 memberOf 屬性。

同樣地,從 Active Directory 刪除使用者、電腦或群組時,會發生下列動作:

  1. 已刪除的安全性主體會移至 [刪除的物件] 容器。
  2. 有些屬性值(包括 memberOf 屬性)會從刪除的安全性主體中去除。
  3. 已刪除的安全性主體會從其所屬的任何安全性群組中移除。 換句話說,已刪除的安全性主體會從每一個安全性群組的成員屬性中移除。

當您復原已刪除的安全性主體並還原其群組成員資格時,每個安全性主體都必須存在於 Active Directory 中,才可還原其群組成員資格。 成員可以是使用者、電腦或另一個安全性群組。 若要更廣泛地 restate 此規則,包含值為 back 連結的屬性的物件必須存在於 Active Directory 中,才能還原或修改包含該轉寄連結的物件。

本文著重于如何復原安全性群組中已刪除的使用者帳戶及其成員資格。 其概念同樣適用于其他物件刪除。 本文的概念同樣適用于刪除的物件,而這些物件的屬性值使用轉寄連結,並將連結到 Active Directory 中的其他物件。

您可以使用三種方法之一來復原安全性主體。 當您使用方法1時,會將新增至任何安全性群組的所有安全性主體放在樹系中。 而且只會將已從各自網域刪除的安全性主體,新增回其安全性群組。 例如,您會進行系統狀態備份、將使用者新增至安全性群組,然後還原系統狀態備份。 當您使用方法1或2時,您可以保留新增至安全性群組的任何使用者,這些使用者會在建立系統狀態備份的日期和還原備份的日期之間包含刪除的使用者。 當您使用方法3時,會將包含已刪除之使用者的所有安全性群組的安全性群組成員資格復原為系統狀態備份時的狀態。

方法 1-還原已刪除的使用者帳戶,然後使用 Ntdsutil.exe 命令列工具將還原的使用者新增回其群組。

Ntdsutil.exe 命令列工具可讓您還原已刪除物件的反向連結。 每個授權還原作業都會產生兩個檔案。 一個檔案包含以權威性還原的物件清單。 另一個檔案是與 Ldifde.exe 公用程式搭配使用的 .ldf 檔案。 此檔案可用來還原已授權還原之物件的反向連結。 使用者物件的權威性還原也會產生 LDAP 資料交換格式 (LDIF) 具有群組成員資格的檔案。 此方法可避免雙重還原。

當您使用此方法時,請執行下列高層級的步驟:

  1. 檢查使用者網域中的通用類別目錄是否沒有在刪除中複製。 ,然後防止該通用類別目錄進行複製。 如果沒有潛在的通用類別目錄,請在刪除的使用者的主域中,找到通用類別目錄網域控制站的最新系統狀態備份。
  2. Auth 還原所有已刪除的使用者帳戶,然後允許對這些使用者帳戶進行端對端複寫。
  3. 在刪除使用者帳戶之前,將所有已還原的使用者重新加入至其成員的所有網域中的所有群組。

若要使用方法1,請遵循此程式:

  1. 檢查刪除的使用者主域中是否有未複製任何部分刪除的通用類別目錄網域控制站。

    注意

    以最少頻率複寫的通用類別目錄為重點。

    如果有一或多個通用類別目錄存在,請使用 Repadmin.exe 命令列工具,依照下列步驟來立即停用輸入複寫:

    1. 選取 [開始],然後選取 [執行]。

    2. 在 [開啟] 方塊中輸入 cmd ,然後選取 [確定]

    3. 在命令提示字元處輸入下列命令,然後按 ENTER:

      repadmin /options <recovery dc name> +DISABLE_INBOUND_REPL
      

      注意

      如果您無法立即發出此 Repadmin 命令,請從潛在的通用類別目錄中移除所有網路連線,直到您可以用 Repadmin 來停用輸入複寫,然後立即傳回網路連線。

    此網域控制站將稱為復原網域控制站。 如果沒有這類通用目錄,請移至步驟2。

  2. 如果下列所有陳述皆為真,最好停止對樹系中的安全性群組進行變更:

    • 您使用的方法1會依照其辨別名稱 (dn) 路徑,以權威性還原已刪除的使用者或電腦帳戶。
    • 刪除操作已複製到樹系中的所有網域控制站,但不包括潛在復原網域控制站。
    • 您不會驗證還原安全性群組或其父容器。

    如果您要授權還原安全性群組或組織單位 (OU) 主控安全性群組或使用者帳戶的容器,請暫時停止所有這些變更。

    在發生刪除的網域中的網域使用者以外,通知系統管理員和問訊台管理員,以停止這些變更。

  3. 在發生刪除的網域中建立新的系統狀態備份。 您可以使用此備份(如果您必須復原變更)。

    注意

    如果系統狀態備份目前是直到刪除的點,請跳過此步驟,然後移至步驟4。

    如果您在步驟1中識別復原網域控制站,請立即備份其系統狀態。

    如果刪除時在刪除之網域中的所有通用類別目錄皆已複製,請在發生刪除的網域中備份通用類別目錄的系統狀態。

    當您建立備份時,您可以將復原網域控制站恢復回其目前的狀態。 如果您第一次嘗試不成功,請再次執行恢復計畫。

  4. 如果在使用者刪除所在的網域中找不到潛在的通用類別目錄網域控制站,請尋找該網域中通用類別目錄網域控制站最近的系統狀態備份。 此系統狀態備份應包含刪除的物件。 使用此網域控制站作為復原網域控制站。

    只有在使用者網域中的通用類別目錄網域控制站還原時,才會包含位於外部網域之安全性群組的全域和萬用群組成員資格資訊。 若使用者已遭刪除的網域中沒有通用類別目錄網域控制站的系統狀態備份,您就無法 memberOf 在還原的使用者帳戶上使用此屬性來判斷全域或通用群組成員資格,或復原外部網域中的成員資格。 此外,您最好尋找非通用類別目錄網域控制站最近的系統狀態備份。

  5. 如果您知道離線系統管理員帳戶的密碼,請在 Disrepair 模式中啟動復原網域控制站。 如果您不知道離線系統管理員帳戶的密碼,請在恢復網域控制站仍為一般 Active Directory 模式時,使用 ntdsutil.exe 來重設密碼。

    您可以使用 setpwd 命令列工具,在網域控制站的線上 Active Directory 模式中重設密碼。

    注意

    Microsoft 不再支援 Windows 2000。

    Windows Server 2003 和更新版本的網域控制站的系統管理員可以使用 set dsrm password Ntdsutil 命令列工具中的命令,重設離線系統管理員帳戶的密碼。

    如需如何重設目錄服務還原模式系統管理員帳戶的詳細資訊,請參閱 如何在 Windows Server 中重設目錄服務還原模式系統管理員帳戶密碼

  6. 在啟動過程中按 F8,以 Disrepair 模式啟動復原網域控制站。 使用離線系統管理員帳戶登入復原網域控制站的主控台。 如果您在步驟5重設密碼,請使用新的密碼。

    如果恢復網域控制站是潛在的通用類別目錄網域控制站,請勿還原系統狀態。 移至步驟7。

    如果您是使用系統狀態備份來建立復原網域控制站,請立即還原在復原網域控制站上所做的最新系統狀態備份。

  7. Auth 還原已刪除的使用者帳戶、刪除的電腦帳戶或已刪除的安全性群組。

    注意

    術語「 驗證還原 」和「 授權還原 」是指在 Ntdsutil 命令列工具中使用「授權還原」命令的程式,以增加特定物件的版本號碼,或特定容器及其所有從屬物件的版本號碼。 當端對端複寫發生時,在所有共用該分割區的網域控制站上,其 Active Directory 的本機複本中的目標物件都會成為權威。 權威性還原不同于系統狀態還原。 系統狀態還原會在進行系統狀態備份時,以物件的版本,將 Active Directory 還原的網域控制站的本機副本填入。

    使用 Ntdsutil 命令列工具來執行權威性還原,並參考功能變數名稱 (dn) 刪除的使用者或裝載已刪除使用者之容器的功能變數名稱。

    當您驗證還原時,請使用功能變數名稱 (dn) 路徑,使其盡可能低的域樹狀目錄。 目的是避免還原與刪除無關的物件。 這些物件可能包含建立系統狀態備份後修改的物件。

    以下列順序驗證還原已刪除的使用者:

    1. Auth 針對每個刪除的使用者帳戶、電腦帳戶或安全性群組,將功能變數名稱 (dn) 路徑還原。

      特定物件的授權還原所需的時間較長,但破壞程度低於整個子樹的授權還原。 Auth restore 保留已刪除物件的最低通用父容器。

      Ntdsutil 使用下列語法:

      ntdsutil "authoritative restore" "restore object <object DN path>" q q
      

      例如,若要在網域的 Mayberry OU 中以權威性的還原已刪除的使用者 John Doe Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore object cn=JohnDoe,ou=Mayberry,dc=contoso,dc=com" q q
      

      若要在網域的 Mayberry OU 中以權威性的還原已刪除的安全性群組 ContosoPrintAccess Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore object cn=ContosoPrintAccess,ou=Mayberry,dc=contoso,dc=com" q q
      

      重要

      需要使用引號。

      針對您還原的每一位使用者,至少會產生兩個檔案。 這些檔案的格式如下:

      ar_ YYYYMMDD-hhmmss-sss _objects.txt
      此檔案包含授權還原物件的清單。 在樹系中的任何其他網域中,使用此檔案與 ntdsutil 權威性還原 create ldif file from 命令,該使用者是網域本地群組的成員。

      ar_ YYYYMMDD-hhmmss-sss _links_usn .ldf
      如果您在通用類別目錄上執行授權還原,則會針對樹系中的每個網域產生其中一個檔案。 此檔案包含您可以搭配 Ldifde.exe 公用程式使用的腳本。 腳本會還原還原的物件的反向連結。 在使用者的主域中,腳本會還原已還原使用者的所有群組成員資格。 在樹系中使用者具有群組成員資格的所有其他網域中,腳本只會還原通用和全域群組成員資格。 腳本不會還原任何網域本機群組成員資格。 通用類別目錄不會追蹤這些成員資格。

    2. 只會對主控已刪除之使用者帳戶或群組的 OU 或 Common-Name (CN) 容器進行授權還原。

      當 ntdsutil 權威性還原命令所針對的 OU 包含您嘗試權威性還原的大部分物件時,整個子樹的授權還原會有效。 理想狀況下,目標 OU 會包含您要授權還原的所有物件。

      OU 子樹上的權威性還原會還原位於容器中的所有屬性和物件。 還原系統狀態備份的時間所做的任何變更,都會在備份時回滾至其值。 在使用者帳戶、電腦帳戶和安全性群組中,此復原可能表示遺失最近的變更:

      • 密碼
      • 主目錄
      • 設定檔路徑
      • 位置
      • 連絡人資訊
      • 群組成員資格
      • 在這些物件和屬性上定義的任何安全性描述項。

      Ntdsutil 使用下列語法:

      ntdsutil "authoritative restore" "restore subtree <container DN path>" q q
      

      例如,若要以權威性還原網域的 Mayberry OU Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore subtree ou=Mayberry, dc=contoso,dc=com" q q
      

      注意

      針對主控已刪除之使用者或群組的每個對等 OU 重複此步驟。

      重要

      當您還原 OU 的次級物件時,已刪除之次級物件的所有已刪除父容器都必須明確地進行驗證還原。

      針對您還原的每個組織單位,至少會產生兩個檔案。 這些檔案的格式如下:

      ar_ YYYYMMDD-hhmmss-sss _objects.txt
      此檔案包含授權還原物件的清單。 在樹系中的任何其他網域中,將此檔案與 ntdsutil 權威性還原命令搭配使用,以供 create ldif file from 還原的使用者成為網域本地群組的成員。

      ar_ YYYYMMDD-hhmmss-sss _links_usn .ldf
      此檔案包含您可以搭配 Ldifde.exe 公用程式使用的腳本。 腳本會還原還原的物件的反向連結。 在使用者的主域中,腳本會還原已還原使用者的所有群組成員資格。

  8. 如果在復原網域控制站上復原已刪除的物件,因為系統狀態還原,請移除所有網路電纜,以提供與樹系中所有其他網域控制站的網路連線。

  9. 在正常的 Active Directory 模式中重新開機復原網域控制站。

  10. 輸入下列命令,以停用對復原網域控制站的輸入複寫:

    repadmin /options <recovery dc name> +DISABLE_INBOUND_REPL
    

    將網路連線回復回其系統狀態為已還原的復原網域控制站。

  11. 輸出-從復原網域控制站將驗證還原的物件,複製到網域和樹系中的網域控制站。

    當恢復網域控制站的輸入複寫保持停用狀態時,輸入下列命令,以將已驗證還原的物件推入網域中的所有跨網站複本網域控制站,以及樹系中的所有通用類別目錄:

    repadmin /syncall /d /e /P <recovery dc> <Naming Context>
    

    如果下列所有陳述皆為 true,則會在還原和刪除已刪除使用者帳戶的複寫時,重建群組成員資格連結。 移至步驟14。

    注意

    如果下列一或多個語句不是 true,請移至步驟12。

    • 您的樹系是在 Windows Server 2003 和更新版本的樹系功能層級,或是在 Windows Server 2003 和更新版本或更新版本的中期樹系功能層級上執行。
    • 只會刪除使用者帳戶或電腦帳戶,而非安全性群組。
    • 當樹系轉換至 Windows Server 2003 和更新版本(或更新版本樹系功能層級)之後,已將刪除的使用者新增至樹系中所有網域的安全性群組。
  12. 在復原網域控制站的主控台上,使用 Ldifde.exe 公用程式和 ar_ YYYYMMDD hhmmss-sss _links_usn .ldf 檔案還原使用者的群組成員資格。 若要這麼做,請遵循下列步驟:

    • 選取 [開始],選取 [執行],在 [開啟] 方塊中輸入 cmd ,然後選取 [確定]

    • 在命令提示字元處輸入下列命令,然後按 ENTER:

      ldifde -i -f ar_YYYYMMDD-HHMMSS_links_usn.loc.ldf
      
  13. 使用下列命令,啟用恢復網域控制站的輸入複寫:

    repadmin /options <recovery dc name> -DISABLE_INBOUND_REPL
    
  14. 如果刪除的使用者已新增至外部網域中的本機群組,請執行下列其中一項動作:

    • 手動將刪除的使用者新增回這些群組。
    • 還原系統狀態和每個包含已刪除使用者的本機安全性群組的驗證還原。
  15. 驗證復原網域控制站所在網域中的群組成員資格,以及其他網域中的通用類別目錄。

  16. 在復原網域控制站的網域中,對網域控制站進行新的系統狀態備份。

  17. 通知樹系中的所有樹系系統管理員、委派的系統管理員、服務台管理員,以及執行使用者還原之網域中的使用者。

    服務台管理員可能必須重設授權還原的使用者帳戶和電腦帳戶的密碼,而該電腦帳戶的網域密碼在進行還原後的系統之後已變更。

    在進行系統狀態備份之後變更其密碼的使用者,將會發現其最近的密碼不再有效。 讓這類使用者嘗試使用先前的密碼來登入(如果他們知道的話)。 否則,問訊台管理員必須重設密碼,並選取 [ 使用者必須在下次登入時變更密碼] 核取方塊。 最好是在使用者所在的 Active Directory 網站中的網域控制站上進行。

方法 2-還原已刪除的使用者帳戶,然後將還原的使用者新增回其群組

當您使用此方法時,請執行下列高層級的步驟:

  1. 檢查使用者網域中的通用類別目錄是否沒有在刪除中複製。 ,然後防止該通用類別目錄進行複製。 如果沒有潛在的通用類別目錄,請在刪除的使用者的主域中,找到通用類別目錄網域控制站的最新系統狀態備份。
  2. Auth 還原所有已刪除的使用者帳戶,然後允許對這些使用者帳戶進行端對端複寫。
  3. 在刪除使用者帳戶之前,將所有已還原的使用者重新加入至其成員的所有網域中的所有群組。

若要使用方法2,請遵循此程式:

  1. 檢查刪除的使用者主域中是否有未複製任何部分刪除的通用類別目錄網域控制站。

    注意

    以最少頻率複寫的通用類別目錄為重點。

    如果有一或多個通用類別目錄存在,請使用 Repadmin.exe 命令列工具立即停用輸入複寫。 若要這麼做,請遵循下列步驟:

    1. 選取 [開始],然後選取 [執行]。
    2. 在 [開啟] 方塊中輸入 cmd ,然後選取 [確定]
    3. 在命令提示字元處輸入下列命令,然後按 ENTER:
    repadmin /options <recovery dc name> +DISABLE_INBOUND_REPL
    

    注意

    如果您無法立即發出 Repadmin 命令,請從潛在的通用類別目錄中移除所有網路連線,直到您可以使用 Repadmin 停用輸入複寫,然後立即傳回 network connectivity。

    此網域控制站將稱為復原網域控制站。 如果沒有這類通用目錄,請移至步驟2。

  2. 決定是否必須暫時停止新增、刪除和變更使用者帳戶、電腦帳戶和安全性群組,直到完成所有的復原步驟為止。

    若要維持最靈活的復原路徑,請暫時停止對下列專案進行變更。 變更包括由於刪除的使用者群組中的群組成員資格變更以外,網域使用者、技術支援人員的系統管理員,以及發生刪除之網域中的系統管理員所重設的密碼。 請考慮停止新增、刪除及修改下列專案:

    1. 使用者帳戶的使用者帳戶和屬性
    2. 電腦帳戶上的電腦帳戶和屬性
    3. 服務帳戶
    4. 安全性群組

    如果下列所有陳述皆為真,最好停止對樹系中的安全性群組進行變更:

    • 您使用方法2以權威性的功能變數名稱 (dn) 路徑還原已刪除的使用者或電腦帳戶。
    • 刪除操作已複製到樹系中的所有網域控制站,但不包括潛在復原網域控制站。
    • 您不會驗證還原安全性群組或其父容器。

    如果您要授權還原安全性群組或組織單位 (OU) 主控安全性群組或使用者帳戶的容器,請暫時停止所有這些變更。

    在發生刪除的網域中的網域使用者以外,通知系統管理員和問訊台管理員,以停止這些變更。

  3. 在發生刪除的網域中建立新的系統狀態備份。 您可以使用此備份(如果您必須復原變更)。

    注意

    如果系統狀態備份目前是直到刪除的點,請跳過此步驟,然後移至步驟4。

    如果您在步驟1中識別復原網域控制站,請立即備份其系統狀態。

    如果刪除時在刪除之網域中的所有通用類別目錄皆已複製,請在發生刪除的網域中備份通用類別目錄的系統狀態。

    當您建立備份時,您可以將復原網域控制站恢復回其目前的狀態。 如果您第一次嘗試不成功,請再次執行恢復計畫。

  4. 如果在使用者刪除所在的網域中找不到潛在的通用類別目錄網域控制站,請尋找該網域中通用類別目錄網域控制站最近的系統狀態備份。 此系統狀態備份應包含刪除的物件。 使用此網域控制站作為復原網域控制站。

    只有在使用者網域中的通用類別目錄網域控制站還原時,才會包含位於外部網域之安全性群組的全域和萬用群組成員資格資訊。 若使用者已遭刪除的網域中沒有通用類別目錄網域控制站的系統狀態備份,您就無法 memberOf 在還原的使用者帳戶上使用此屬性來判斷全域或通用群組成員資格,或復原外部網域中的成員資格。 此外,您最好尋找非通用類別目錄網域控制站最近的系統狀態備份。

  5. 如果您知道離線系統管理員帳戶的密碼,請在 Disrepair 模式中啟動復原網域控制站。 如果您不知道離線系統管理員帳戶的密碼,請在恢復網域控制站仍為一般 Active Directory 模式時,重設密碼。

    您可以使用 setpwd 命令列工具,在執行 Windows 2000 Service Pack 2 的網域控制站上重設密碼 (SP2) 和更新于線上 Active Directory 模式。

    注意

    Microsoft 不再支援 Windows 2000。

    Windows Server 2003 和更新版本的網域控制站的系統管理員可以使用 set dsrm password Ntdsutil 命令列工具中的命令,重設離線系統管理員帳戶的密碼。

    如需如何重設目錄服務還原模式系統管理員帳戶的詳細資訊,請參閱 如何在 Windows Server 中重設目錄服務還原模式系統管理員帳戶密碼

  6. 在啟動過程中按 F8,以 Disrepair 模式啟動復原網域控制站。 使用離線系統管理員帳戶登入復原網域控制站的主控台。 如果您在步驟5重設密碼,請使用新的密碼。

    如果恢復網域控制站是潛在的通用類別目錄網域控制站,請勿還原系統狀態。 移至步驟7。

    如果您是使用系統狀態備份來建立復原網域控制站,請立即還原在復原網域控制站上所做的最新系統狀態備份。

  7. Auth 還原已刪除的使用者帳戶、刪除的電腦帳戶或已刪除的安全性群組。

    注意

    術語「 驗證還原 」和「 授權還原 」是指在 Ntdsutil 命令列工具中使用「授權還原」命令的程式,以增加特定物件的版本號碼,或特定容器及其所有從屬物件的版本號碼。 當端對端複寫發生時,在所有共用該分割區的網域控制站上,其 Active Directory 的本機複本中的目標物件都會成為權威。 權威性還原不同于系統狀態還原。 系統狀態還原會在進行系統狀態備份時,以物件的版本,將 Active Directory 還原的網域控制站的本機副本填入。

    使用 Ntdsutil 命令列工具來執行權威性還原,並參考功能變數名稱 (dn) 刪除的使用者或裝載已刪除使用者之容器的功能變數名稱。

    當您驗證還原時,請使用功能變數名稱 (dn) 路徑,使其盡可能低的域樹狀目錄。 目的是避免還原與刪除無關的物件。 這些物件可能包含建立系統狀態備份後修改的物件。

    以下列順序驗證還原已刪除的使用者:

    1. Auth 針對每個刪除的使用者帳戶、電腦帳戶或安全性群組,將功能變數名稱 (dn) 路徑還原。

      特定物件的授權還原所需的時間較長,但破壞程度低於整個子樹的授權還原。 Auth restore 保留已刪除物件的最低通用父容器。

      Ntdsutil 使用下列語法:

      ntdsutil "authoritative restore" "restore object <object DN path>" q q
      

      例如,若要在網域的 Mayberry OU 中以權威性的還原已刪除的使用者 John Doe Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore object cn=JohnDoe,ou=Mayberry,dc=contoso,dc=com" q q
      

      若要在網域的 Mayberry OU 中以權威性的還原已刪除的安全性群組 ContosoPrintAccess Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore object cn=ContosoPrintAccess,ou=Mayberry,dc=contoso,dc=com" q q
      

      重要

      需要使用引號。

      注意

      此語法僅適用于 Windows Server 2003 和更新版本。 Windows 2000 中的唯一語法是使用下列各項:

      ntdsutil "authoritative restore" "restore subtree object DN path"
      

      注意

      如果辨識名稱路徑 (DN) 包含擴充字元或空格,則 Ntdsutil 權威性還原作業不會成功。 為了讓已編寫腳本的還原能夠成功, restore object <DN path> 必須將此指令傳遞為一個完整的字串。

      若要解決此問題,請使用反斜線的雙引號轉義符順序,讓包含擴充字元和空格的 DN 折行。 範例如下:

      ntdsutil "authoritative restore" "restore object \"CN=John Doe,OU=Mayberry NC,DC=contoso,DC=com\"" q q
      

      注意

      若要還原的物件 DN 包含逗號,則必須進一步修改此命令。 請參閱下列範例:

      ntdsutil "authoritative restore" "restore object \"CN=Doe\, John,OU=Mayberry NC,DC=contoso,DC=com\"" q q
      

      注意

      如果物件是從磁帶還原,且已標示為權威性,且還原未如預期的方式運作,然後再使用相同的磁帶還原 NTDS 資料庫,則要進行權威性還原的物件的 USN 版本必須高於預設值100000,否則在第二次還原後將不會複製出物件。 需要下列語法來編寫腳本,使其高於 100000 (預設) 的版本:

      ntdsutil "authoritative restore" "restore object \"CN=Doe\, John,OU=Mayberry NC,DC=contoso,DC=com\" verinc 150000\"" q q
      

      注意

      如果腳本提示您在要還原的每個物件上進行確認,您可以關閉提示。 關閉提示的語法如下:

      ntdsutil "popups off" "authoritative restore" "restore object \"CN=John Doe,OU=Mayberry NC,DC=contoso,DC=com\" verinc 150000\"" q q
      
    2. 只會對主控已刪除之使用者帳戶或群組的 OU 或 Common-Name (CN) 容器進行授權還原。

      當 ntdsutil 權威性還原命令所針對的 OU 包含您嘗試權威性還原的大部分物件時,整個子樹的授權還原會有效。 理想狀況下,目標 OU 會包含您要授權還原的所有物件。

      OU 子樹上的權威性還原會還原位於容器中的所有屬性和物件。 還原系統狀態備份的時間所做的任何變更,都會在備份時回滾至其值。 在使用者帳戶、電腦帳戶和安全性群組中,此復原可能意味著遺失密碼的最近變更、主目錄、設定檔路徑、位置和聯繫資訊、群組成員資格,以及在這些物件和屬性上定義的任何安全性描述項。

      Ntdsutil 使用下列語法:

      ntdsutil "authoritative restore" "restore subtree <container DN path>" q q
      

      例如,若要以權威性還原網域的 Mayberry OU Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore subtree ou=Mayberry, dc=contoso,dc=com" q q
      

      注意

      針對主控已刪除之使用者或群組的每個對等 OU 重複此步驟。

      重要

      當您還原 OU 的次級物件時,已刪除之次級物件的所有已刪除父容器都必須明確地進行驗證還原。

  8. 如果在復原網域控制站上復原已刪除的物件,因為系統狀態還原,請移除所有網路電纜,以提供與樹系中所有其他網域控制站的網路連線。

  9. 在正常的 Active Directory 模式中重新開機復原網域控制站。

  10. 輸入下列命令,以停用對復原網域控制站的輸入複寫:

    repadmin /options <recovery dc name> +DISABLE_INBOUND_REPL
    

    將網路連線回復回其系統狀態為已還原的復原網域控制站。

  11. 輸出-從復原網域控制站將驗證還原的物件,複製到網域和樹系中的網域控制站。

    當恢復網域控制站的輸入複寫保持停用狀態時,輸入下列命令,以將已驗證還原的物件推入網域中的所有跨網站複本網域控制站,以及樹系中的所有通用類別目錄:

    repadmin /syncall /d /e /P <recovery dc> <Naming Context>
    

    如果下列所有陳述皆為 true,則會在還原和刪除已刪除使用者帳戶的複寫時,重建群組成員資格連結。 移至步驟14。

    注意

    如果下列一或多個語句不是 true,請移至步驟12。

    • 您的樹系正在 Windows Server 2003 和更新版本的樹系功能層級,或在 Windows Server 2003 和更新版本的中期樹系功能層級上執行。
    • 只會刪除使用者帳戶或電腦帳戶,而非安全性群組。
    • 當樹系轉換為 Windows Server 2003 和更新版本的樹系功能等級後,已刪除的使用者已新增至樹系中所有網域的安全性群組。
  12. 決定刪除的使用者是其成員的安全性群組,然後將其新增至這些群組。

    注意

    您可以將使用者新增至群組之前,您在步驟7中進行驗證的使用者,以及您在步驟11中輸出的使用者,必須將其複製到參考網域控制站的網域中的網域控制站,以及樹系中的所有通用類別目錄網域控制站。

    如果您已部署群組布建公用程式,以重新填入安全性群組的成員資格,請使用該公用程式,將已刪除的使用者還原為已刪除的其成員的安全性群組。 在樹系網域和通用類別目錄伺服器中的所有直接和可傳遞的網域控制站皆已輸入已驗證還原的使用者和任何已還原的容器之後,再執行此動作。

    如果您沒有公用程式, Ldifde.exe Groupadd.exe 當您在復原網域控制站上執行這種工作時,和命令列工具可以自動執行這種工作。 您可以從 Microsoft 產品支援服務取得這些工具。 在此案例中,Ldifde.exe 會建立 LDAP 資料交換格式 (LDIF) 資訊檔案,該檔案包含使用者帳戶的名稱和其安全性群組。 它會從管理員所指定的 OU 容器開始。 Groupadd.exe 然後讀取 memberOf .ldf 檔案中所列的每個使用者帳戶的屬性。 然後,它會為樹系中的每個網域產生個別且唯一的 LDIF 資訊。 此 LDIF 資訊包含與刪除之使用者相關聯的安全性群組名稱。 使用 LDIF 資訊可將資訊新增至使用者,以便還原群組成員資格。 請在復原的此階段執行下列步驟:

    1. 使用域管理員安全性群組成員的使用者帳戶,登入復原網域控制站的主控台。

    2. 使用 Ldifde 命令來轉儲先前已刪除之使用者帳戶的名稱,以及其 memberOf 屬性(從發生刪除的最上層的 OU 容器開始)。 Ldifde 命令使用下列語法:

      ldifde -d <dn path of container that hosts deleted users> -r "(objectClass=user)" -l memberof -p subtree -f user_membership_after_restore.ldf
      

      若刪除的電腦帳戶已新增至安全性群組,請使用下列語法:

      ldifde -d <dn path of container that hosts deleted users> -r "(objectClass=computer)" -l memberof -p subtree -f computer_membership_after_restore.ldf
      
    3. 執行 Groupadd 命令以建立更多包含網功能變數名稱稱的 .ldf 檔案,以及已刪除使用者所屬之全域和通用安全性群組的名稱。 Groupadd命令使用下列語法:

      Groupadd / after_restore users_membership_after_restore.ldf
      

      如果已刪除的電腦帳戶已新增至安全性群組,請重複此命令。

    4. Groupadd將您在步驟12c 中所建立的每個 fully.qualified.domain.name 檔案匯入到對應于每個網域 .ldf 檔案的單一通用類別目錄網域控制站。 使用下列 Ldifde 語法:

      Ldifde -i -k -f Groupadd_<fully.qualified.domain.name>.ldf
      

      針對網域(復原網域控制站除外)上的使用者已刪除的網域執行 .ldf 檔案。

    5. 在每個用來匯入 Groupadd_<的網域控制站的主控台上,用來匯入特定網域的 fully.qualified.domain.name> .ldf 檔案、輸出將群組成員資格新增至網域中的其他網域控制站,以及樹系中的通用類別目錄網域控制站。 若要這麼做,請使用下列命令:

      repadmin /syncall /d /e /P <recovery dc> <Naming Context>
      
  13. 若要停用輸出複寫,請輸入下列文字,然後按 ENTER:

    repadmin /options +DISABLE_OUTBOUND_REPL
    

    注意

    若要重新啟用輸出複寫,請輸入下列文字,然後按 ENTER:

    repadmin /options -DISABLE_OUTBOUND_REPL
    
  14. 如果刪除的使用者已新增至外部網域中的本機群組,請執行下列其中一項動作:

    • 手動將刪除的使用者新增回這些群組。
    • 還原系統狀態和每個包含已刪除使用者的本機安全性群組的驗證還原。
  15. 驗證復原網域控制站所在網域中的群組成員資格,以及其他網域中的通用類別目錄。

  16. 在復原網域控制站的網域中,對網域控制站進行新的系統狀態備份。

  17. 通知樹系中的所有樹系系統管理員、委派的系統管理員、服務台管理員,以及執行使用者還原之網域中的使用者。

    服務台管理員可能必須重設授權還原的使用者帳戶和電腦帳戶的密碼,而該電腦帳戶的網域密碼在進行還原後的系統之後已變更。

    在進行系統狀態備份之後變更其密碼的使用者,將會發現其最近的密碼不再有效。 讓這類使用者嘗試使用先前的密碼來登入(如果他們知道的話)。 否則,問訊台管理員必須重設密碼,並選取 [ 使用者必須在下次登入時變更密碼] 核取方塊。 最好是在使用者所在的 Active Directory 網站中的網域控制站上進行。

方法 3-對刪除的使用者和刪除的使用者安全性群組進行權威性還原兩次

當您使用此方法時,請執行下列高層級的步驟:

  1. 檢查使用者網域中的通用類別目錄是否沒有在刪除中複製。 ,然後防止網域控制站輸入--複製刪除。 如果沒有潛在的通用類別目錄,請在刪除的使用者的主域中,找到通用類別目錄網域控制站的最新系統狀態備份。
  2. 在刪除的使用者網域中,以權威性的還原所有已刪除的使用者帳戶和所有安全性群組。
  3. 等待已還原的使用者和安全性群組對刪除使用者網域中所有網域控制站的端對端複寫,以及樹系的通用類別目錄網域控制站。
  4. 重複步驟2和3,以權威性還原已刪除的使用者和安全性群組。 (您只會將系統狀態還原一次。 )
  5. 如果刪除的使用者是其他網域中安全性群組的成員,則會以權威性還原已刪除的使用者在這些網域中的成員的所有安全性群組。 或者,如果系統狀態備份是最新的,則會以權威性還原這些網域中的所有安全性群組。 為了滿足在安全性群組修正群組成員資格連結之前必須還原已刪除群組成員的需求,您可以在此方法中兩次還原這兩個物件類型。 第一次還原會將所有使用者帳戶和群群組帳戶放在適當位置。 第二個還原會還原已刪除的群組,並修復群組成員資格資訊,包括嵌套群組的成員資格資訊。

若要使用方法3,請遵循此程式:

  1. 檢查刪除的使用者首頁網域中是否存在通用類別目錄網域控制站,而且在刪除的任何部分中未進行複製。

    注意

    集中在具有最少複製排程的網域中的通用類別目錄。 如果有這些網域控制站存在,請使用 Repadmin.exe 命令列工具立即停用輸入複寫。 若要這麼做,請遵循下列步驟:

    1. 選取 [開始],然後選取 [執行]。
    2. 在 [開啟] 方塊中輸入 cmd ,然後選取 [確定]
    3. repadmin /options <recovery dc name> +DISABLE_INBOUND_REPL在命令提示字元中輸入,然後按 enter 鍵。

    注意

    如果您無法立即發出 Repadmin 命令,請從網域控制站移除所有的網路連線,直到您可以使用 Repadmin 停用輸入複寫,然後立即傳回 network connectivity。

    此網域控制站將稱為復原網域控制站。

  2. 在完成所有的復原步驟之前,請避免對下列專案進行新增、刪除和變更。 變更包括由於刪除的使用者群組中的群組成員資格變更以外,網域使用者、技術支援人員的系統管理員,以及發生刪除之網域中的系統管理員所重設的密碼。

    1. 使用者帳戶的使用者帳戶和屬性

    2. 電腦帳戶上的電腦帳戶和屬性

    3. 服務帳戶

    4. 安全性群組

      注意

      尤其是避免發生刪除之樹系中,使用者、電腦、群組和服務帳戶的群組成員資格變更。

    5. 通知所有樹系系統管理員、委派的系統管理員,以及臨時獨立的樹系中的服務台管理員。 因為您是以權威性方式還原所有刪除的使用者安全性群組,所以方法2中需要此項功能。 因此,對群組進行的任何變更都會遺失系統狀態備份的日期。

  3. 在發生刪除的網域中建立新的系統狀態備份。 您可以使用此備份(如果您必須復原變更)。

    注意

    如果您的系統狀態備份目前是在刪除發生的時間,請跳過此步驟,然後移至步驟4。

    如果您在步驟1中識別復原網域控制站,請立即備份其系統狀態。

    若刪除所在網域中的所有通用類別目錄都已複製刪除,請備份發生刪除之網域中通用類別目錄的系統狀態。

    當您建立備份時,您可以將復原網域控制站恢復回其目前的狀態。 如果您第一次嘗試不成功,請再次執行恢復計畫。

  4. 如果在使用者刪除所在的網域中找不到潛在的通用類別目錄網域控制站,請尋找該網域中通用類別目錄網域控制站最近的系統狀態備份。 此系統狀態備份應包含刪除的物件。 使用此網域控制站作為復原網域控制站。

    只有使用者網域中通用類別目錄網域控制站的資料庫包含樹系中外部網域的群組成員資格資訊。 若使用者已遭刪除的網域中沒有通用類別目錄網域控制站的系統狀態備份,您就無法 memberOf 在還原的使用者帳戶上使用此屬性來判斷全域或通用群組成員資格,或復原外部網域的成員資格。 請移至下一個步驟。 如果外部網域中有群組成員資格的外部記錄,請在還原使用者帳戶之後,將還原的使用者新增至這些網域中的安全性群組。

  5. 如果您知道離線系統管理員帳戶的密碼,請在 Disrepair 模式中啟動復原網域控制站。 如果您不知道離線系統管理員帳戶的密碼,請在恢復網域控制站仍為一般 Active Directory 模式時,重設密碼。

    您可以使用 setpwd 命令列工具,在執行 Windows 2000 SP2 的網域控制站上重設密碼,然後在線上 Active Directory 模式中重設。

    注意

    Microsoft 不再支援 Windows 2000。

    Windows Server 2003 和更新版本的網域控制站的系統管理員可以使用 set dsrm password Ntdsutil 命令列工具中的命令,重設離線系統管理員帳戶的密碼。

    如需如何重設目錄服務還原模式系統管理員帳戶的詳細資訊,請參閱 如何在 Windows Server 中重設目錄服務還原模式系統管理員帳戶密碼

  6. 在啟動過程中按 F8,以 Disrepair 模式啟動復原網域控制站。 使用離線系統管理員帳戶登入復原網域控制站的主控台。 如果您在步驟5重設密碼,請使用新的密碼。

    如果恢復網域控制站是潛在的通用類別目錄網域控制站,請勿還原系統狀態。 直接移至步驟7。

    如果您是使用系統狀態備份來建立復原網域控制站,請在現在包含已刪除物件的復原網域控制站上,還原目前所做的最新系統狀態備份。

  7. Auth 還原已刪除的使用者帳戶、刪除的電腦帳戶或已刪除的安全性群組。

    注意

    術語「 驗證還原 」和「 授權還原 」是指在 Ntdsutil 命令列工具中使用「授權還原」命令的程式,以增加特定物件的版本號碼,或特定容器及其所有從屬物件的版本號碼。 當端對端複寫發生時,在所有共用該分割區的網域控制站上,其 Active Directory 的本機複本中的目標物件都會成為權威。 權威性還原不同于系統狀態還原。 系統狀態還原會在進行系統狀態備份時,以物件的版本,將 Active Directory 還原的網域控制站的本機副本填入。

    使用 Ntdsutil 命令列工具來執行權威性還原,方法是參照刪除使用者的功能變數名稱 (dn) 路徑,或是主控已刪除使用者的容器。

    當您驗證還原時,請盡可能使用域樹中低的功能變數名稱路徑。 目的是避免還原與刪除無關的物件。 這些物件可能包含建立系統狀態備份後修改的物件。

    以下列順序驗證還原已刪除的使用者:

    1. Auth 針對每個已刪除的使用者帳戶、電腦帳戶或已刪除的安全性群組,將功能變數名稱 (dn) 路徑還原。

      特定物件的授權還原所需的時間較長,但破壞程度低於整個子樹的授權還原。 Auth restore 保留已刪除物件的最低通用父容器。

      Ntdsutil 使用下列語法:

      ntdsutil "authoritative restore" "restore object <object DN path>" q q
      

      例如,若要在網域的 Mayberry OU 中以權威性的還原已刪除的使用者 John Doe Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore object cn=JohnDoe,ou=Mayberry,dc=contoso,dc=com" q q
      

      若要在網域的 Mayberry OU 中以權威性的還原已刪除的安全性群組 ContosoPrintAccess Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore object cn=ContosoPrintAccess,ou=Mayberry,dc=contoso,dc=com" q q
      

      重要

      需要使用引號。

      使用此 Ntdsutil 格式,您也可以在批次處理檔案或腳本中自動化許多物件的權威性還原。

      注意

      此語法僅適用于 Windows Server 2003 和更新版本。 Windows 2000 中的唯一語法是使用: ntdsutil "authoritative restore" "restore subtree object DN path"

    2. 只會對主控已刪除之使用者帳戶或群組的 OU 或 Common-Name (CN) 容器進行授權還原。

      當 Ntdsutil 權威性還原命令所針對的 OU 包含您嘗試權威性還原的大部分物件時,整個子樹的授權還原會有效。 理想狀況下,目標 OU 會包含您要授權還原的所有物件。

      OU 子樹上的授權還原會還原位於容器中的所有屬性和物件。 還原系統狀態備份的時間所做的任何變更,都會在備份時回滾至其值。 在使用者帳戶、電腦帳戶和安全性群組中,此復原可能意味著遺失密碼的最近變更、主目錄、設定檔路徑、位置和聯繫資訊、群組成員資格,以及在這些物件和屬性上定義的任何安全性描述項。

      Ntdsutil 使用下列語法:

      ntdsutil "authoritative restore" "restore subtree <container DN path>" q q
      

      例如,若要以權威性還原網域的 Mayberry OU Contoso.com ,請使用下列命令:

      ntdsutil "authoritative restore" "restore subtree ou=Mayberry,dc=contoso,dc=com" q q
      

      注意

      針對主控已刪除之使用者或群組的每個對等 OU 重複此步驟。

      重要

      當您還原 OU 的從屬物件時,所有已刪除次級物件的父容器都必須明確地進行驗證還原。

  8. 在正常的 Active Directory 模式中重新開機復原網域控制站。

  9. 輸出-從復原網域控制站將權威性還原的物件,複製到網域和樹系中的網域控制站。

    當恢復網域控制站的輸入複寫保持停用狀態時,輸入下列命令,以將授權還原的物件推入網域中的所有跨網站複本網域控制站,以及樹系中的通用類別目錄:

    repadmin /syncall /d /e /P <recovery dc> <Naming Context>
    

    當樹系網域和通用類別目錄伺服器中的所有 direct 和可傳遞的網域控制站都已在授權還原的使用者和任何還原的容器中複寫之後,請移至步驟11。

    如果下列所有表述皆為 true,則會在還原已刪除的使用者帳戶時,重建群組成員資格連結。 移至步驟13。

    • 您的樹系正在 Windows Server 2003 和更新版本的樹系功能層級,或在 Windows Server 2003 和更新版本的中期樹系功能層級上執行。
    • 只不會刪除安全性群組。
    • 所有已刪除的使用者已新增至樹系中所有網域的所有安全性群組。

    請考慮使用 Repadmin 命令,加速使用者從還原的網域控制站的輸出複寫。

    如果群組也遭刪除,或是您無法保證所有刪除的使用者在轉換至 Windows Server 2003 和更新版本的過渡或樹系功能等級之後,新增至所有的安全性群組,請移至步驟12。

  10. 重複步驟7、8和9,但不還原系統狀態,然後移至步驟11。

  11. 如果刪除的使用者已新增至外部網域中的本機群組,請執行下列其中一項動作:

    • 手動將刪除的使用者新增回這些群組。
    • 還原系統狀態和每個包含已刪除使用者的本機安全性群組的驗證還原。
  12. 驗證復原網域控制站所在網域中的群組成員資格,以及其他網域中的通用類別目錄。

  13. 使用下列命令來啟用恢復網域控制站的輸入複寫:

    repadmin /options recovery dc name -DISABLE_INBOUND_REPL
    
  14. 在恢復網域控制站的網域和樹系中其他網域的通用類別目錄中,對網域控制站進行新的系統狀態備份。

  15. 通知所有樹系系統管理員、委派的管理員、樹系中的服務台管理員,以及使用者還原已完成的網域中的使用者。

    服務台管理員可能需要重設授權還原使用者帳戶和電腦帳戶的密碼,而該電腦帳戶的網域密碼在進行還原後的系統之後已變更。

    在進行系統狀態備份之後變更其密碼的使用者,將會發現其最近的密碼不再有效。 讓這類使用者嘗試使用先前的密碼來登入(如果他們知道的話)。 否則,問訊台管理員必須已選取 [ 使用者必須在下次登入時變更密碼] 核取方塊來重設密碼。 最好是在使用者所在的 Active Directory 網站中的網域控制站上進行。

當您沒有有效的系統狀態備份時,如何在網域控制站上復原已刪除的使用者

如果在刪除使用者帳戶或安全性群組的網域中沒有目前的系統狀態備份,而且在包含 Windows Server 2003 和更新版本的網域控制站的網域中發生刪除,請遵循下列步驟,手動從刪除的物件容器中恢復已刪除的物件:

  1. 請遵循下列小節中的步驟,以恢復刪除的使用者、電腦、群組或所有專案:
    如何在刪除的物件容器中手動取消刪除物件
  2. 使用 [Active Directory 使用者和電腦] 將帳戶從 [停用] 變更為 [啟用]。 (帳戶會出現在原始的 OU 中。 )
  3. 使用 Windows Server 2003 和更新版本之 Active Directory 使用者和電腦上的大量重設功能執行大量重設時, 必須變更下一個登入原則 設定、主目錄、設定檔路徑,以及已刪除之帳戶的群組成員資格(視需要而定)。 您也可以使用這些功能的程式設計對等功能。
  4. 如果使用 Microsoft Exchange 2000 或更新版本,請修復已刪除之使用者的 Exchange 信箱。
  5. 如果使用 Exchange 2000 或更新版本,請將刪除的使用者重新關聯至 Exchange 信箱。
  6. 確認復原的使用者可以登入及存取本機目錄、共用目錄及檔案。

您可以使用下列方法來自動化部分或所有復原步驟:

  • 撰寫腳本,以自動化步驟1中所列的手動復原步驟。 當您撰寫這類腳本時,請考慮依日期、時間及最後一個已知的父容器來限定已刪除的物件,然後自動復原已刪除的物件。 若要自動復原恢復,請將 isDeleted 屬性從 TRUE 變更為 FALSE,然後將相對位置辨別名稱變更為在屬性或新 OU 中定義的值,或將 lastKnownParent 系統管理員所指定 (CN) 容器的名稱。 (相對辨別名稱也稱為 RDN。 )
  • 取得支援在 Windows Server 2003 和更新版本的網域控制站上恢復已刪除物件的非 Microsoft 程式。 其中一個實用程式是 AdRestore。 AdRestore 使用 Windows Server 2003 和更新版本的取消刪除的基元,以個別取消刪除物件。 Aelita 軟體 Corporation 和 Commvault 系統也提供支援 Windows Server 2003 和更新版本的網域控制站上的取消刪除功能的產品。

若要取得 AdRestore,請參閱 AdRestore 1.1

Microsoft 提供協力廠商的連絡資訊,協助您尋找技術支援。 此連絡資訊如有變更,恕不另行通知。 Microsoft 不會保證此協力廠商連絡人資訊的準確性。

如何在已刪除物件的容器中手動取消刪除物件

若要手動取消刪除已刪除物件之容器中的物件,請遵循下列步驟:

  1. 選取 [ 開始],選取 [ 執行],然後輸入 ldp.exe

    ldp.exe 可供使用:

    • 已安裝網域控制站角色的電腦上。
    • 在遠端伺服器管理工具 (RSAT) 安裝的電腦上。
  2. 使用 Ldp 中的 [連線] 功能表,可對 Windows Server 2003 和更新版本的網域控制站 執行連接作業 和系結作業。

    在 bind 作業期間指定網域系統管理員認證。

  3. 在 [ 選項 ] 功能表上,選取 [ 控制項]。

  4. 在 [ 載入預先定義 清單] 中,選取 [傳回 刪除的物件]。

    注意

    1.2.840.113556.1.4.417 控制項會移至 [作用中的 控制項 ] 視窗。

  5. 在 [ 控制項類型] 底下,選取 [ 伺服器],然後選取 [確定]

  6. 在 [ View ] 功能表上,選取 [ 樹狀目錄],並在發生刪除的網域中,輸入刪除之物件容器的辨別名稱路徑,然後選取 [確定]

    注意

    辨別名稱路徑也稱為 DN 路徑。 例如,如果在網域中發生刪除 contoso.com ,DN 路徑會是下列路徑:
    cn = deleted 物件,dc = contoso,dc = com

  7. 在視窗的左窗格中,按兩下 [ 已刪除的物件] 容器

    注意

    Idap 查詢的搜尋結果,預設只會傳回1000物件。 Fot 範例中,如果已刪除的物件容器中有1000以上的物件,則此容器中不會顯示所有物件。 如果您的目標物件未出現,請使用 ntdsutil,然後使用 maxpagesize 取得搜尋結果,以設定最大數目。

  8. 按兩下您要取消恢復或恢復的物件。

  9. 以滑鼠右鍵按一下您要恢復的物件,然後選取 [ 修改]。

    isDeleted在單一輕量目錄存取通訊協定 (LDAP) modify 作業] 中,變更屬性和 DN 路徑的值。 若要設定 [ 修改 ] 對話方塊,請遵循下列步驟:

    1. 在 [ 編輯專案] 屬性 方塊中,輸入 isDeleted。 將 [ ] 方塊保留空白。

    2. 選取 [ 刪除 ] 選項按鈕,然後選取 [ 輸入 ],以在 [ 專案清單 ] 對話方塊中建立兩個專案的第一個。

      重要

      請勿選取 [ 執行]。

    3. 在 [ 屬性 ] 方塊中,輸入 distinguishedName

    4. 在 [ ] 方塊中,輸入 reanimated 物件的新 DN 路徑。

      例如,若要將 JohnDoe 的使用者帳戶恢復為 Mayberry OU,請使用下列 DN 路徑: Cn = JohnDoe,OU = Mayberry,dc = contoso,dc = com

      注意

      如果您想要將刪除的物件恢復至其原始容器,請將已刪除物件之 lastKnownParent 屬性的值附加到其 CN 值,然後在 [ ] 方塊中貼上完整的 DN 路徑。

    5. 在 [ 操作 ] 方塊中,選取 [ 取代]。

    6. 選取 [ 輸入]。

    7. 選取 [ 同步 ] 核取方塊。

    8. 選取 [ 擴充 ] 核取方塊。

    9. 選取 [ 執行]。

  10. 在您將物件恢復後,請選取 [選項] 功能表上的 [控制項],然後選取 [取出 ] 按鈕, 從 [作用中的 控制項] 方塊清單中移除 (1.2.840.113556.1.4.417) 。

  11. 重設已刪除使用者的使用者帳戶密碼、設定檔、主目錄及群組成員資格。

    當物件被刪除時,所有的屬性值(、、和)除外 SID ObjectGUID LastKnownParent SAMAccountName

  12. 在 [Active Directory 使用者及電腦] 中啟用 reanimated 帳戶。

    注意

    Reanimated 物件的主要 SID 與刪除之前相同,但是必須將該物件重新加入相同的安全性群組,才能對資源進行相同的存取層級。 第一次發行的 Windows Server 2003 和更新版本不會保留 sIDHistory reanimated 使用者帳戶、電腦帳戶及安全性群組的屬性。 Windows Server 2003 和更新版本 Service Pack 1 可保留 sIDHistory 已刪除物件上的屬性。

  13. 移除 Microsoft Exchange 屬性,並將使用者重新連接至 Exchange 信箱。

    注意

    在 Windows Server 2003 和更新版本的網域控制站上進行刪除時,支援已刪除物件的恢復。 在後續升級為 Windows Server 2003 和更新版本的 Windows 2000 網域控制站上進行刪除時,不支援刪除刪除的物件。

    注意

    如果刪除發生在網域中的 Windows 2000 網域控制站上,則此 lastParentOf 屬性不會在 Windows Server 2003 和更新版本的網域控制站上填入。

操作方法:決定刪除發生的時間和位置

當使用者因大量刪除而遭到刪除時,您可能會想要瞭解刪除的起源位置。 其步驟如下:

  1. 若要找出已刪除的安全性主體,請依照 如何在刪除的物件的容器區段中,手動取消刪除物件中 的步驟1到7。 如果樹已刪除,請遵循下列步驟來尋找已刪除之物件的父容器。

  2. 將屬性的值複製 objectGUID 到 Windows 剪貼簿。 當您在步驟4中輸入命令時,您可以貼上此值 Repadmin

  3. 在命令列中,執行下列命令:

    repadmin /showmeta GUID=<objectGUID> <FQDN>
    

    例如,如果刪除的 objectGUID 物件或容器是791273b2-eba7-4285-a117-aa804ea76e95,且 (FQDN) 的完整功能變數名稱為 dc.contoso.com ,請執行下列命令:

    repadmin /showmeta GUID=791273b2-eba7-4285-a117-aa804ea76e95 dc.contoso.com
    

    這個命令的語法必須包括已刪除之物件或容器的 GUID,以及您想要來源之伺服器的 FQDN。

  4. Repadmin 命令輸出中,尋找屬性的原始日期、時間和網域控制站 isDeleted 。 例如,屬性的資訊 isDeleted 會顯示在下列範例輸出的第五行:

    USN 始發 DC Org (USN) Org Time/Date 版本 Attribute
    134759 Default-First-Site-Name\NA-DC1 134759 DateTime 1 objectClass
    134760 Default-First-Site-Name\NA-DC1 134760 DateTime 2 ou
    134759 Default-First-Site-Name\NA-DC1 134759 DateTime 1 instanceType
    134759 Default-First-Site-Name\NA-DC1 134759 DateTime 1 whenCreated
    134760 Default-First-Site-Name\NA-DC1 134760 DateTime 1 isDeleted
    134759 Default-First-Site-Name\NA-DC1 134759 DateTime 1 nTSecurityDescriptor
    134760 Default-First-Site-Name\NA-DC1 134760 DateTime 2 name
    134760 Default-First-Site-Name\NA-DC1 134760 DateTime 1 lastKnownParent
    134760 Default-First-Site-Name\NA-DC1 134760 DateTime 2 objectCategory
  5. 若原始的網域控制站名稱顯示為32字元的字母數位 GUID,請使用 Ping 命令,將 GUID 解析為 IP 位址,以及執行刪除的網域控制站的名稱。 Ping 命令使用下列語法:

    ping -a <originating DC GUID>._msdomain controllers.<fully qualified path for forest root domain>
    

    注意

    -A 選項區分大小寫。 不論始發的網域控制站所在的網域為何,都使用樹系根域的完整功能變數名稱。

    例如,如果始發的網域控制站位於樹系中的任何網域中, Contoso.com 且其 GUID 為644eb7e7-1566-4f29-a778-4b487637564b,請執行下列命令:

    ping -a 644eb7e7-1566-4f29-a778-4b487637564b._msdomain controllers.contoso.com
    

    由此命令傳回的輸出類似下列所示:

    Pinging na-dc1.contoso.com [65.53.65.101] with 32 bytes of data:
    
    Reply from 65.53.65.101: bytes=32 time<1ms TTL=128
    Reply from 65.53.65.101: bytes=32 time<1ms TTL=128
    Reply from 65.53.65.101: bytes=32 time<1ms TTL=128
    Reply from 65.53.65.101: bytes=32 time<1ms TTL=128
    

如何將以後大量刪除的影響降至最低

將使用者、電腦和安全性群組大量刪除的影響降至最低的關鍵是:

  • 請確定您有最新的系統狀態備份。
  • 嚴格控制對特權使用者帳戶的存取。
  • 嚴格控制那些帳戶可以執行的動作。
  • 實踐大量刪除的修復。

系統狀態每日會發生變更。 這些變更可能包括:

  • 使用者帳戶和電腦帳戶的密碼重設
  • 群組成員資格變更
  • 使用者帳戶、電腦帳戶及安全性群組的其他屬性變更。

如果您的硬體或軟體失敗,或您的網站遭受其他災難,您會想要在樹系中的每個 Active Directory 網域和網站中,還原每一組重大變更之後所進行的備份。 如果您不維護目前的備份,您可能會遺失資料,也可能必須復原還原的物件。

Microsoft 建議您採取下列步驟,以防止大量刪除:

  1. 請勿共用內建管理員帳戶的密碼,或是允許共用一般的管理使用者帳戶。 如果已知內建系統管理員帳戶的密碼,請變更密碼,並定義不鼓勵其使用的內部進程。 共用使用者帳戶的「審核」事件會使您無法判斷在 Active Directory 中進行變更的使用者身分識別。 因此,必須不要使用共用使用者帳戶。

  2. 您很少會故意刪除使用者帳戶、電腦帳戶和安全性群組。 尤其是樹刪除的情況。 解除服務與委派的系統管理員能力,以刪除這些物件,使其無法建立及管理使用者帳戶、電腦帳戶、安全性群組、OU 容器及其屬性。 只授與執行樹刪除的許可權最高的使用者帳戶或安全性群組。 這些特權使用者帳戶可能包括企業系統管理員。

  3. 授與委派的管理員只能存取管理員所允許管理的物件類別。 例如,服務台管理員的主要工作是修改使用者帳戶的屬性。 他沒有建立及刪除電腦帳戶、安全性群組或 OU 容器的許可權。 這項限制也適用于其他特定物件類別之系統管理員的「刪除」許可權。

  4. 嘗試使用審核設定追蹤實驗室網域中的刪除作業。 當您熟悉結果之後,請將您的最佳解決方案套用至實際執行網域。

  5. 在主控數十個物件的容器上進行存取控制和審核變更,可使 Active Directory 資料庫大幅成長,尤其是在 Windows 2000 網域中。 使用鏡像生產網域的測試域,評估可能的變更,以釋放磁碟空間。 檢查裝載的 ntds.dit 檔的硬碟磁片磁碟機,以及實際執行網域中網域控制站的記錄檔,以取得可用的磁碟空間。 避免在網域網路控制標頭上設定存取控制和審核變更。 進行這些變更將不必要地套用至分割區中所有容器之所有類別的所有物件。 例如,避免對網域名稱系統進行變更 (DNS) 和分散式連結追蹤 (DLT) 記錄登錄] 的 [CN = SYSTEM folder] 的域分割區。

  6. 使用最佳的 OU 結構,將使用者帳戶、電腦帳戶、安全性群組和服務帳戶隔離在各自的組織單位中。 當您使用此結構時,您可以將自由的存取控制清單套用 (Dacl) ,以用於委派管理的單一類別的物件。 您也可以根據物件類別還原物件(如果必須還原)。 下列文章中的「 建立組織單位 」一節將討論最佳作法 OU 結構:
    用於管理 Windows 網路的最佳做法 Active Directory 設計

  7. 在反映實際執行網域的實驗室環境中測試大量刪除。 選擇對您有意義的復原方法,然後再將它自訂至您的組織。 您可能想要識別:

    • 每個定期備份之網域中的網域控制站名稱
    • 備份映射的儲存位置
      理想情況下,這些影像會儲存在其他硬碟上,此硬碟是樹系中每個網域的通用類別目錄本機。
    • 要聯繫之服務台組織的成員
    • 建立該連絡人的最佳方式
  8. Microsoft 所看到之使用者帳戶、電腦帳戶和安全性群組的大部分大量刪除都會意外刪除。 請與您的 IT 人員討論此案例,並開發內部行動計畫。 著重于及早偵測。 並儘快傳回網域使用者和商務的功能。 您也可以執行下列步驟,以避免因 ACLs 組織單位 () 中的存取控制清單而發生意外的刪除。

    如需如何使用 Windows 介面工具防止意外大量刪除的詳細資訊,請參閱防止 意外大量刪除 Active Directory 中

    如需如何使用 Dsacls.exe 或腳本防止意外大量刪除的詳細資訊,請參閱下列文章:

    腳本來保護組織單位 (ou) 以防意外刪除

可協助您從大量刪除復原的工具和腳本

Groupadd.exe 命令列公用程式會讀取 memberOf OU 中使用者集合的屬性,並建立一個 .ldf 檔案,將每個還原的使用者帳戶新增至樹系中每個網域的安全性群組。

Groupadd.exe 會自動探索刪除的使用者是其成員的網域和安全性群組,並將其新增回這些群組。 此程式在方法1的步驟11中有更詳細的說明。

Groupadd.exe 會在 Windows Server 2003 和更新版本的網域控制站上執行。

Groupadd.exe 會使用下列語法:

groupadd / after_restore ldf_file [/ before_restore ldf_file ]

在這裡, ldf_file 代表要與上一個引數搭配使用的 .ldf 檔案名稱, after_restore 代表使用者檔案資料來源,並 before_restore 表示實際執行環境中的使用者資料。 (使用者檔案資料來源是好的使用者資料。 )

若要取得 Groupadd.exe,請與 Microsoft 產品支援服務聯繫。

本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 不以默示或其他方式,提供與這些產品的效能或可靠性有關的擔保。

參考

如需如何使用 Windows Server 2008 R2 中所包含之 AD 回收站功能的詳細資訊,請參閱 Active Directory 回收站逐步指南