Starting with the patched https://source.jasig.org/sandbox/cas-password-policy/tags/cas-server-support-ldap-pwd-expiration-3.4.8/ I pulled in all the changes from CAS Server 3.4.10. These are my the merge notes.
Resources
The LPPE module currently has files under /src/main/resources/ that map to cas-server-webapp/src/main/webapp/. These files could be applied via Maven Overlay if they were in the right directory.
...
org.jasig.cas.adoptors.ldappwd.BindLdapAuthenticationHandler
Additions:
Code Block |
---|
/**
* Chaine de traitement pour les erreurs LDAP
*/
@NotNull
private AbstractLdapErrorDetailProcessor errorProcessor = new NoOpErrorProcessor();
/** Log instance for logging events, info, warnings, errors, etc. */
private final Logger log = LoggerFactory.getLogger(this.getClass());
|
...
Code Block |
---|
line 114: in catch in authenticateUsernamePasswordInternal String details = e.getMessage(); this.log.debug("LDAP server returned exception message: " + details); // Call Treatment chain errorProcessor.processErrorDetail(details); // if we catch an exception, just try the next cn /** * @param errorProcessor Processor chain for ldap error details */ public final void setErrorProcessor(final AbstractLdapErrorDetailProcessor errorProcessor) { this.errorProcessor = errorProcessor; } |
...
- LdapPwdCentralAuthenticationService
- LdapPwdCentralAuthenticationServiceImpl (copy and fork of CASImpl)
Additions:Code Block public final class LdapPwdCentralAuthenticationServiceImpl implements LdapPwdCentralAuthenticationService { public Principal getPrincipal(String id) { Principal principal = ((TicketGrantingTicket) ticketRegistry.getTicket(id)).getAuthentication().getPrincipal(); return principal; }