アクセス権の無いファイル/フォルダを隠したい

ファイルサーバ上のフォルダは、アクセス権を適切に設定することで、一定のグループのユーザにのみアクセスを付与し、その他のユーザからのアクセスを禁止することができます。しかしながら、Windowsの既定の設定では、アクセス権の無いファイルやフォルダも、その存在は見えてしまいます。例えば共有フォルダの下に、部署別のフォルダを作成した場合、多くのユーザにとってアクセス可能なフォルダは自分の所属部署だけであるのに、他の全部署のフォルダが見えてしまってはいないでしょうか?

「読み取り権限のないフォルダの存在自体を隠したい」という要望をよくいただきますが、結論から言うと、出来るのです。しかも、限りなくWindowsファイルサーバの標準機能なのです。Windows Server 2003(SP1以降)およびWindows Server 2008では、ABE(Access Based Enumeration)という機能が利用できます。

ただし、Windows Server 2003の場合、マイクロソフトのWebサイトから無償配布されるモジュールをインストールする必要がありますし、Windows Server 2008の場合も、共有フォルダのプロパティの詳細設定の中で機能を有効にする必要があります。そんなわけで、ABE機能の存在が知られていないのかもしれません。

ABEの設定方法

ABE自体は、目新しい機能ではなく、昔からWindowsの標準機能として存在しているものですので、下記のような紹介記事を参考に、設定してみてください。

Windows 2003(SP1以降)でABEを使う方法

こちらの記事(@IT:Windows Server SP1 レビュー 第六回 アクセス・ベースのディレクトリ列挙 ABE)が参考になります。

Windows 2008でABEを使う方法

こちらの記事(@IT:アクセス・ベースの列挙機能を利用する(Windows Server 2008編))が参考になります。

FileBlogでABEを利用する際の注意点

このWindows ABEは、FileBlog(弊社のファイルサーバWebアクセス・サーバ製品)の利用に際しても「アクセス権の無いフォルダ・ファイルの存在自体を隠す」ことが可能です。

注意しなければならないことは、ABEはネットワークドライブについてのみ設定可能であり、ローカルドライブを対象とできないことです。そのため、FileBlogとABEを組み合わせるときは下記の点に注意してください。

  1. FileBlogのドキュメントルートフォルダを、共有フォルダとする

  2. FileBlogの検索・ブラウズ対象フォルダとして、Windows共有フォルダを指定擦る必要があります。たとえばローカルディスク上のフォルダ(例えばC:\Docs\Share)をドキュメントルートとしていた場合には、このフォルダを共有フォルダ(例えば”Share”)として公開する必要があります。

  3. ドキュメントルートフォルダのパス指定は、UNC形式で行う

  4. FileBlogインストーラあるいはFileBlog管理ツールで、ドキュメントルートフォルダのパスを設定するとき、「\\FileSVR01\Share」のように、UNC形式(”\\サーバ名\共有名”の形式)で指定する必要があります。「C:\」のようなドライブ文字で始まるパスでは、ABEが有効になりません。

  5. FileBlogのインデクサ・サービスに、ネットワークドライブへのアクセス権を与える

  6. FileBlogのインデクサ・サービスは、ドキュメントルートのファイル変更を検知して、検索インデックスの更新を行うサービスです。FileBlog Ver.3ではFb3Indexer、FileBlogVer.2以前ではTpIdxSvrというサービスがこれに相当します。このインデクサ・サービスは、ドキュメントルートの読み取り権限を必要としますが、サービスの既定の実行ユーザであるローカルシステムアカウントでは、リモートマシン上のネットワークドライブにアクセスすることが出来ません。この場合には、インデクサ・サービスの実行ユーザを変更して、ネットワークドライブへの読取権限を持つドメインユーザに変更してください。また、FileBlogインデクサ・サービスを起動できるように、このドメインユーザをFileBlogサーバのローカルの管理者グループに所属させてください。

インデクサ・サービスの実行ユーザを変更する手順については、マニュアル(サービス実行ユーザの設定)をご確認ください。