UT: Expect WindowsPath in assert_windows_permissions()

This commit is contained in:
Mike Salvatore 2022-05-11 12:12:24 -04:00
parent b9f71cd41c
commit 8fe9b32366
1 changed files with 5 additions and 3 deletions

View File

@ -1,3 +1,5 @@
from pathlib import WindowsPath
from monkey_island.cc.server_utils.file_utils import is_windows_os from monkey_island.cc.server_utils.file_utils import is_windows_os
if is_windows_os(): if is_windows_os():
@ -12,16 +14,16 @@ else:
import stat import stat
def _get_acl_and_sid_from_path(path: str): def _get_acl_and_sid_from_path(path: WindowsPath):
sid, _, _ = win32security.LookupAccountName("", win32api.GetUserName()) sid, _, _ = win32security.LookupAccountName("", win32api.GetUserName())
security_descriptor = win32security.GetNamedSecurityInfo( security_descriptor = win32security.GetNamedSecurityInfo(
path, win32security.SE_FILE_OBJECT, win32security.DACL_SECURITY_INFORMATION str(path), win32security.SE_FILE_OBJECT, win32security.DACL_SECURITY_INFORMATION
) )
acl = security_descriptor.GetSecurityDescriptorDacl() acl = security_descriptor.GetSecurityDescriptorDacl()
return acl, sid return acl, sid
def assert_windows_permissions(path: str): def assert_windows_permissions(path: WindowsPath):
acl, user_sid = _get_acl_and_sid_from_path(path) acl, user_sid = _get_acl_and_sid_from_path(path)
assert acl.GetAceCount() == 1 assert acl.GetAceCount() == 1