在Windows上从Python访问SPNEGO认证的web服务

在Windows上从Python访问SPNEGO认证的web服务,python,windows,kerberos,spnego,Python,Windows,Kerberos,Spnego,我正在尝试从Windows上的Python应用程序访问使用Kerberos身份验证(公司内部)的REST服务。但是,该服务似乎被配置为仅在我尝试使用kerberos请求进行连接时使用SPNEGO,如中所示: requests.get('servicename', auth=HTTPKerberosAuth()) 它会从服务器产生一个500错误: javax.servlet.ServletException: GSSException: No credential found for: 1.2

我正在尝试从Windows上的Python应用程序访问使用Kerberos身份验证(公司内部)的REST服务。但是,该服务似乎被配置为仅在我尝试使用kerberos请求进行连接时使用SPNEGO,如中所示:

requests.get('servicename', auth=HTTPKerberosAuth()) 
它会从服务器产生一个500错误:

javax.servlet.ServletException: GSSException: No credential found for: 1.2.840.113554.1.2.2 
我猜服务器配置为只支持SPNEGO,Python客户端只支持Kerberos


我已经尝试过安装PyKerberos,但是失败了,因为它希望在系统上安装krb5,我正在Windows下安装。是否有可用的库可以帮助我在Windows中从Python执行SPNEGO调用?

以防其他人遇到类似的问题-通过使用pycurl和pycurl.HTTPAUTH\u gssnegatiate属性集解决。

如果其他人遇到类似的问题-通过使用pycurl和pycurl.HTTPAUTH\u gssnegate属性集。

不要使用
HTTPAUTH\u gssnegate
。去年有人支持
HTTPAUTH\u协商
。这并不能解决python问题,只是通过使用curl来解决它。不要使用
HTTPAUTH\u gssnegate
。去年就支持了
HTTPAUTH\u NEGOTIATE
。这并没有解决python问题,只是通过使用curl解决了它。