简体   繁体   中英

Accessing SPNEGO authenticated web service from Python on Windows

I am trying to access a REST service that uses Kerberos authentication (company internal) from a Python app on Windows. However, it seems that the service is configured to expect a SPNEGO only as when I try to use requests-kerberos to connect as in:

requests.get('servicename', auth=HTTPKerberosAuth()) 

it produces a 500 Error from the server with:

javax.servlet.ServletException: GSSException: No credential found for: 1.2.840.113554.1.2.2 

My guess is that server is configured to expect SPNEGO only and Python client supports only Kerberos.

I have tried installing PyKerberos but that fails as it expects krb5 on the system and I am doing this under Windows. Are there any libraries available that could help me do a SPNEGO call from Python in Windows?

如果其他人有类似的问题 - 通过使用pycurl与pycurl.HTTPAUTH_GSSNEGOTIATE属性集解决。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM