2014年12月19日金曜日

ADMT 3.0でユーザー移行時にSIDヒストリ生成が失敗する

1日の教育コース「Windows環境マイグレーション実践」を実施していて気付いたことがあります。

ADMTで、アカウントを移行(複製)するとき、最後に移行元の管理者アカウントを聞いてきます。既に管理者権限があるのに、なんで聞いてくるのか分かりませんが、確認のためなのでしょう。

Windows Server 2003上でADMT 3.0を実行した場合、管理者パスワードを間違えても、その時はエラーにならず、以下のような現象が出ます。

  • 移行時にエラーが出る
  • ユーザーアカウントの複製は完了
  • ただしSIDヒストリが生成されない(エラーメッセージはこれ)

ADMTのデータベースには「移行済み」マークが付くので、再移行はできませんし、SIDヒストリの更新もできないという状態になってしまいます。

ユーザーの権利やグループのメンバーシップ情報などは、更新もできるのですが、SIDヒストリは更新の対象になっていません。

しかし、ADMT 3.2 QFE をWindows Server 2012 R2上で実行した場合は、管理者アカウント情報を間違えた時点で適切なエラーが表示され、先には進めませんでした。

よかった。

なお、移行に失敗してしまった場合、以下の2つ解決方法がありそうですが、どちらも問題があります。

  • 移行先のユーザーを削除し、別のマシンにADMTをインストールして再移行
    移行自体は成功しますが、ADMTのデータベーステーブルにある「移行先ユーザーの新SID」が適切な値にならず、セキュリティ変換などに支障をきたします。
  • 移行先のユーザーを削除し、ADMTのデータベースを直接操作して、移行しなかったことにする
    これができればいいのですが、ADMTのデータベーススキーマが公開されていません。

ところで、先日、デモ中に、クライアントPCの移行に失敗したのですが、単にNT4互換の暗号化アルゴリズム指定が抜けていたためでした。テキストの手順通りに実行すれば問題なく移行できます。

KONICA MINOLTA DIGITAL CAMERA
▲マイグレーションと言えば、アフリカ大陸で毎年見られる「ヌーの大移動」
(写真は移動の時期ではありません)