Fix Kerberos ApReq Authenticator Checksum Flags #207
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi,
In this pull request, I fixed the issue mentioned here: #206 (comment)
During the issue investigation, I noticed that authentication works with all flags except the
GSS_C_DELEG_FLAG
one. It didn't seem related to the smart card authentication stuff. I tested the authentication with password-based logon and got the same error. So it's not related to the login type.Then I reread the RFC that contains this flag explanation. RFC 4121: Section 4.1.1: Authenticator Checksum:
Our authenticator checksum always has the 24 octets len (
sspi-rs/src/kerberos/client/generators.rs
Line 66 in 6dae2a5
sspi-rs/src/kerberos/client/generators.rs
Line 360 in 6dae2a5
GSS_C_DELEG_FLAG
is set. On the other hand, the same RFC says:In our current Kerberos implementation, we don't support the
KRB_CRED
message. So, my solution is to disable theGSS_C_DELEG_FLAG
flag. I added a comment in the code with an explanation about this decision.Docs & references: