use Win32::FileSecurity qw(Set MakeMask); my $dir = 'c:/temp/test.txt'; #Set($dir, { 'Everyone' => MakeMask( qw( READ GENERIC_READ GENERIC_EXECUTE ) ) }); my %permissions; Win32::FileSecurity::Get($dir, \%permissions); $permissions{ 'Everyone' } = '1180095'; Win32::FileSecurity::Set($dir, \%permissions);