Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ RemoveAccessRuleSpecific() [3/3]

void System.Security.AccessControl.FileSystemSecurity.RemoveAccessRuleSpecific ( FileSystemAccessRule rule)
inline

Definition at line 155 of file FileSystemSecurity.cs.

156 {
157 if (rule == null)
158 {
159 throw new ArgumentNullException("rule");
160 }
161 AuthorizationRuleCollection accessRules = GetAccessRules(includeExplicit: true, includeInherited: true, rule.IdentityReference.GetType());
162 for (int i = 0; i < accessRules.Count; i++)
163 {
164 if (accessRules[i] is FileSystemAccessRule fileSystemAccessRule && fileSystemAccessRule.FileSystemRights == rule.FileSystemRights && fileSystemAccessRule.IdentityReference == rule.IdentityReference && fileSystemAccessRule.AccessControlType == rule.AccessControlType)
165 {
167 return;
168 }
169 }
170 FileSystemAccessRule rule2 = new FileSystemAccessRule(rule.IdentityReference, FileSystemAccessRule.AccessMaskFromRights(rule.FileSystemRights, AccessControlType.Deny), rule.IsInherited, rule.InheritanceFlags, rule.PropagationFlags, rule.AccessControlType);
172 }
AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType)
void RemoveAccessRuleSpecific(FileSystemAccessRule rule)

References System.Security.AccessControl.AccessRule< T >.AccessControlType, System.Security.AccessControl.FileSystemAccessRule.AccessMaskFromRights(), System.Collections.ReadOnlyCollectionBase.Count, System.Security.AccessControl.FileSystemAccessRule.FileSystemRights, System.Security.AccessControl.CommonObjectSecurity.GetAccessRules(), System.Security.AccessControl.AuthorizationRule.IdentityReference, System.Security.AccessControl.AuthorizationRule.InheritanceFlags, System.Security.AccessControl.AuthorizationRule.IsInherited, System.Security.AccessControl.AuthorizationRule.PropagationFlags, and System.Security.AccessControl.FileSystemSecurity.RemoveAccessRuleSpecific().

Referenced by System.Security.AccessControl.FileSystemSecurity.RemoveAccessRuleSpecific().