SID пользователя python

Мне нужно узнать SID текущего пользователя для доступа к папке. Написал следующий код:

import os
import win32security

desc = win32security.GetFileSecurity(
    ".", win32security.OWNER_SECURITY_INFORMATION
)
sid = desc.GetSecurityDescriptorOwner()

sidstr = win32security.ConvertSidToStringSid(sid)
print("Sid is", sidstr)

Вывододит SID в следующем формате:

[Sid is S-x-x-xx-xxx]

А нужно в таком:

[S-x-x-xx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxxx-xxxx]

Программа будет запускаться наа стороннем ПК, поэтому не будет возможностим получить SID через командную строку. Как это возможно реализовать?


Ответы (1 шт):

Автор решения: Юрий
import win32security
import os

user_info = win32security.LookupAccountName(None,os.getlogin())
sid = win32security.ConvertSidToStringSid(user_info[0])

print(sid)

Выходной формат:

S-x-x-xx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxxx-xxxx
→ Ссылка