public static void Eval(this ISystemAcl sacl, Type rightType, SecurityResults securityResults) { string rtn = rightType.GetFriendlyRightTypeName(); IEnumerable <IAccessControlEntryAudit> found = from ace in sacl where ace.RightData.FriendlyTypeName.Equals(rtn) select ace; List <IAccessControlEntryAudit> aces = new List <IAccessControlEntryAudit>(found); EvalAceList(rightType, aces, securityResults); }
public static void CopyTo(this ISystemAcl sacl, ISystemAcl targetSacl, bool forceInheritance = false) { if (targetSacl.AllowInherit || forceInheritance) { foreach (IAccessControlEntryAudit ace in sacl) { if (ace.Inheritable || forceInheritance) { targetSacl.Add((IAccessControlEntryAudit)ace.Clone()); } } } }
public static void Eval(this ISystemAcl sacl, SecurityResults securityResults) { Dictionary <Type, List <IAccessControlEntryAudit> > aceLists = new Dictionary <Type, List <IAccessControlEntryAudit> >(); foreach (IAccessControlEntryAudit ace in sacl) { if (!aceLists.ContainsKey(ace.RightData.RightType)) { aceLists[ace.RightData.RightType] = new List <IAccessControlEntryAudit>(); } aceLists[ace.RightData.RightType].Add(ace); } foreach (Type rightType in aceLists.Keys) { EvalAceList(rightType, aceLists[rightType], securityResults); } }
public static void Eval <T>(this ISystemAcl sacl, SecurityResults securityResults) where T : struct, IConvertible { Eval(sacl, typeof(T), securityResults); }