Как я могу защитить доступ к папке для пользователя в windows, используя python - PullRequest
0 голосов
/ 17 июня 2020

На самом деле я хочу, чтобы этот пользователь не мог получить доступ к папке, а изображения, которые я храню в папке, даже не смогут открыть эту папку. Я использую операционную систему windows. И я хочу сделать это с помощью python, я много пробовал, но не могу найти решения. Кто-нибудь может мне помочь. Заранее спасибо

1 Ответ

0 голосов
/ 17 июня 2020

Установка прав доступа к папке

Вам нужен модуль 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)
...