def test_inheritance(self): """ Test the set_inheritance function Test the get_inheritance function """ self.assertTrue( win_dacl.set_inheritance( obj_name=self.obj_name, enabled=True, obj_type=self.obj_type, clear=False, ) ) self.assertTrue( win_dacl.get_inheritance(obj_name=self.obj_name, obj_type=self.obj_type) ) self.assertTrue( win_dacl.set_inheritance( obj_name=self.obj_name, enabled=False, obj_type=self.obj_type, clear=False, ) ) self.assertFalse( win_dacl.get_inheritance(obj_name=self.obj_name, obj_type=self.obj_type) )
def test_present_perms_reset_no_inherit(reg_vars, clean): reg.present( name=reg_vars.name, vname=reg_vars.vname, vdata=reg_vars.vdata, win_perms={"Everyone": { "perms": "full_control" }}, win_deny_perms={"Guest": { "perms": "full_control" }}, win_perms_reset=True, win_inheritance=False, ) permissions = win_dacl.get_permissions(obj_name=reg_vars.name, obj_type="registry") expected = { "Guest": { "deny": { "permissions": "Full Control", "applies to": "This key and subkeys", } }, "Everyone": { "grant": { "permissions": "Full Control", "applies to": "This key and subkeys", } }, } assert permissions["Not Inherited"] == expected assert not win_dacl.get_inheritance(obj_name=reg_vars.name, obj_type="registry") assert permissions["Inherited"] == {}
def test_present_perms_no_inherit(reg_vars, clean): reg.present( name=reg_vars.name, vname=reg_vars.vname, vdata=reg_vars.vdata, win_inheritance=False, ) assert not win_dacl.get_inheritance(obj_name=reg_vars.name, obj_type="registry") permissions = win_dacl.get_permissions(obj_name=reg_vars.name, obj_type="registry") assert permissions["Inherited"] == {}
def test_get_set_inheritance(test_file): result = win_dacl.set_inheritance( obj_name=str(test_file), enabled=True, obj_type="file", clear=False, ) assert result is True result = win_dacl.get_inheritance(obj_name=str(test_file), obj_type="file") assert result is True result = win_dacl.set_inheritance( obj_name=str(test_file), enabled=False, obj_type="file", clear=False, ) assert result is True result = win_dacl.get_inheritance(obj_name=str(test_file), obj_type="file") assert result is False
def test_get_set_inheritance(reg_key): result = win_dacl.set_inheritance( obj_name=reg_key, enabled=True, obj_type="registry", clear=False, ) assert result is True result = win_dacl.get_inheritance(obj_name=reg_key, obj_type="registry") assert result is True result = win_dacl.set_inheritance( obj_name=reg_key, enabled=False, obj_type="registry", clear=False, ) assert result is True result = win_dacl.get_inheritance(obj_name=reg_key, obj_type="registry") assert result is False
def test_directory_new_no_inherit(tmp_path): """ Test file.directory when the directory does not exist Should just return "New Dir" """ path = os.path.join(tmp_path, "test") ret = file.directory( name=path, makedirs=True, win_perms={"Administrators": {"perms": "full_control"}}, win_deny_perms={"Guest": {"perms": "full_control"}}, win_inheritance=False, ) expected = {path: {"directory": "new"}} assert ret["changes"] == expected assert not win_dacl.get_inheritance(path) permissions = win_dacl.get_permissions(path) assert permissions["Inherited"] == {}
def test_directory_existing_no_inherit(tmp_path): path = str(tmp_path) ret = file.directory( name=path, makedirs=True, win_perms={"Everyone": {"perms": "full_control"}}, win_deny_perms={"Guest": {"perms": ["write_data", "write_attributes"]}}, win_inheritance=False, ) expected = { "deny_perms": {"Guest": {"permissions": ["write_data", "write_attributes"]}}, "grant_perms": {"Everyone": {"permissions": "full_control"}}, "inheritance": False, } # We are checking these individually because sometimes it will return an # owner if it is running under the Administrator account assert ret["changes"]["deny_perms"] == expected["deny_perms"] assert ret["changes"]["grant_perms"] == expected["grant_perms"] assert ret["changes"]["inheritance"] == expected["inheritance"] assert not win_dacl.get_inheritance(path) permissions = win_dacl.get_permissions(path) assert permissions["Inherited"] == {}