在Windows中使用Python设置文件夹权限

创建用户AD帐户时,我正在使用Python创建一个新的个人文件夹。正在创建文件夹,但权限不正确。Python可以将用户添加到新创建的文件夹并更改其权限吗?我不确定从哪里开始编码。

回答:

您需要win32security模块,它是pywin32的一部分。这是做您想做的事情的示例。

该示例为该文件创建了一个新的DACL并替换了旧的DACL,但是修改现有的DACL很容易。您需要做的就是从安全描述符中获取现有的DACL,而不是创建一个空的DACL,如下所示:

import win32security

import ntsecuritycon as con

FILENAME = "whatever"

userx, domain, type = win32security.LookupAccountName ("", "User X")

usery, domain, type = win32security.LookupAccountName ("", "User Y")

sd = win32security.GetFileSecurity(FILENAME, win32security.DACL_SECURITY_INFORMATION)

dacl = sd.GetSecurityDescriptorDacl() # instead of dacl = win32security.ACL()

dacl.AddAccessAllowedAce(win32security.ACL_REVISION, con.FILE_GENERIC_READ | con.FILE_GENERIC_WRITE, userx)

dacl.AddAccessAllowedAce(win32security.ACL_REVISION, con.FILE_ALL_ACCESS, usery)

sd.SetSecurityDescriptorDacl(1, dacl, 0) # may not be necessary

win32security.SetFileSecurity(FILENAME, win32security.DACL_SECURITY_INFORMATION, sd)

以上是 在Windows中使用Python设置文件夹权限 的全部内容, 来源链接: utcz.com/qa/421945.html

回到顶部