2010-12-08 4 views
1

ファイルのACLを変更して、「フルアクセス許可」を特別なユーザーに設定したいとします。SIDだけが分かっている場合、WindowsのファイルACLを変更するにはどうすればいいですか?

OSが英語である場合、私はこの作品だけます。caclsコマンドにcacls . /e /t /p Everyone:f

しかしを知っています。ドイツ語システムでは、 cacls . /e /t /p Jeder:fである必要があります。

ユーザー「everyone」(S-1-1-0)のwell-known SIDsは知っていますが、私はcaclsで使用できないようです。

私はcacls . /e /t /p S-1-1-0:fを試しました。

このジョブにWindowsコマンドラインツールを使用する方法はありますか?私はこの仕事のソフトウェアや他のコマンドラインツールを自分のソフトウェアにバンドルすることはできません。

ソリューションは、Javaプロセスから呼び出される必要がありますが、問題ではありません。

+1

caclsはSIDで動作しません。 Javaから呼び出す場合は、caclsを呼び出す前にSIDをプログラムのUserに変換してください。 – Luke

答えて

0

から、私は解決策を見つけたことを使用したソリューションです。私はセットアップ作成ツールのベンダーのライブラリを使用しています。

編集:問題の

ソリューション:

セットアップ-作成ツールInstall4jは、メソッドを持っているgetUserLogin(String sid)その戻り値のようなものです:私は、ACLを変更するためにcaclsを使用WORKSTATION1\User1

+0

この投稿に価値があるように解決方法を教えてください。さもなければ、それを閉じて削除することもできます。 –

1

これは、Windowsのバージョン具体的に、しかし

whoami /groups 

を見て、その結果を解析することがあります。 Windows 7では、この

whoami /groups | find "S-1-1-0" 

が、この時に取得するための全体のWin32 APIがあります

C:\>whoami /groups | find "S-1-1-0" 
Everyone         Well-known group S-1-1-0 
        Mandatory group, Enabled by default, Enabled group 

私のためにこのようになります。ここではC#

http://www.ms-news.net/f2438/setpermission-everyone-c-4997971.html

関連する問題