今回は、これを使います。
ICACLS <名前> /findsid <SID> [/T] [/C] [/L] [/Q]
ICACLS <名前> /findsid <SID> [/T] [/C] [/L] [/Q]
    <SID> が明示されている ACL を含むすべての一致する名前を検索します。
いつものように実験に使いファイル作成。
C:\Users\takk\Desktop>echo HELLO > test.txt
C:\Users\takk\Desktop>icacls test.txt
test.txt S-1-5-21-282166592-494520350-4258074492-1003:(I)(F)
         NT AUTHORITY\SYSTEM:(I)(F)
         BUILTIN\Administrators:(I)(F)
         DESKTOP-TRO4JUU\takk:(I)(F)
1 個のファイルが正常に処理されました。0 個のファイルを処理できませんでした
C:\Users\takk\Desktop>
今回はicaclsのその5なので、何度も使ってきたわけですが、icaclsってコマンド、ほんと覚えにくいです。
 wikipediaでは「Integrity Control Access Control List」の略らしく、簡単な単語の組み合わせであるにもかかわらず、覚えることができません。でも、大丈夫です。もう英語がわけわかんなすぎて(なんでControlが二回も出てくるんだ!) と、怒りを覚えることはできます。
では、使ってみましょう。
C:\Users\takk\Desktop>icacls test.txt /findsid takk SID が見つかりました: test.txt 1 個のファイルが正常に処理されました。0 個のファイルを処理できませんでした C:\Users\takk\Desktop>
ん~。何が面白いのか分かりません。 ファイルを増やしてみます。
C:\Users\takk\Desktop>copy test.txt test2.txt
        1 個のファイルをコピーしました。
C:\Users\takk\Desktop>icacls test.txt /grant testuser2:f
処理ファイル: test.txt
1 個のファイルが正常に処理されました。0 個のファイルを処理できませんでした
C:\Users\takk\Desktop>
test.txtとtest2.txtがあり、test.txtのみtestuser2に権限を付与しました。
 icaclsで確認するとこのような状態です。
C:\Users\takk\Desktop>icacls test*
test.txt DESKTOP-TRO4JUU\testuser2:(F)
         S-1-5-21-282166592-494520350-4258074492-1003:(I)(F)
         NT AUTHORITY\SYSTEM:(I)(F)
         BUILTIN\Administrators:(I)(F)
         DESKTOP-TRO4JUU\takk:(I)(F)
test2.txt S-1-5-21-282166592-494520350-4258074492-1003:(I)(F)
          NT AUTHORITY\SYSTEM:(I)(F)
          BUILTIN\Administrators:(I)(F)
          DESKTOP-TRO4JUU\takk:(I)(F)
2 個のファイルが正常に処理されました。0 個のファイルを処理できませんでした
C:\Users\takk\Desktop>
では、アカウントを指定して、権限付与されているファイルを確認してみます。
C:\Users\takk\Desktop>icacls t* /findsid testuser2 SID が見つかりました: test.txt 2 個のファイルが正常に処理されました。0 個のファイルを処理できませんでした C:\Users\takk\Desktop>icacls t* /findsid takk SID が見つかりました: test.txt SID が見つかりました: test2.txt 2 個のファイルが正常に処理されました。0 個のファイルを処理できませんでした C:\Users\takk\Desktop>
なるほど、このように使うのですね。


コメント