使用pythonkerberos协商windows与Unix服务器实现

2024-10-03 04:31:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在pythonweb服务器中实现一个简单的单点登录。我使用了pythonkerberos包,它运行得很好。我已经在我的Linux机器上测试过了(通过activedirectory进行身份验证),结果没有问题。 但是,当我试图使用Firefox从Windows machine进行身份验证时(没有特殊设置,只是让用户登录到域+将我的服务器添加到negotiate中)-认证可信-uris),它不起作用。我已经看过发送的内容,它甚至与Linux机器发送的内容不太相似。这个进程的Microsoft description非常类似于我在Linux下的交互工作方式,但是Windows机器通常发送一个非常短的字符串,它甚至不像微软文档中所说的那样,当base64解码时,它大约是12个零字节后跟3或4个非零字节(GSS函数然后返回它不支持这种方案)

要么是客户端的Firefox设置有问题,要么是协商协议需要遵循一些协议,但我在任何地方都找不到任何参考。你知道怎么了?你知道我应该找到什么样的协议吗,因为它看起来不像SPNEGO,至少从MS文档来看是这样的。在

更新:现在看来它至少产生了合理的数据(在不同于windows7的设备上安装firefox……),但是我得到了: (“未指定的GSS故障。次要代码可能提供更多信息,851968),('',100004) 协商数据现在似乎正常,所以这是其他错误。你知道我在哪里能破译100004的意思吗?在


Tags: 数据文档服务器机器身份验证协议内容linux
1条回答
网友
1楼 · 发布于 2024-10-03 04:31:33

在Windows上,还需要确保网络授权使用-sspi=true,因此Firefox将使用本机Windows Kerberos(sspi),而不是查找GSSAPI DLL。在

如果不是这样,并且您希望提供Kerberos和HTTP流量的数据包捕获,我很乐意看到它。在

相关问题 更多 >