Active Directory Recycle Binを有効にすると、有効化後に削除されたユーザー、グループ、OU等を、リンク属性を含む削除前の論理状態へ復元しやすくなります。前提はフォレスト/ドメイン機能レベルWindows Server 2008 R2以上、適切な権限、AD Administrative CenterまたはActiveDirectory PowerShellモジュールです。有効化はフォレスト全体の不可逆な変更で、無効へ戻せません。AD複製とSystem Stateバックアップを確認し、変更承認後に実施します。
Recycle Binを有効にしても、過去に削除済みのオブジェクトは復元対象になりません。フォレスト破損、ランサムウェア、属性の誤変更にも備えるため、バックアップは継続します。
有効化前の確認
- フォレストと全ドメインの機能レベル
- 全DCの複製、DNS、SYSVOL、時刻の健全性
- System State/AD対応バックアップの最終成功と復元試験
- Enterprise/Domain Admin等の必要権限と二者承認
- Deleted Object LifetimeとTombstone Lifetimeの方針
- ADAC/RSAT/PowerShellモジュールの管理端末
機能レベルを上げる必要がある場合は、古いDC、アプリ、LDAP、バックアップ製品の互換性を先に確認します。Recycle Bin有効化のためだけに急いで古いDCを削除せず、正規の降格、メタデータ、DNS、FSMO、複製を計画します。
ADACから有効化する
- Server ManagerのToolsからActive Directory Administrative Centerを開きます。
- Manage → Add Navigation Nodesで対象フォレストのドメインを表示します。
- 対象ドメインを選び、TasksのEnable Recycle Binを選びます。
- 不可逆である警告と対象フォレストを確認し、承認後に実行します。
- F5で更新し、Deleted Objectsコンテナーが利用できることを確認します。
有効化は構成パーティションの変更として複製されます。実行DCだけで成功とせず、全DCへの複製とイベントを確認します。複製障害中に機能を有効化して結果がDCごとに異なる状態を放置しません。
PowerShellで有効化する
現在のオプション機能状態を読み取り、対象フォレスト名を確認してから`Enable-ADOptionalFeature`を使います。公式例の`contoso.com`やDNをそのまま使用しません。実行前に`-WhatIf`と`-Confirm`を使い、変更票へ出力を保存します。
Get-ADOptionalFeature -Filter 'Name -like "Recycle Bin Feature"' | Select-Object Name,EnabledScopes
Enable-ADOptionalFeature -Identity 'Recycle Bin Feature' -Scope ForestOrConfigurationSet -Target 'ad.example.jp' -WhatIf
WhatIf後に対象と権限を二者確認し、承認済み保守時間に実行します。コマンド履歴へ資格情報を直書きせず、専用管理端末と一時的な特権を使います。EnabledScopesへ対象が表示され、複製後に各管理端末でDeleted Objectsを確認します。
ADACで削除オブジェクトを復元する
ADACの対象ドメインでDeleted Objectsを開き、名前、ObjectClass、削除時刻、Last Known Parent、GUIDを確認します。似た名前の別ユーザーを誤復元しないよう、申請者と二者確認します。Restoreは元位置、Restore Toは指定OUへ戻します。
親OUと子オブジェクトをまとめて削除した場合、依存順を考えます。親がなく復元できないときは先に親を復元するか、安全な一時OUへRestore Toします。復元後のグループ所属、Manager、ACL、メール、ライセンス、アプリ連携を確認します。
PowerShellで対象を探す
Get-ADObject -Filter 'isDeleted -eq $true -and Name -like "*user1*"' -IncludeDeletedObjects -Properties lastKnownParent,whenChanged,objectGUID | Format-List Name,ObjectClass,whenChanged,lastKnownParent,objectGUID
フィルターを広くして結果を直接`Restore-ADObject`へパイプすると複数オブジェクトを誤復元します。まず読み取り一覧を保存し、GUID、削除時刻、元OUを特定します。ユーザー名は削除時に識別子が付くため、msDS-LastKnownRDN等も確認します。
$obj = Get-ADObject -Identity '<確認済みGUID>' -IncludeDeletedObjects -Properties *
$obj | Restore-ADObject -WhatIf
`Restore-ADObject`は`-NewName`や`-TargetPath`を指定できます。元OUが廃止済み、同名が既に存在、組織変更がある場合に使います。WhatIfで対象を確認し、復元先OUのGPO、委任、同期、ライセンスが適切かを承認します。
復元後の受入確認
- ユーザー/グループ/OUのGUIDとSIDが期待どおり
- グループ所属とアクセス権が復元した
- 無効化、パスワード、MFA、ライセンスを安全に再設定した
- GPO、メール、Entra同期、業務アプリが正常
- 削除原因となった自動化や権限を修正した
- 監査ログ、申請、実行者、検証結果を保存した
復元したユーザーを即有効にせず、削除理由とセキュリティ状態を確認します。侵害対応で削除したアカウントなら資格情報、トークン、MFA、端末、アプリ秘密をローテーションします。退職者を誤って再有効化しません。
復元できない場合
有効化前の削除、Deleted Object Lifetime超過、再利用/ガベージコレクション後、フォレスト障害ではRecycle Binから戻せません。System Stateの権威復元、バックアップからの粒度復元、Microsoftサポート等を検討します。稼働DCのデータベースファイルを直接編集しません。
運用に組み込む
重要OU、特権グループ、GPO、DNS、サービスアカウントの削除をアラートし、削除権限を最小化します。Recycle Binの保持期間と容量を監視し、四半期ごとにテストオブジェクトの削除・復元を訓練します。復元可能だから削除承認を緩めないでください。
OUをまとめて復元するとき
OU削除では配下のユーザー、グループ、コンピューターが多数Deleted Objectsへ移ります。親子関係を確認せず名前一致で全件復元すると、別時刻に削除された無関係オブジェクトまで戻ります。削除時刻、lastKnownParent、ObjectGUIDで復元セットを作り、親OUから順に段階復元します。
復元したOUへリンクされていたGPOは別オブジェクトであり、OU復元だけでリンクや委任が完全に戻るかを確認します。保護されたオブジェクト、継承、AdminSDHolder、Entra Connectの同期範囲も再評価します。
保持期間と容量
Deleted Object LifetimeとTombstone Lifetimeは、復元可能期間とディレクトリDB容量へ影響します。既定値を推測せずフォレストで読み取り、法務・復旧要件に合わせます。長くすれば永続バックアップになるわけではなく、DCバックアップ保持とフォレスト復旧期間も整合させます。

コメント