Я пытаюсь использовать AWS SAML для федерального входа в систему, но ниже приведен вызов функции:
cookiesObj = getCookiesObj(
domain=args.domain,
username=args.username,
cookiefile=args.cookiefile,
useKeyring=args.keyring,
chromeprofile=args.chromeprofile
)
Этот вызов идет по следующему коду:
c = sqlite3.connect(cookiefile)
sql = "SELECT name,encrypted_value FROM cookies " + \
"WHERE name IN ('" + ("','".join(requiredCookies)) + "')" + \
"AND host_key like '%{}%'".format(domain)
rows = c.cursor().execute(sql)
rowCount = 0
for k, ev in rows:
val = None
*val = win32crypt.CryptUnprotectData(ev, None, None, None, 0)[1]*
cookiesObj['cookies'][k] = val
rowCount += 1
Хотя запрос sql возвращает файлы cookie MSISAuth, MSISAuth1 также со значением (ev), но при вызове win32crypt выдается ошибка:
Traceback (most recent call last):
File "aws_saml.py", line 435, in <module>
chromeprofile=args.chromeprofile
File "aws_saml.py", line 251, in getCookiesObj
val = win32crypt.CryptUnprotectData(ev, None, None, None, 0)[1]
pywintypes.error: (13, 'CryptProtectData', 'The data is invalid.')
используемые версии: pypiwin32 == 220 также пытались с 223 pywin32 == 227