shy*_*ent 9 python permissions winapi acl ntfs
正如问题标题所暗示的那样,我非常想知道检查给定文件或文件夹的ntfs权限的方法(提示:这些是您在"安全性"选项卡中看到的那些).基本上,我需要的是获取文件或目录的路径(在本地计算机上,或者,最好是在远程计算机上的共享上)并获取用户/组的列表以及此文件/文件夹的相应权限.最终,应用程序将遍历目录树,读取每个对象的权限并相应地处理它们.
现在,我可以想到许多方法:
还有什么我在这里失踪的吗?
TJG*_*TJG 16
除非你喜欢自己动手,否则win32security就是你要走的路.这里有一个例子的开头:
http://timgolden.me.uk/python/win32_how_do_i/get-the-owner-of-a-file.html
如果你想稍微危险地生活(!)我正在进行的winsys套餐旨在完全按照你所追求的目标行事.你可以在这里获得开发版的MSI:
http://timgolden.me.uk/python/downloads/WinSys-0.4.win32-py2.6.msi
或者你可以结帐svn trunk:
svn co http://winsys.googlecode.com/svn/trunk winsys
要做你所描述的(略微猜测确切的要求),你可以这样做:
import codecs
from winsys import fs
base = "c:/temp"
with codecs.open ("permissions.log", "wb", encoding="utf8") as log:
for f in fs.flat (base):
log.write ("\n" + f.filepath.relative_to (base) + "\n")
for ace in f.security ().dacl:
access_flags = fs.FILE_ACCESS.names_from_value (ace.access)
log.write (u" %s => %s\n" % (ace.trustee, ", ".join (access_flags)))
Run Code Online (Sandbox Code Playgroud)
TJG
归档时间: |
|
查看次数: |
8796 次 |
最近记录: |