次の方法で共有


Windows 秘話: ありふれた風景の中に隠れているもの

名前どおりのことを過不足なく的確に実施するポリシーもあります。このポリシーを設定して、名前と異なる処理が行われることを期待すると予期しないことが起こります。

Raymond Chen

[マイ コンピューター] フォルダーでドライブを非表示にするポリシーは、単純に [マイ コンピューター] フォルダーでドライブを非表示にするポリシーです。このポリシーは、どんな経路でアクセスした場合にも、ドライブへのすべてのアクセスをブロックすることを目的としたものではありません。Windows 95 以来、エクスプローラーには、[マイ コンピューター] フォルダーでドライブを非表示にするポリシーが用意されています。それほど驚くべきことではないかもしれませんが、このポリシーには "指定したドライブを [マイ コンピューター] 内で非表示にする" という名前が付けられています。

このポリシーの名前では、[マイ コンピューター] でドライブを非表示にすることが謳われていますが、多くのユーザーは、このポリシーが、それ以上の処理を行うと考えています。このポリシーが、エクスプローラーや他の Windows コンポーネントの UI を使用して、指定したドライブにあるものへのアクセスを防げると考えているユーザーもいます。また、このポリシーが、どんな手段を使った場合でも、指定したドライブへのアクセスを防ぐと考えているユーザーもいます。

もう一度、説明させてください。このポリシーは、[マイ コンピューター] でドライブを非表示にするものです。これには、エクスプローラーに [マイ コンピューター] が表示されたり、[開く] ダイアログ ボックスに [マイ コンピューター] が表示されることを含みます。それだけです。

希望的観測

ある顧客は、C ドライブへのアクセスをブロックする目的で、このポリシーを設定しましたが、ユーザーが、依然として C ドライブにアクセスできることに気付きました。ユーザーは、ショートカットのリンク先が C ドライブにある場合でも、C ドライブにインストールされているプログラムのショートカットを単純に右クリックして、プロパティを確認し、[ファイルの場所を開く] をクリックして、ショートカットのリンク先のフォルダーを表示することができました。エクスプローラーを使用して、ディレクトリ ツリーを上方向に移動して、C ドライブのルートにアクセスするという操作については、このポリシーでブロックされていないため、ユーザーは、この方法を使用して、C ドライブにアクセスすることもできました。

このポリシーでブロックしているのは、ユーザーが [マイ コンピューター] を開いて、C ドライブをクリックすることです。それ以外の方法で C ドライブのルートにアクセスする方法を見つけた場合は、ユーザーの勝ちです。このポリシーは、グループ ポリシーを回避して、[マイ コンピューター] でドライブを非表示にするものではありません。このポリシーは、名前のとおりの処理を実行したまでです。つまり、[マイ コンピューター] でドライブを非表示にしました。ユーザーが [マイ コンピューター] に C ドライブが表示されるようにする魔法のような方法を見つけた場合、それを回避する方法はありません。魔法のような抜け道は、ポリシーで実際に行えることについて管理者が想像している世界の中にありました。

このポリシーは、ユーザーが間違ってアクセスしないようにする必要があるドライブに、ユーザーがアクセスする可能性を下げることを目的としています。たとえば、ユーザーがかかわるべきでない、バックアップ用のドライブや他の管理目的用のドライブが該当します。何としてでもユーザーがドライブにアクセスすることをブロックするには、適切なセキュリティ メカニズムを使用する必要があります。具体的には、ドライブまたはサブディレクトリにアクセス制御リスト (ACL) を設定して、アクセスを付与したユーザーのみがアクセスできるようにします。

Windows XP の開発中に、この "指定したドライブを [マイ コンピューター] 内で非表示にする" ポリシーの範囲を拡張して、指定したドライブへのあらゆる種類のアクセスにも対応できないかという要請がありました。しばらくの間、この拡張を試してみましたが、すぐに別の企業ユーザーから、バグの報告が寄せられました。このユーザーは、このポリシーの範囲が非常に狭いことを当てにしており、このユーザーの企業では、[マイ コンピューター] で C ドライブが表示されないようにしていましたが、ユーザー プロファイルを C ドライブに保存していたので、他の手段で C ドライブにアクセスできるようにする必要がありました。言うまでもなく、ユーザーは各自のプロファイルにアクセスできる必要があります。

実際、C ドライブには Windows OS のファイルが格納されているので、エクスプローラーで C ドライブへのアクセスを完全にブロックした場合、ユーザーは何もできなくなります。C ドライブへのすべてのアクセスに対応するように "指定したドライブを [マイ コンピューター] 内で非表示にする" の範囲を拡大するように要請すると、ユーザーが、コンピューターにまったくアクセスできなくなる結果を招くことになります。

それが最終目的であるなら、もっと簡単な方法があります。その場合は、単純にユーザーのコンピューターを撤去すればよいのです。

Raymond Chen

Raymond Chen は自分の Web サイト「The Old New Thing」および同じタイトルの書籍 (Addison-Wesley、2007 年) で、Windows の歴史、Win32 プログラミング、およびメールボックスの移行について扱っています。

関連コンテンツ