2008/11/23(Sun)OSをインストールしなおしたときのNTFSセキュリティ再設定方法

2008/11/23 4:01 Software::Windows
一昔前から発売されているWindows PCのパーティションテーブルには、NTFSが採用されることが増えたが、これのアクセス権限はUNIXやLinuxのそれの設定より遥かにややこしい。

Linux等では、ユーザーID/グループIDと呼ばれる3~5桁程度の数字によってファイルやディレクトリの構造が管理され、ユーザー・グループ・その他という3段階のパーミッションを設定するが*1、Windowsの場合は、SID*2というものが使われる。
SIDでは再セットアップしない限り同じ値が振られないことが保障されている。

SIDとその接頭語の意味は@IT:Windows TIPS -- Knowledge:オブジェクトを識別するSIDとは?に詳しく紹介されているので、気になる方は参照していただくとして、OSを再インストールした場合などに、旧システムで作ったファイルにアクセスできなくなることがある。

その直し方を紹介。
OS入れ替え以前と同じユーザー名とパスワードのユーザーでログインしていると仮定。
例えば、My Documentsやデスクトップなんかにアクセスしようとすると、アクセスできるものの書き込みできないことに気付くであろう。
(おそらく以前と違うユーザー名だと、そもそもアクセスできないと思う。)

ntfs_security_01.png


こういうときは、そのフォルダのセキュリティを確認。
"デスクトップ"を右クリックして、"プロパティ"→"セキュリティ"タブを開くとこうなる。

不明なアカウントが以前のユーザー
ntfs_security_02.png


詳細設定を押してみる。


▼アクセス許可
ntfs_security_04.png


ここの不明なアカウントを現在のユーザーに変更すればよい。
編集ボタンをクリック。


ntfs_security_05.png


さらに、編集ボタンをクリック。

ntfs_security_06.png


変更ボタンをクリック。

ntfs_security_07.png


現在(移行後のOS)のユーザー名を入力して、OKボタンをクリックする。
詳細設定をクリックして、今すぐ検索をクリックすると、一覧から選ぶことも可能)

ntfs_security_08.png


変更された。

ntfs_security_09.png


すべての子孫の継承可能なアクセス許可のすべてを、このオブジェクトからの継承可能なアクセス許可で置き換えるにチェックを入れることで、中身のファイルやフォルダについても同様のアクセス許可が設定される。
チェックを入れてからOKをクリック。

ntfs_security_10.png


確認して、はいをクリック。

ntfs_security_11.png


気長に待ちます。

ntfs_security_12.png


閉じるだけ。
今度は所有者タブを開いてみます。

▼所有者
ntfs_security_03.png


今回は同じユーザー名をそのまま引き継いだからOKなのか、デスクトップは現在の所有者が移行後のOSのユーザーとして認識されていた。
しかし、マイドキュメントに関しては、以前のSIDを引きずっていた模様。

ntfs_security_13.png


こうなっていた場合は、編集をクリックして、UAC認証し、

ntfs_security_14.png


この画面になったら、現在のユーザーを選び、サブコンテナとオブジェクトの所有者を置き換えるにチェックを入れてから、OKをクリック。

こんな感じで、アクセス許可と、所有者両方が現在のユーザーになるように再設定すれば、問題なくファイルを扱える。

*1 : SELinuxは置いといて……^^;;

*2 : Security Identifier; セキュリティ識別子