Hi Jim,
Jim wrote:
> Hi All!
> I was just wondering how I could implement two authentication sources
> (both LDAP) using the pipeline feature (so that if a user fails
> authentication in the first source, then it will try to authenticate
> with the second).
> I tried messing around with the spring configuration for the
> userPassword plugin but had no luck.
usernamePassword is handler is implemented as what we term "catch-all".
So the pipeline doesn't progress past that point until a user is
identified. (Gory details here:
http://esoeproject.org/confluence/display/ed/ESOE+Design#ESOEDesign-U... )
This handler takes in its constructor an object that implements the
interface UserPassAuthenticator. Currently you'll see from the spring
configuration we ship by default an implementation called
LDAPBasicAuthenticator. It simply uses the passed credentials to attempt
a bind or compare against a single LDAP server.
My advice to you is to create your own object that implements
UserPassAuthenticator that checks against as many LDAP (or database or
flatfile whatever you like) sources until it either finds a valid user
and returns a successful result or exhausts them all and returns a
negative result. This new object can then be easily wired in using the
spring config files.
Hope that is of assistance, additionally this kind of custom work is how
we support ESOE development if you'd like to discuss us building this
for you please contact me off list.
regards,
Bradley
> I am using version 0.7.0
> Any help would be much appreciated!
> thanks,
> Jim