icacls.exeで扱うアクセス権を調べる
説明した方法を使って、icacls.exeで得られるSDDLから、コマンドで指定するアクセス権と内部のアクセスマスクを関係を調べる。icacls.exeコマンドのヘルプで「特定の権限」とされて列挙されている項目は、以下の表のような対応になっていることがわかる。
なお、特定の権限を指定する場合、権限全体をカッコで囲む必要がある。これは、単純な権限と区別をするためだと思われる。
icacls.exeコマンドで「特定の権限」として指定する文字は、基本的には、Windows内部のマスクビットに対応している。ただし、ヘルプに表示される「MA」(無制限)は、管理者権限で実行してもicacls.exeが「無効なパラメーター」のエラーになる。どうもMAがエラーになっているようだ。
それ以外は、前回解説したアクセスマスクのビットとほぼ一致する。ただし、注意が必要なのは、「GR」(一般的な読み取り)、「GW」(一般的な書き込み)、「GE」(一般的な実行)、「GA」(一般的なすべての操作)の4つのコードだ。
これらは、アクセスマスクの汎用アクセス権に対応しているため、対応するマスクビット(28~31ビット)が設定されることはなく、アクセスマスクの「標準アクセス権」と「オブジェクト固有アクセス権」が設定される。この汎用アクセス権GR/GW/GE/GAの指定と、指定されるマスクビットの対応を以下の表に示す。
単純な権限は、複数のアクセス権に対応
「単純な権限」には、7つの指定があるが、このうち「N」(アクセス権なし)は、アクセス権がない状態を示すものと思われる。この「N」もicacls.exeでは、指定に使うと「無効なパラメーター」エラーとなり、実際には指定できない。「単純な権限」は、「特定の権限」の組み合わせでできている。ただし、変更アクセス権「M」は、未定義のビット12と13を設定している。
icacls.exeコマンドは、エクスプローラーからのアクセス権設定に比べると細かくアクセス権を設定可能。また、「/save」オプションを使えば、ファイルのACLをSDDL形式で出力する。「/restore」オプションでは、ファイルに保存されているSDDLをディレクトリ内のファイルに適用できる。これにより、大量のファイルでもまとめてACLの適用が可能だ。さて、次回は最終回として、エクスプローラーのアクセス権設定とマスクビットの関係を解説する。
この連載の記事
-
第462回
PC
Windows Terminal Preview版でSixelグラフィックスを扱う -
第461回
PC
Copilot+ PCを買ってみたが、「今焦って買う必要はない」のかもしれない -
第460回
PC
Windowsでsftpを使う -
第459回
PC
WSL 2.4.4ではtar形式でのディストリビューションが配布でき、企業での利用が容易になってきた -
第458回
PC
Windows上でhostsファイルを活用する -
第457回
PC
IPv6アドレスは先頭を見ればどんな種類かわかる -
第456回
PC
あらためてIPv6基本のキ -
第455回
PC
Windowsで現在どのネットワークアダプタがインターネット接続に使われているかを調べる方法 -
第454回
PC
Windows 11 24H2では「デバイスの暗号化」の条件が変わり、より多くのPCでドライブが暗号化される -
第453回
PC
Windows 11 24H2の配布開始後もすぐにはやってこない Windows UpdateとSafeguard Holds -
第452回
PC
Windows 11 Ver.24H2が登場 Copilot+ PCとそうでないPCで実質Windowsが2つに分かれる - この連載の一覧へ