作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我知道 win32security.LogonUser。我想要做的是检查输入的凭据以了解它们是否与本地 Windows 机器上的用户和密码匹配,以便我可以授予他们通过网络访问 Windows 机器的权限。这个想法是使用具有默认Windows身份验证的paramiko制作一个pythonic ssh服务器。我不想做的是每次建立新连接时将用户注销,或者因为用户已经登录而导致身份验证过程失败。有没有办法在 Windows 上验证用户而无需创建登录 session ?
最佳答案
事实证明,我只是错误地使用了 LogonUser
函数。确实存在一个枚举值来传递函数以告诉它您想要一个安全上下文返回以使用该用户的凭据执行进程,并且如果传入错误的用户名或密码将引发异常。
换句话说,这是一种可接受的方法调用方式,这样如果用户已经登录或有多个 session 正在运行,它就不会抛出异常。这也是一种能够根据任何应用程序的需要即时验证用户凭据的好方法:
try:
hUser = win32security.LogonUser(username,
domain,
password,
win32security.LOGON32_LOGON_INTERACTIVE,
win32security.LOGON32_PROVIDER_DEFAULT)
except win32security.error:
print "Failed"
import traceback
traceback.print_exc()
关于python - 有没有办法用python的win32security验证用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16158725/
我是一名优秀的程序员,十分优秀!