/** * The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileId */ public void setSecurityInfo(String path, Set<SecurityInformation> securityInfo, SecurityDescriptor securityDescriptor) throws SMBApiException { Set<AccessMask> accessMask = noneOf(AccessMask.class); if (securityInfo.contains(SecurityInformation.SACL_SECURITY_INFORMATION)) { accessMask.add(ACCESS_SYSTEM_SECURITY); } if (securityInfo.contains(SecurityInformation.OWNER_SECURITY_INFORMATION) || securityInfo.contains(SecurityInformation. GROUP_SECURITY_INFORMATION)) { accessMask.add(WRITE_OWNER); } if (securityInfo.contains(SecurityInformation.DACL_SECURITY_INFORMATION)) { accessMask.add(WRITE_DAC); } try (DiskEntry e = open(path, accessMask, null, ALL, FILE_OPEN, null)) { e.setSecurityInformation(securityDescriptor, securityInfo); } }
/** * The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileId */ public void setSecurityInfo(String path, Set<SecurityInformation> securityInfo, SecurityDescriptor securityDescriptor) throws SMBApiException { Set<AccessMask> accessMask = noneOf(AccessMask.class); if (securityInfo.contains(SecurityInformation.SACL_SECURITY_INFORMATION)) { accessMask.add(ACCESS_SYSTEM_SECURITY); } if (securityInfo.contains(SecurityInformation.OWNER_SECURITY_INFORMATION) || securityInfo.contains(SecurityInformation. GROUP_SECURITY_INFORMATION)) { accessMask.add(WRITE_OWNER); } if (securityInfo.contains(SecurityInformation.DACL_SECURITY_INFORMATION)) { accessMask.add(WRITE_DAC); } try (DiskEntry e = open(path, accessMask, null, ALL, FILE_OPEN, null)) { e.setSecurityInformation(securityDescriptor, securityInfo); } }