-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Delegate check for preemptive authentication from AuthenticatorBase to affected Authenticators #444
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
Conversation
- new protected method isPreemptiveAuthRequest() in AuthenticatorBase which is overridden in some authenticators - moved getRequestCertificates() from AuthenticatorBase to SSLAuthenticator
46c7905 to
d2e8c89
Compare
|
One more nit: I think the check in the header-based authenticators is too generic. Shouldn't they check for a value for their auth scheme only? Basic for |
|
That's a good point IMHO. Now that the check is in the individual |
With SPNEGO is like with Basic: Base64 token. |
michael-o
left a comment
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.
Makes sense now to me.
|
The removal of the preemptive capability of the Before I change all these tests I'd like to confirm that it is worth it. |
|
This needs to analyzed whether the tests are invalid or not. |
|
Will have to look at that in detail, which will take some time. I have to postpone this for 2 weeks because I am on vacation. |
|
Preemptive authentication for TLS needs to be retained. There are a few edge cases where it still has an effect. For example when |
Can you explain how? |
|
Applied manually so I could:
|
The main purpose of the proposed refactoring is to give an individual
Authenticatorthe possibility to decide if preemptive authentication is possible (e.g. if a completely different header is used for authentication).In addition it yields cleaner code as the certificate handling code and the header name for basic, digest and spnego auth can now be moved to the relevant
Authenticators and does not pollute theAuthenicatorBase.FormAuthenticatorandNonLoginAuthenticatordon't need to overrideisPreemptiveAuthRequest()as preemptive is not supported/needed.Main changes:
which is overridden in some authenticators
SSLAuthenticator