これは、WindowsNT 系用です
多分...
はじめに
ACL の一覧表示が欲しかったので、作った。
ファイル・サーバやプリンタ・サーバなどのアクセス権限管理に使えるのではないでしょうか?
コマンド簡易リファレンス
- GetACLList.exe
- ファイル/ディレクトリの ACL を表示する
第二引数にファイルパスを指定するだけ。
バッチファイルや WSH でディレクトリの再帰処理は簡単なので、サブディレクトリへの再帰処理をしたければ、バッチを組めばいいよ
- GetPrnList.exe
- 「-n プリンタ名」で、指定したプリンタの ACL を表示する
「-l」で全プリンタの ACL を表示する
「-d」で "通常使うプリンタ" の ACL を表示する
- GetRegACLList.exe
- 「-v レジストリパス」で、指定したレジストリキーの ACL を表示する
「-v -s レジストリパス」で、指定したレジストリキー以下のサブキーの ACL も再帰的に表示する
- GetScACL.exe
- 「-v サービス名」で、指定した NT サービスの ACL を表示する
「-l」で、NT サービス一覧を表示する(起動しているものから停止しているもの全て)
「-lv」で、全ての NT サービスの一覧と、各々の ACL を表示する
(ActiveDirectory 環境でテストしていないです)
- GetShareList.exe
- 「-v 共有名」で、指定したファイル共有の ACL を表示する
「-l」で、共有一覧と、各々の ACL を表示する
使用方法
- sCOMmon.dll が必要ですので、ダウンロードして、sCOMmon.dll をシステム・ディレクトリ(%SystemRoot%\System32)にコピーしてください。
- SRegCore.dll が必要ですので、ダウンロードして、sCOMmon.dll をシステム・ディレクトリ(%SystemRoot%\System32)にコピーしてください。
- ファイルをダウンロードします。
- ダウンロードしたファイルを解凍しします。
(LHA は、吉崎栄泰氏が、著作権を所有)
- GetACLListCommon.dll をパスの通ったディレクトリ(または、カレントディレクトリ)にコピー
- 後は、好きな exe をコマンド・プロンプトから実行するだけ
免責など
著作権は保持します。
しかし、このソフトを使用したことによって生じた、
いかなる損害についても責任は持ちません。
ソースコードについては、各自の責任において、自由にいじってくれてもいいです。
修正についての提案や、バグレポートなどは、メールにて受け付けています。
DownLoad(ACL.lzh as 297,828byte) (ACL.lzh.base64)
GetACLListCommon.dll is 73,728byte(ver1.0.0.0)
GetACLList.exe is 20,480byte(ver1.0.0.0)
GetPrnList.exe is 20,480byte(ver1.0.0.0)
GetRegACLList.exe is 20,480byte(ver1.0.0.0)
GetScACL.exe is 20,480byte(ver1.0.0.0)
GetShareList.exe is 20,480byte(ver1.0.0.0)
変更履歴
- 初版(ver1.0.0.0)
(2006/08/20)
- 初版(ver1.0.0.0)
(2006/08/25) sCOMmon.dll のバグ修正に伴い再コンパイルした
バージョンアップ予定の機能
一応、書くだけ書いておくけど、スケジュールは未定
- バグ取り(多分、たくさんバグがあるはず^^)
- ひとつの exe 化 (一つ一つコンパイルするのが面倒になってきた)
- 名前付パイプの ACL も参加予定(名前付パイプって使ったことがな〜いので、まずは名前付パイプの仕組みの理解からなので、ずっと先)
- NT カーネルオブジェクトの ACL も参加予定 (って私が NT カーネルの仕組みが理解できてからね)
- ファイル ACL の再帰処理化
- ACL ではないけど、実行中ユーザのユーザ権限の一覧(ログオン権限とか)
- printer.h にプリンタの ACL の対応表を保存したのだけど、Win32 標準のが欲しい(いまだにどの #define が該当するのかは見当がつかず....)
"通常使うプリンタ" のハンドルを取得する関数が VC++6.0 SP6 にはなかったので、GetPrnList.exe だけ PlatformSDK の[ヘッダ|ライブラリ]ファイルでコンパイルしてます
全て _UNICODE オプションでコンパイル済
- COM 化
- GetScACL.exe を AD 環境でテストしていない
- usage の文章が意味不明...orz
- exe のファイル名も意味不明
(GetACLListCommon.dll) メソッド一覧
関数名(引数)