Python win32security.LookupAccountName() Examples
The following are 9
code examples of win32security.LookupAccountName().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
win32security
, or try the search function
.
Example #1
Source File: authorizers.py From oss-ftp with MIT License | 7 votes |
def get_home_dir(self, username): """Return the user's profile directory, the closest thing to a user home directory we have on Windows. """ try: sid = win32security.ConvertSidToStringSid( win32security.LookupAccountName(None, username)[0]) except pywintypes.error as err: raise AuthorizerError(err) path = r"SOFTWARE\Microsoft\Windows NT" \ r"\CurrentVersion\ProfileList" + "\\" + sid try: key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, path) except WindowsError: raise AuthorizerError( "No profile directory defined for user %s" % username) value = winreg.QueryValueEx(key, "ProfileImagePath")[0] home = win32api.ExpandEnvironmentStrings(value) if not PY3 and not isinstance(home, unicode): home = home.decode('utf8') return home
Example #2
Source File: authorizers.py From oss-ftp with MIT License | 6 votes |
def get_home_dir(self, username): """Return the user's profile directory, the closest thing to a user home directory we have on Windows. """ try: sid = win32security.ConvertSidToStringSid( win32security.LookupAccountName(None, username)[0]) except pywintypes.error as err: raise AuthorizerError(err) path = r"SOFTWARE\Microsoft\Windows NT" \ r"\CurrentVersion\ProfileList" + "\\" + sid try: key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, path) except WindowsError: raise AuthorizerError( "No profile directory defined for user %s" % username) value = winreg.QueryValueEx(key, "ProfileImagePath")[0] home = win32api.ExpandEnvironmentStrings(value) if not PY3 and not isinstance(home, unicode): home = home.decode('utf8') return home
Example #3
Source File: authorizers.py From script-languages with MIT License | 6 votes |
def get_home_dir(self, username): """Return the user's profile directory, the closest thing to a user home directory we have on Windows. """ try: sid = win32security.ConvertSidToStringSid( win32security.LookupAccountName(None, username)[0]) except pywintypes.error as err: raise AuthorizerError(err) path = r"SOFTWARE\Microsoft\Windows NT" \ r"\CurrentVersion\ProfileList" + "\\" + sid try: key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, path) except WindowsError: raise AuthorizerError( "No profile directory defined for user %s" % username) value = winreg.QueryValueEx(key, "ProfileImagePath")[0] home = win32api.ExpandEnvironmentStrings(value) if not PY3 and not isinstance(home, unicode): home = home.decode('utf8') return home
Example #4
Source File: platform_windows.py From scalyr-agent-2 with Apache License 2.0 | 6 votes |
def set_file_owner(self, file_path, owner): """Sets the owner of the specified file. @param file_path: The path of the file. @param owner: The new owner of the file. This should be a string returned by either `get_file_ower` or `get_current_user`. @type file_path: str @type owner: str """ # Lookup the user info by their name. We need their sid, which will be in the 0th element of user_info. domain_user = owner.split("\\") user_info = win32security.LookupAccountName(domain_user[0], domain_user[1]) # Get the current acl so we can just replace the owner information. owner_acl = win32security.GetFileSecurity( file_path, win32security.OWNER_SECURITY_INFORMATION ) owner_acl.SetSecurityDescriptorOwner(user_info[0], True) win32security.SetFileSecurity( file_path, win32security.OWNER_SECURITY_INFORMATION, owner_acl )
Example #5
Source File: authorizers.py From pyftpdlib with MIT License | 6 votes |
def get_home_dir(self, username): """Return the user's profile directory, the closest thing to a user home directory we have on Windows. """ try: sid = win32security.ConvertSidToStringSid( win32security.LookupAccountName(None, username)[0]) except pywintypes.error as err: raise AuthorizerError(err) path = r"SOFTWARE\Microsoft\Windows NT" \ r"\CurrentVersion\ProfileList" + "\\" + sid try: key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, path) except WindowsError: raise AuthorizerError( "No profile directory defined for user %s" % username) value = winreg.QueryValueEx(key, "ProfileImagePath")[0] home = win32api.ExpandEnvironmentStrings(value) if not PY3 and not isinstance(home, unicode): home = home.decode('utf8') return home
Example #6
Source File: test_security.py From ironpython2 with Apache License 2.0 | 5 votes |
def setUp(self): self.pwr_sid=win32security.LookupAccountName('','Power Users')[0] self.admin_sid=win32security.LookupAccountName('','Administrator')[0]
Example #7
Source File: test_security.py From ironpython2 with Apache License 2.0 | 5 votes |
def testEqual(self): self.failUnlessEqual(win32security.LookupAccountName('','Administrator')[0], win32security.LookupAccountName('','Administrator')[0])
Example #8
Source File: test_security.py From ironpython2 with Apache License 2.0 | 5 votes |
def testBuffer(self): self.failUnlessEqual(ob2memory(win32security.LookupAccountName('','Administrator')[0]), ob2memory(win32security.LookupAccountName('','Administrator')[0]))
Example #9
Source File: file_path.py From luci-py with Apache License 2.0 | 5 votes |
def change_acl_for_delete(path): """Zaps the SECURITY_DESCRIPTOR's DACL on a directory entry that is tedious to delete. This function is a heavy hammer. It discards the SECURITY_DESCRIPTOR and creates a new one with only one DACL set to user:FILE_ALL_ACCESS. Used as last resort. """ STANDARD_RIGHTS_REQUIRED = 0xf0000 SYNCHRONIZE = 0x100000 FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3ff import win32security user, _domain, _type = win32security.LookupAccountName( '', getpass.getuser()) sd = win32security.SECURITY_DESCRIPTOR() sd.Initialize() sd.SetSecurityDescriptorOwner(user, False) dacl = win32security.ACL() dacl.Initialize() dacl.AddAccessAllowedAce( win32security.ACL_REVISION_DS, FILE_ALL_ACCESS, user) sd.SetSecurityDescriptorDacl(1, dacl, 0) # Note that this assumes the object is either owned by the current user or # its group or that the current ACL permits this. Otherwise it will silently # fail. win32security.SetFileSecurity( fs.extend(path), win32security.DACL_SECURITY_INFORMATION, sd) # It's important to also look for the read only bit after, as it's possible # the set_read_only() call to remove the read only bit had silently failed # because there was no DACL for the user. if not (os.stat(path).st_mode & stat.S_IWUSR): os.chmod(path, 0o777)