@ Wise-Hawk.com

Wise-Hawk.com > blog > 個別エントリー・アーカイブ

Blog -マイクロソフトに一喜一憂する日常-


« 結論 | メイン | SMSチャット »

2005年11月03日

Access-based Enumeration 概説 と 小ネタ [B. Microsoft]

Windows Server 2003 Access-based Enumeration (略称: ABE) というツールはご存知でしょうか?
今年の春にリリースされた、Windows (主にファイルサーバー)の利便性とセキュリティを高めてくれる Micorosoft 無償提供ツールです。個人的には今年の無償提供ツールのベスト3に入ります。
# 現時点で英語版でしか提供されていませんが、日本語OSでも問題なく導入・設定可能です。

【Windows Server 2003 Access-based Enumeration】
http://www.microsoft.com/windowsserver2003/techinfo/overview/abe.mspx

一言で説明すると、「アクセス権のないユーザーにはファイルの存在そのものを見せない」ことを可能にしてくれるもので、Windows Server 2003 SP1 が適用されているファイルサーバーに導入することができます。

従来のWindowsの共有フォルダの場合、アクセス権のある/なしに関わらず、共有フォルダ内のディレクトリやファイルはすべてのユーザーに一覧表示されていました。そのため、たとえば機密性が高くてファイル名さえ一部関係者以外には見せるわけにはいかないようなファイルを、同一の共有フォルダに置くわけにはいきませんでした。
また、エクスプローラから一覧表示しただけではアクセス権(読み取り権限)があるのか分からないため、せっかくダブルクリックしてファイルを開こうとしたのに「アクセスが拒否されました。」なんていうエラー メッセージを見せられることも多々あるかと思います。自尊心が強いクリエイティブ職の方々などは特に、“自分が開けないファイルが存在する”ということを知るだけでやる気をなくすようです。。。

そんな問題を解決してくれるのが ABE なわけです。ABE を導入して有効にすると、その共有フォルダ内で「読み取り」権限を持たないファイル(またはフォルダ)は、ユーザーから見えなくなります。セキュリティを意識する人にとっては、不用意に他人にファイルの存在を知られる心配がなくなりますし、一般ユーザーから見れば自分に関係するファイルだけが一覧表示されるので作業効率が上がります。

ABE を導入できるサーバーが Windows Server 2003 SP1 以降に限定されてしまう点でややハードルが高いのですが、クライアント側はNTFSアクセス権を理解できるOSであればなんでもよく、また設定も共有フォルダのチェックボックスひとつで済む容易なものです。今後、Windows Server 2003 SP1 あるいは 同R2の普及に伴い、徐々にABEも広がっていくことでしょう。

--
さて、導入も設定も簡単なABEですが、いくつかTipsを載せておきます。

■ インストーラーを走らせずに、ABEを導入する方法 ■
通常は、ABEのセットアップ用MSIを走らせることでインストールができるのですが、本番稼動する多くのサーバーでMSIインストーラーを走らせるのは気が引けるという環境もあるかと思います。
その場合は、次の手順で対応可能です。

1. とりあえずテスト機などのインストーラーを走らせてよい端末で、普通にインストールを行う。
2. インストール後、”%windir%\system32”フォルダにある[abecmd.exe][abeui.dll]の二つのファイルを本番機にコピペする。
3. 本番機のコマンドプロンプトで、”regsvr32 abeui.dll”と入力してDLLの登録を行う。

これだけです。これでファイルをコピペした先のサーバーでもABEが有効になり、通常通り設定も行えます。

# このTipsは、とあるMVPのBlog にて知りました。

■ コマンドラインから制御する ■
ABE はほとんど設定するような項目もありませんので GUI でも事足りますが、バッチでまとめて設定したいなどの要望にこたえるために、コマンドベースでも制御できるようになっています。
ABE をインストールしたときに生成される[abecmd.exe]というEXEを使用します。

使い方は簡単で、ヘルプも充実していますので、とりあえず構文だけ載せておきます。
 abecmd [/enable | /disable] [/server ] {/all | }

■ API で制御する ■
わざわざAPIから叩かなければやっていけないほど複雑な環境はほとんどないと思いますが、ABE 制御用の Win32 API (NetShareSetInfo - SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM) もしっかり用意されています。これに関しては、私はコメントできるスキルを持っていないので、@ITの記事を参考にしてみてください。

他にもちょっとしたTipsが実は満載のABEですが、何はともあれ使用できる環境にある人は使ってみてください。かなり便利ですから。

投稿者 HAWK : 2005年11月03日 00:16

トラックバック

このエントリーのトラックバックURL:
http://www.wise-hawk.com/blog/mt-tb.cgi/96

コメント

コメントしてください




保存しますか?