セキュリティ記述子は、セキュリティ保護可能なWindowsオブジェクト(一意の名前で識別できるオブジェクト)のセキュリティ情報のデータ構造です。セキュリティ記述子は、ファイル、フォルダー、共有、レジストリキー、プロセス、スレッド、名前付きパイプ、サービス、ジョブオブジェクト、その他のリソースなど、任意の名前付きオブジェクトに関連付けることができます。[1]
セキュリティ記述子には、ユーザーやグループなどの受託者にアクセスを許可または拒否するアクセス制御エントリ (ACE) を含む任意アクセス制御リスト(DACL) が含まれています。また、オブジェクト アクセスの監査を制御するシステム アクセス制御リスト (SACL) も含まれています。 [2] [3] ACE は、オブジェクトに明示的に適用することも、親オブジェクトから継承することもできます。ACL 内の ACE の順序は重要であり、アクセスを拒否する ACE は、アクセスを許可する ACE よりも高い順序で表示されます。セキュリティ記述子には、オブジェクトの所有者も含まれています。
強制整合性制御は、セキュリティ記述子上の新しいタイプのACEを通じて実装されます。[4]
ファイルとフォルダのアクセス許可は、Windowsエクスプローラ、WMI 、 Cacls、XCacls、ICacls、SubInACLなどのコマンドラインツール、 [5]フリーウェアの Win32コンソールFILEACL、[6] [7]フリーソフトウェア ユーティリティ SetACL、およびその他のユーティリティを含むさまざまなツールで編集できます。セキュリティ記述子を編集するには、ユーザーはオブジェクトに対するWRITE_DACアクセス許可を必要とします。[8]このアクセス許可は通常、デフォルトで管理者とオブジェクトの所有者に委任されます。
NTFS のアクセス許可
次の表は、NTFSのアクセス許可とその役割(各行)をまとめたものです。表には次の情報が記載されています。[9] [10] [11]
- 権限コード:各アクセス制御エントリ (ACE) は、バイナリ コードで権限を指定します。コードは 14 個あります (古いシステムでは 12 個)。
- 意味:各権限コードには、ファイルに適用されているかフォルダーに適用されているかに応じて意味があります。たとえば、ファイルのコード 0x01 は、ファイルを読み取る権限を示しますが、フォルダーのコードは、フォルダーの内容を一覧表示する権限を示します。ただし、意味だけを知っていても役に立ちません。ACE では、権限が誰に適用されるか、およびその権限が付与されるか拒否されるかを指定する必要があります。
- 含まれるもの:個々の権限に加えて、ACE は「汎用アクセス権」と呼ばれる特別な権限を指定できます。これらの特別な権限は、いくつかの個別の権限に相当します。たとえば、GENERIC_READ (または GR) は、「データの読み取り」、「属性の読み取り」、「拡張属性の読み取り」、「権限の読み取り」、および「同期」に相当します。これら 5 つを同時に要求するのが理にかなっているため、「GENERIC_READ」を要求する方が便利です。
- エイリアス: 2 つの Windows コマンドライン ユーティリティ ( icaclsとcacls ) には、これらの権限の独自のエイリアスがあります。
これらの権限のほとんどは、次のものを除いて、説明不要です。
- ファイル名を変更するには「削除」権限が必要です。[12]
- ファイルエクスプローラーでは「同期」は表示されず、常に設定されます。ファイルエクスプローラーやWindowsコマンドプロンプトなどのマルチスレッドアプリでは、ファイルやフォルダーを操作するために「同期」権限が必要です。[13]
脚注
- ^ GENERIC_READ、 ファイルエクスプローラーでは「読み取り」として知られています
- ^ GENERIC_EXECUTE、 ファイルエクスプローラーでは「読み取りと実行」として知られています
- ^ GENERIC_WRITE、 ファイルエクスプローラーでは「書き込み」として知られています
- ^ GENERIC_ALL、 ファイルエクスプローラーでは「フルコントロール」として知られています
- ^ ファイルエクスプローラーでは「変更」として知られています
参照
参考文献
- ^ 「セキュリティ保護可能なオブジェクト」。Microsoft 2008-04-24 2008-07-16閲覧。
- ^ 「セキュリティ記述子とアクセス制御リストとは?」。Microsoft。2008年 5 月 5 日時点のオリジナルからアーカイブ。2008年 7 月 16 日取得。
- ^ 「DACL と ACE」。Microsoft。2008年4 月 24 日。2008年 7 月 16 日に取得。
- ^ https://msdn.microsoft.com/en-us/library/bb625957.aspx Windows 整合性メカニズムとは何ですか?
- ^ SubInACL ホームページ
- ^ FILEACL ホームページ 2012-08-29 にWayback Machineでアーカイブ
- ^ 「FILEACL v3.0.1.6」。Microsoft 2004-03-23。2008年4月16日時点のオリジナルよりアーカイブ。 2008年7月25日閲覧。
- ^ 「ACCESS_MASK データ型」。Microsoft 2008-04-24 2008-07-23閲覧。
- ^ 「アクセス許可の仕組み」。Microsoft 2013年 6 月 21 日。2017 年 11 月 24 日閲覧。
- ^ Richard Civil. 「NTFS アクセス許可の IT の仕組み、パート 2」。Microsoft。2017年 11 月 24 日閲覧。
- ^ Richard Civil. 「How IT works NTFS Permissions」Microsoft . 2017-11-24閲覧。
- ^ ab Chen, Raymond (2021年10月22日). 「ファイルの名前変更は複数のステップから成るプロセスであり、そのうちの1つがファイル名の変更です」。The Old New Thing。Microsoft。DELETE権限で開くと、
ファイルの名前を変更する権限が付与されます。古い名前を削除するため、必要な権限はDELETEです。
- ^ Chen, Raymond (2019 年 11月 18 日)。「GUI と icacls で同じ ACL を設定しましたが、結果が異なります」。The Old New Thing。Microsoft。
外部リンク
- SS64.com の CACLS コマンドの説明
- SetACL SourceForge ページ
