python - 如何使用 python 保护 Windows 中用户的文件夹访问权限
问题描述
实际上,我希望该用户无法访问文件夹,而我存储在文件夹中的图像甚至无法打开该文件夹。我正在使用 Windows 操作系统。我想用python来做,我尝试了很多但找不到解决方案。谁能帮助我。先感谢您
解决方案
设置文件夹权限
您需要该win32security
模块,它是pywin32的一部分。这是一个做你想做的事情的例子:
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)
推荐阅读
- java - 如何使用 Jackson 序列化带有嵌套有效负载的 Flux 样式操作?
- php - 如何在 amcharts 中的图表条内显示值
- java - RESTEasy 与 Guice InstantiationError 在部署(App Engine 本地)
- rate-limiting - 生成资源的球童速率限制
- javascript - 如何在 html 标签中获取内容,包括在 javascript 中使用正则表达式的标签?
- python - 在条形图上包含 0 个值天
- python - 在 Flask 应用程序上连接到 SQL Server 进行搜索查询的最简单方法是什么?
- twilio - 从 Microsoft Bot Framework 向 twilio 返回消息时经常出现超时错误
- sql - 如何将时区应用于查询
- java - 属性“spring.cloud.config.server.git.privateKey”不是有效的私钥