win32security.logonuser是安全的吗?或者以明文形式发送的输入

问题描述 投票:0回答:1

我试图验证用户凭据是否记录他。此输入从前端发送到后端。我需要找到一种方法来保护通过一直发送的信息(端点计算机到后端)。最好的方法是什么?并且win32security.logonuser足够安全(我在后端使用它)。谢谢!

security frontend backend pywin32
1个回答
1
投票

[GitHub]: mhammond/pywin32 - Python for Windows (pywin32) Extensions是原生Win API的包装器。

[ActiveState]: win32security.LogonUser(这是我能找到的官方文件中最接近的)只是[MS.Docs]: LogonUserW function的包装。以下是后者所述的内容:

lpszPassword [in,optional] 指向以null结尾的字符串的指针,该字符串指定lpszUsername指定的用户帐户的明文密码。使用完密码后,通过调用SecureZeroMemory函数清除内存中的密码。有关保护密码的更多信息,请参阅Handling Passwords

如果你看看源代码:[GitHub]: mhammond/pywin32 - (b222) pywin32/win32/src/win32security.i:1021PyObject *PyLogonUser(PyObject *self, PyObject *args, PyObject *kwargs)),你会注意到在函数结束时,

  • SecureZeroMemory
  • PyWinObject_FreeWCHAR

被称为敏感数据。 因此,所有指南都得到满足,当然密码字符串在内存中的时间窗口(在填充和释放它之间,这里Python开销将增加几毫/纳秒),但这是安全的,你可以使用这种方法。

© www.soinside.com 2019 - 2024. All rights reserved.