private void SetSecurityDescriptorOnFile(object ace) { _ACL oriAcl = baseSD.Dacl.Value; DtypUtility.AddAceToAcl(ref oriAcl, true, ace); baseSD.Dacl = oriAcl; BaseTestSite.Log.Add(LogEntryKind.TestStep, "Set Security Descriptor on the temp file ({0}): {1}.", FilePermissionTestShareUncPath, DtypUtility.ToSddlString(baseSD)); SetSecurityDescriptor(FilePermissionTestShareUncPath, tempFileName, baseSD, SET_INFO_Request_AdditionalInformation_Values.DACL_SECURITY_INFORMATION); }
private void SetSecurityDescriptorOnShare(object ace) { _ACL acl = DtypUtility.CreateAcl(true, ace); _SECURITY_DESCRIPTOR sd = originalSD; _ACL oriAcl = originalSD.Dacl.Value; DtypUtility.AddAceToAcl(ref oriAcl, true, ace); sd.Dacl = oriAcl; BaseTestSite.Log.Add(LogEntryKind.TestStep, "Set Security Descriptor on the share ({0}): {1}.", FolderPermissionTestShareUncPath, DtypUtility.ToSddlString(sd)); SetSecurityDescriptor(FolderPermissionTestShareUncPath, null, sd, SET_INFO_Request_AdditionalInformation_Values.DACL_SECURITY_INFORMATION); }
private void SetSecurityDescriptorOnDynamicallyConfigurableShare(object ace) { _SECURITY_DESCRIPTOR sd = DtypUtility.DecodeSecurityDescriptor(originalShareInfo.Value.shi502_security_descriptor); _ACL dacl = sd.Dacl.Value; DtypUtility.AddAceToAcl(ref dacl, true, ace); sd.Dacl = dacl; DtypUtility.UpdateSecurityDescriptor(ref sd); SHARE_INFO_502_I newShareInfo = originalShareInfo.Value; newShareInfo.shi502_security_descriptor = DtypUtility.EncodeSecurityDescriptor(sd); newShareInfo.shi502_reserved = (uint)newShareInfo.shi502_security_descriptor.Length; BaseTestSite.Log.Add(LogEntryKind.TestStep, "Set Security Descriptor on the share ({0}): {1}.", Smb2Utility.GetUncPath(TestConfig.SutComputerName, dynamicallyConfigurableShareName), DtypUtility.ToSddlString(sd)); SetShareInfo(dynamicallyConfigurableShareName, newShareInfo); }