-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Negotiate authentication #33
base: develop
Are you sure you want to change the base?
Conversation
- Remove subclasses - Use supported API for spnego.client - Update some tests
httpx_auth/authentication.py
Outdated
@@ -1165,6 +1173,185 @@ def __init__(self, username: str, password: str): | |||
httpx.BasicAuth.__init__(self, username, password) | |||
|
|||
|
|||
class Negotiate(httpx.Auth, SupportMultiAuth): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you move everything to a specific file ?
- Add a functional test - Update imports
- Add tests for redirect handling - Add test for setting cookies during auth process
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
SonarCloud Quality Gate failed. 0 Bugs No Coverage information |
Adds support for most of the Negotiate and NTLM authentication mechanisms. No current support for Channel Binding Tokens, since it is currently not possible to access the httpx SSLSocketContext via supported means.
PR has been tested with IIS on Windows 10, but should be considered alpha, it has not been tested on any linux distributions.
PR includes unit tests for helper functions, but does not currently include any end-to-end tests, it should be possible to deploy a KDC and protected server in a container, but I have not implemented that so far.