Reading the access attributes of directories in Windows
Tim Golden
mail at timgolden.me.uk
Fri Aug 20 11:10:51 EDT 2010
On 20/08/2010 15:49, vsoler wrote:
> On Aug 20, 4:26 pm, vsoler<vicente.so... at gmail.com> wrote:
>> On Aug 20, 9:36 am, Tim Golden<m... at timgolden.me.uk> wrote:
>>
>>>> I currently do not have subversion access in my PC. I could try to
>>>> install a free copy of it. But it you could ptovide an installer, it
>>>> certainly would do things easier. Please let me know if it is
>>>> possible.
>>
>>> Vicente, can you just confirm that you received the installer I
>>> sent offlist? I'll try to put winsys on PyPI with installers;
>>> just haven't got round to it yes :)
>>
>>> TJG
>>
>> Tim,
>>
>> I just downloaded it, and am going to install it right away.
>
> Tim,
>
> It works!!! or at least, should I say, it runs!!! wonderful.
>
> Now, would it be possible to have a hint/suggestion as to some lines
> that I should include in my script?
Depends what, exactly, you want your script to do :)
The simplest way to get an ad-hoc look at what permissions are applied to
a file is:
<code>
import os, sys
from winsys import fs
#
# Just using sys.executable as a file I know will exist;
# obviously you put your own file name in there...
#
fs.file (sys.executable).security ().dump ()
</code>
To get that in the more compact but more esoteric MS SDDL format:
<code>
import os, sys
from winsys import fs
print (fs.file (sys.executable).security ())
</code>
To decode the permission bit-strings to vaguely meaningful
names:
<code>
import os, sys
from winsys import fs
dacl = fs.file (sys.executable).security ().dacl
for permission in dacl:
print (d.trustee, " (Inherited )" if d.inherited else "")
for name in fs.FILE_ACCESS.names_from_value (d.access):
print (" ", name)
</code>
TJG
More information about the Python-list
mailing list