public static void TestPurgeAccessControl(bool isContainer, bool isDS, string sddl, string sidString, string verifierSddl)
 {
     CommonSecurityDescriptor commonSecurityDescriptor = null;
     string resultSddl = null;
     SecurityIdentifier sid = new SecurityIdentifier(Utils.TranslateStringConstFormatSidToStandardFormatSid(sidString));
     commonSecurityDescriptor = new CommonSecurityDescriptor(isContainer, isDS, sddl);
     commonSecurityDescriptor.PurgeAccessControl(sid);
     resultSddl = commonSecurityDescriptor.GetSddlForm(AccessControlSections.All);
     Assert.False(resultSddl != verifierSddl);
 }
Example #2
0
        public void PurgeDefaultDacl()
        {
            SecurityIdentifier userSid     = new SecurityIdentifier("SY");
            SecurityIdentifier groupSid    = new SecurityIdentifier("BA");
            SecurityIdentifier everyoneSid = new SecurityIdentifier("WD");

            CommonSecurityDescriptor csd = new CommonSecurityDescriptor
                                               (false, false, ControlFlags.None, userSid, groupSid, null, null);

            DiscretionaryAcl dacl = csd.DiscretionaryAcl;

            Assert.AreEqual(1, dacl.Count);

            csd.PurgeAccessControl(userSid);
            Assert.AreEqual(1, dacl.Count);

            csd.PurgeAccessControl(everyoneSid);
            Assert.AreEqual(0, dacl.Count);
        }
Example #3
0
        public static void TestPurgeAccessControl(bool isContainer, bool isDS, string sddl, string sidString, string verifierSddl)
        {
            CommonSecurityDescriptor commonSecurityDescriptor = null;
            string             resultSddl = null;
            SecurityIdentifier sid        = new SecurityIdentifier(Utils.TranslateStringConstFormatSidToStandardFormatSid(sidString));

            commonSecurityDescriptor = new CommonSecurityDescriptor(isContainer, isDS, sddl);
            commonSecurityDescriptor.PurgeAccessControl(sid);
            resultSddl = commonSecurityDescriptor.GetSddlForm(AccessControlSections.All);
            Assert.False(resultSddl != verifierSddl);
        }
Example #4
0
        public static void AdditionalTestCases()
        {
            CommonSecurityDescriptor sd = null;

            // test case 1: sid is null
            Assert.Throws <ArgumentNullException>(() =>
            {
                sd = new CommonSecurityDescriptor(true, false, (ControlFlags)0, null, null, null, null);
                sd.PurgeAccessControl(null);
                // expect to throw exception but not
            });
        }
        public static void AdditionalTestCases()
        {
            CommonSecurityDescriptor sd = null;

            // test case 1: sid is null
            Assert.Throws<ArgumentNullException>(() =>
            {
                sd = new CommonSecurityDescriptor(true, false, (ControlFlags)0, null, null, null, null);
                sd.PurgeAccessControl(null);
                // expect to throw exception but not
            });
        }