現在、Windows Server 2008 のAD設計のコース準備をしています。
そこでこんな記述があって悩んでいました。
・AD DSを復元するときの考慮事項というのがあり、削除後にAuthoritative restoreによって復元したユーザーオブジェクトのグループメンバシップの復元は、いつLVRを実装したかによって異なる
ん?なにが言いたいの?ということで調べてみるとこんな情報が・・
Authoritative restore issue with LVR enabled attributes
障害回復: Active Directory ユーザーとグループ
これらの情報から整理すると
■復元における問題
Authoritative restoreによる復元ではオブジェクトが持つ前方リンクを元の状態にきちんと戻すことができない。この問題は[W2000]のフォレスト機能レベルで運用していたフォレストを[W2003]のフォレスト機能レベルにアップした場合にのみ起こる。
特に、削除されたグループメンバーシップを回復するためにグループオブジェクトのAuthoritative restoreを行っても、[W2003]のフォレスト機能レベルにアップグレードする前に作成されたグループメンバシップ情報は復元されない
■シナリオ
AD管理者は1つのグループのメンバーから複数のユーザーを削除した(ユーザー自体の削除ではない。あくまでもグループメンバーからの削除)。ところがこれがミスオペだとわかり、管理者は元の状態に戻さなければならなくなった。
■管理者はどうすれば良いか
この状況から回復させる一つの方法は次の通り。
本番環境からは隔離された別のマシンにシステム状態の復元を行う。こうすれば、他のDCから複製により上書きされることは無い。
そして、ポイントはグループメンバーシップを復元するためにNtdsutilによって作成されるldfファイルを使用することだ。Ntdsutilによって作成されるldfファイルを本番環境に転送し、そして復元のためにインポートする。
■そもそもこんなことが起こらないようにする
フォレスト機能レベルがWindows server 2003以前に作成されたグループはLVRが有効になっても新しいレプリケーション メタデータが自動的に適用されるわけではない。あくまでもフォレスト機能レベルがWindows server 2003になってLVRが有効の状態でグループにユーザーを追加した時に、新しいレプリケーション メタデータが自動的に適用されることになる。
ここが問題になる。ということはAuthoritative restoreによる復元でグループを復元したとしても、ユーザー情報は復活しないということになる。
ということで、フォレスト機能レベルをWindows server 2003に上げたら、全てのグループのユーザーを入れなおす作業をしておいたほうがいいことになります。これはldifdeコマンドで簡単にできるでしょう。
グループのユーザーの数が少なければ手作業でもそんなに大変ではないのであまり問題にはならないかな?
あと2008ならADデータベースマウントツール(dsamain.exe)を使うことによって過去のスナップショットからグループの情報を参照できるので最悪の事態は避けられると思われます。
コメント
> ■そもそもこんなことが起こらないようにする → これは面白かったです。ユーザーを間違って消してしまったときは、安易にグループをAuthoritative Restoreするべきじゃないですね。これは頭の痛い問題です。(Windows Server 2008 R2にしなさい!ってことですかね?)
確かに!R2にしてAD Recycle Binを有効にしましょう(笑)