def setup (): # # If you don't enable SeSecurity, you won't be able to # read SACL in this process. # utils.change_priv (win32security.SE_SECURITY_NAME, True) assert os.path.isdir (TEST_ROOT) sacl = win32security.ACL () sid, _, _ = win32security.LookupAccountName (None, win32api.GetUserName ()) sacl.AddAuditAccessAceEx ( win32security.ACL_REVISION_DS, win32security.OBJECT_INHERIT_ACE | win32security.CONTAINER_INHERIT_ACE, ntsecuritycon.FILE_ALL_ACCESS, sid, 1, 1 ) win32security.SetNamedSecurityInfo ( TEST_ROOT, win32security.SE_FILE_OBJECT, win32security.SACL_SECURITY_INFORMATION, None, None, None, sacl ) open (TEST_FILE, "w").close () os.mkdir (TEST1_DIR) open (TEST1_FILE, "w").close () os.mkdir (TEST2_DIR) open (TEST2_FILE, "w").close ()
def setup (): utils.change_priv (win32security.SE_SECURITY_NAME, True) global filehandle, filename filehandle, filename = tempfile.mkstemp () print filename dacl = win32security.ACL () dacl.AddAccessAllowedAceEx (win32security.ACL_REVISION_DS, 0, ntsecuritycon.FILE_READ_DATA, everyone) sacl = win32security.ACL () sacl.AddAuditAccessAce (win32security.ACL_REVISION_DS, ntsecuritycon.FILE_READ_DATA, everyone, 1, 1) win32security.SetNamedSecurityInfo ( filename, win32security.SE_FILE_OBJECT, win32security.DACL_SECURITY_INFORMATION | win32security.SACL_SECURITY_INFORMATION, None, None, dacl, sacl )
def setup(): utils.change_priv(win32security.SE_SECURITY_NAME, True) global filehandle, filename filehandle, filename = tempfile.mkstemp() print filename dacl = win32security.ACL() dacl.AddAccessAllowedAceEx(win32security.ACL_REVISION_DS, 0, ntsecuritycon.FILE_READ_DATA, everyone) sacl = win32security.ACL() sacl.AddAuditAccessAce(win32security.ACL_REVISION_DS, ntsecuritycon.FILE_READ_DATA, everyone, 1, 1) win32security.SetNamedSecurityInfo( filename, win32security.SE_FILE_OBJECT, win32security.DACL_SECURITY_INFORMATION | win32security.SACL_SECURITY_INFORMATION, None, None, dacl, sacl)
def teardown(): def remove(path): restore_access(path) if os.path.isdir(path): os.rmdir(path) else: os.unlink(path) remove(TEST2_FILE) remove(TEST2_DIR) remove(TEST1_FILE) remove(TEST1_DIR) remove(TEST_FILE) remove(TEST_ROOT) utils.change_priv(win32security.SE_SECURITY_NAME, False)
def teardown (): def remove (path): restore_access (path) if os.path.isdir (path): os.rmdir (path) else: os.unlink (path) remove (TEST2_FILE) remove (TEST2_DIR) remove (TEST1_FILE) remove (TEST1_DIR) remove (TEST_FILE) remove (TEST_ROOT) utils.change_priv (win32security.SE_SECURITY_NAME, False)
def setup(): # # If you don't enable SeSecurity, you won't be able to # read SACL in this process. # utils.change_priv(win32security.SE_SECURITY_NAME, True) assert os.path.isdir(TEST_ROOT) sacl = win32security.ACL() sid, _, _ = win32security.LookupAccountName(None, win32api.GetUserName()) sacl.AddAuditAccessAceEx( win32security.ACL_REVISION_DS, win32security.OBJECT_INHERIT_ACE | win32security.CONTAINER_INHERIT_ACE, ntsecuritycon.FILE_ALL_ACCESS, sid, 1, 1) win32security.SetNamedSecurityInfo(TEST_ROOT, win32security.SE_FILE_OBJECT, win32security.SACL_SECURITY_INFORMATION, None, None, None, sacl) open(TEST_FILE, "w").close() os.mkdir(TEST1_DIR) open(TEST1_FILE, "w").close() os.mkdir(TEST2_DIR) open(TEST2_FILE, "w").close()
def teardown (): os.close (filehandle) os.unlink (filename) utils.change_priv (win32security.SE_SECURITY_NAME, False)
def teardown(): os.close(filehandle) os.unlink(filename) utils.change_priv(win32security.SE_SECURITY_NAME, False)