Windows Advanced Permissions on Folders

A

Archie Call

In a MS-Windows environment I know how to recurse all the folders using
a Dir.glob statement that starts a certain level of the directory tree.

I am struggling with a way in Ruby to set the advanced permissions for
certain folders:

Properties
..Security
....Advanced
......View Edit
........Permissions
..........13 Detailed kinds of specific permissions for the folder

There must some kind of command to set these: Is it something with
Win32API?

I have searched hi and lo in Google with little luck?

TIA...Arch
 
W

Wilson Bilkovich

In a MS-Windows environment I know how to recurse all the folders using
a Dir.glob statement that starts a certain level of the directory tree.

I am struggling with a way in Ruby to set the advanced permissions for
certain folders:

Properties
..Security
....Advanced
......View Edit
........Permissions
..........13 Detailed kinds of specific permissions for the folder

There must some kind of command to set these: Is it something with
Win32API?

I have searched hi and lo in Google with little luck?

TIA...Arch

Presumably there's an API for setting the ACLs in NTFS, but I've never used=
it.
Until you figure out how to invoke that, you could just do a system()
call out to "cacls.exe", which will take care of it.
Do "cacls.exe /?" to see the options.

This Google hit seems to have some useful info that could be
interpreted into Ruby:
http://msdn.microsoft.com/msdnmag/issues/04/11/AccessControlinNET/
 
D

Dave Burt

Archie said:
In a MS-Windows environment I know how to recurse all the folders using
a Dir.glob statement that starts a certain level of the directory tree.

I am struggling with a way in Ruby to set the advanced permissions for
certain folders:

Properties
.Security
...Advanced
.....View Edit
.......Permissions
.........13 Detailed kinds of specific permissions for the folder

There must some kind of command to set these: Is it something with
Win32API?

You can use Win32API to access Windows API calls directly. You probably
don't want to.

Try win32-utils' win32/file module. Its File.attributes(file_name) and
File.set_attr(file_name, flags) support the following attributes:
* archive
* compressed
* content_indexed
* directory
* encrypted
* hidden
* normal
* offline
* read_only
* reparse_point
* sparse_file
* system
* temporary* win32/file doco:
http://rubyforge.org/docman/view.php/85/36/file.txt
* Rubyforge project: http://rubyforge.org/projects/win32utils/
* download: http://rubyforge.org/frs/?group_id=85&release_id=1918

Cheers,
Dave
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,763
Messages
2,569,563
Members
45,039
Latest member
CasimiraVa

Latest Threads

Top