CommonAclとは何? わかりやすく解説 Weblio辞書 (original) (raw)
メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。
アクセス制御リスト (ACL: Access Control List) を表します。このクラスは、DiscretionaryAcl クラスおよび SystemAcl クラスの基本クラスです。
名前空間: System.Security.AccessControl
アセンブリ: mscorlib (mscorlib.dll 内)
構文
Public MustInherit Class CommonAcl Inherits GenericAcl
public abstract class CommonAcl : GenericAcl
public ref class CommonAcl abstract : public GenericAcl
public abstract class CommonAcl extends GenericAcl
public abstract class CommonAcl extends GenericAcl
- 次に示す継承フラグとアクセス マスク フラグの組み合わせは無効です。
- アクセス マスクがゼロ (0) のアクセス制御エントリ (ACE: Access Control Entry) は削除されます。
- オブジェクトの ACL 内の継承のみの ACE は削除されます。
- リーフ オブジェクトの ACL 内のすべての ACE に関する InheritOnly、 NoPropagateInherit、ContainerInherit,、および ObjectInherit の各フラグはクリアされます。
- InheritOnly フラグが存在し、ContainerInherit フラグまたは ObjectInherit フラグが存在しない ACE は無効です。これらの ACE は削除されます。
- ContainerInherit フラグまたは ObjectInherit フラグが存在しない NoPropagateInherit フラグは削除されることがあります。
- 随意アクセス制御リスト (DACL: Discretionary Access Control List) で AuditFlags 値が Success または Failure である ACE は削除されます。
- Success と Failure のどちらも指定しない監査 ACE はすべて削除されます。
- DACL では、SystemAudit ACE および SystemAlarm ACE は削除されます。
- システム アクセス制御リスト (SACL: System Access Control List) では、AccessAllowed ACE および AccessDenied ACE は削除されます。
- 明示的に設定された ACE は、継承された ACE より優先されます。この規則は、DACL と SACL の両方に適用されます。
- DACL の明示的に設定された ACE では、アクセスを拒否する ACE が、アクセスを許可する ACE より優先されます。ディレクトリ オブジェクトの ACL では、オブジェクト以外の ACE がオブジェクトの ACE より優先されます。
- すべての共通の ACE は、共通でない ACE より優先されます。
- 継承された ACE は、標準の順序が適用された後で、相対的な順序を確保します。
- 認識されない ACE およびカスタム ACE は、DACL と SACL のどちらでも使用できません。
- 隣接した範囲内 (DACL の場合は明示的な AccessDenied ACE と AccessAllowed ACE、SACL の場合はすべての明示的な ACE) では、ACE はこれらの ACE に関連付けられている SecurityIdentifier オブジェクトの CompareTo メソッドを使用して並べ替えられます。
隣接する ACE は適切な場合に結合されます。この処理によって、ACL が許可するアクセス制御セマンティクスに影響せずに ACL のサイズが減少します。
System.Object
System.Security.AccessControl.GenericAcl
System.Security.AccessControl.CommonAcl
System.Security.AccessControl.DiscretionaryAcl
System.Security.AccessControl.SystemAcl
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。