-
Notifications
You must be signed in to change notification settings - Fork 8.7k
Upgrade ApacheDS to 2.0.0.AM27 to address CVE-2026-35563 #51124
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
base: main
Are you sure you want to change the base?
Changes from all commits
3ce6acd
c2101d2
31df497
993cba1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -175,7 +175,10 @@ public void usernamePasswordLoginTest() throws Exception { | |
|
|
||
| @Test | ||
| public void credentialDelegationTest() throws Exception { | ||
| Assume.assumeTrue("Ignoring test as the embedded server is not started", getKerberosRule().isStartEmbeddedLdapServer()); | ||
| // Credential delegation requires the FORWARDED ticket flag, which Kerby's embedded KDC | ||
| // does not support (DIRKRB-458). Skip when using embedded server; run against external KDCs (e.g. MSAD). | ||
| Assume.assumeTrue("Credential delegation not supported with embedded Kerby KDC", | ||
| !getKerberosRule().isStartEmbeddedLdapServer()); | ||
|
Comment on lines
+180
to
+181
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. True observation but this condition is pre-existing. The invokeLdap method was never designed for external providers. When the internal MSAD pipeline runs the credential delegation test, it would need the LDAP URL/DN adapted. But this isn't something we introduced, it was already the case before our change. |
||
| // Add kerberos delegation credential mapper | ||
| ProtocolMapperModel protocolMapper = UserSessionNoteMapper.createClaimMapper(KerberosConstants.GSS_DELEGATION_CREDENTIAL_DISPLAY_NAME, | ||
| KerberosConstants.GSS_DELEGATION_CREDENTIAL, | ||
|
|
||
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.
It seems that
credentialDelegationTest()maybe does not work with any other server besides Apache DS and that is likely the reason of the originalassumeTrueassumption? Updating this assumption might possibly make the test failing in pipeline with servers like MSAD or others (as previously, it was not tested with MSAD and others, but now it would be tested)... If the assertion is updated this way, it would be needed to have this PR approved also from some members of QA team, who confirms that it does work in the pipeline for real LDAP servers like MSAD.Additional suggestion: Is it possible to keep this test even for embedded Apache DS, but just remove the invocation of
invokeLdap? That LDAP invocation is probably the most problematic for credential delegation, however I hope that rest of the functionality still works with embedded ApacheDS (especially serializing of the credential, adding it to the token and deserializing credential intoGssCredential) and it would be nice if we still test it. So maybe in that case, the relevant lines can be updated to something like:I am not sure if "else" branch works as no idea if credential delegation works for other servers (like MSAD or others, which we test in pipeline). This would need to be confirmed.