<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-15">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Good evening at all,<br>
<br>
I have successfully installed and configured the new Shibboleth IdP
v3.2.1, but I have a problem: I don't know how can I change the "<b>ldap-authn-config.xml</b>"
to use both openLDAP and ActiveDirectory to authenticate my users.<br>
<br>
I have tried to follow this page:<br>
<a
href="https://wiki.shibboleth.net/confluence/display/IDP30/LDAPAuthnConfiguration"><br>
<a class="moz-txt-link-freetext" href="https://wiki.shibboleth.net/confluence/display/IDP30/LDAPAuthnConfiguration">https://wiki.shibboleth.net/confluence/display/IDP30/LDAPAuthnConfiguration</a></a><br>
<br>
But I think I need a sort of aggreate authenticators to be able to
join the "<b>aggregateAuthenticator</b>" (openLDAP) and "<b>adAggregateAuthenticator</b>"
(Active Directory) on only one Authenticator that I can use and
configure on my ldap.properties file:
<p><b>openLDAP beans:</b></p>
<div class="line number1 index0 alt2"><code class="xml plain"><</code><code
class="xml keyword">bean</code> <code class="xml color1">name</code><code
class="xml plain">=</code><code class="xml string">"<b>aggregateAuthenticator</b>"</code>
<code class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.Authenticator"</code><code
class="xml plain">></code></div>
<div class="line number2 index1 alt1"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">constructor-arg</code>
<code class="xml color1">index</code><code class="xml plain">=</code><code
class="xml string">"0"</code> <code class="xml color1">ref</code><code
class="xml plain">=</code><code class="xml string">"aggregateDnResolver"</code>
<code class="xml plain">/></code></div>
<div class="line number3 index2 alt2"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">constructor-arg</code>
<code class="xml color1">index</code><code class="xml plain">=</code><code
class="xml string">"1"</code> <code class="xml color1">ref</code><code
class="xml plain">=</code><code class="xml string">"aggregateAuthHandler"</code>
<code class="xml plain">/></code></div>
<div class="line number4 index3 alt1"><code class="xml plain"></</code><code
class="xml keyword">bean</code><code class="xml plain">></code></div>
<div class="line number5 index4 alt2"><code class="xml plain"><</code><code
class="xml keyword">bean</code> <code class="xml color1">id</code><code
class="xml plain">=</code><code class="xml string">"aggregateDnResolver"</code>
<code class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.AggregateDnResolver"</code><code
class="xml plain">></code></div>
<div class="line number6 index5 alt1"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">constructor-arg</code>
<code class="xml color1">index</code><code class="xml plain">=</code><code
class="xml string">"0"</code> <code class="xml color1">ref</code><code
class="xml plain">=</code><code class="xml string">"dnResolvers"</code>
<code class="xml plain">/></code></div>
<div class="line number7 index6 alt2"><code class="xml plain"></</code><code
class="xml keyword">bean</code><code class="xml plain">></code></div>
<div class="line number8 index7 alt1"><code class="xml plain"><</code><code
class="xml keyword">bean</code> <code class="xml color1">id</code><code
class="xml plain">=</code><code class="xml string">"aggregateAuthHandler"</code>
<code class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.AggregateDnResolver$AuthenticationHandler"</code>
<code class="xml color1">p:authenticationHandlers-ref</code><code
class="xml plain">=</code><code class="xml string">"authHandlers"</code>
<code class="xml plain">/></code></div>
<div class="line number9 index8 alt2"><code class="xml plain"><</code><code
class="xml keyword">util:map</code> <code class="xml color1">id</code><code
class="xml plain">=</code><code class="xml string">"dnResolvers"</code><code
class="xml plain">></code></div>
<div class="line number10 index9 alt1"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">entry</code>
<code class="xml color1">key</code><code class="xml plain">=</code><code
class="xml string">"directory1"</code> <code class="xml color1">value-ref</code><code
class="xml plain">=</code><code class="xml string">"dnResolver1"</code>
<code class="xml plain">/></code></div>
<div class="line number11 index10 alt2"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">entry</code>
<code class="xml color1">key</code><code class="xml plain">=</code><code
class="xml string">"directory2"</code> <code class="xml color1">value-ref</code><code
class="xml plain">=</code><code class="xml string">"dnResolver2"</code>
<code class="xml plain">/></code></div>
<div class="line number12 index11 alt1"><code class="xml plain"></</code><code
class="xml keyword">util:map</code><code class="xml plain">></code></div>
<div class="line number13 index12 alt2"><code class="xml plain"><</code><code
class="xml keyword">util:map</code> <code class="xml color1">id</code><code
class="xml plain">=</code><code class="xml string">"authHandlers"</code><code
class="xml plain">></code></div>
<div class="line number14 index13 alt1"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">entry</code>
<code class="xml color1">key</code><code class="xml plain">=</code><code
class="xml string">"directory1"</code> <code class="xml color1">value-ref</code><code
class="xml plain">=</code><code class="xml string">"authHandler1"</code>
<code class="xml plain">/></code></div>
<div class="line number15 index14 alt2"><code class="xml spaces"> </code><code
class="xml plain"><</code><code class="xml keyword">entry</code>
<code class="xml color1">key</code><code class="xml plain">=</code><code
class="xml string">"directory2"</code> <code class="xml color1">value-ref</code><code
class="xml plain">=</code><code class="xml string">"authHandler2"</code>
<code class="xml plain">/></code></div>
<div class="line number16 index15 alt1"><code class="xml plain"></</code><code
class="xml keyword">util:map</code><code class="xml plain">><br>
</code><br>
<code class="xml comments"><!-- define DN resolvers and
authentication handlers for each directory... --></code>
<p><b>Active Directory beans:</b><br>
</p>
<code class="xml plain"></code><code class="xml plain"></code><code
class="xml comments"><!-- ldap.properties
"idp.authn.LDAP.authenticator = adAggregateAuthenticator" --></code>
<div class="line number53 index52 alt2"><code class="xml spaces"></code><code
class="xml plain"><</code><code class="xml keyword">bean</code>
<code class="xml color1">id</code><code class="xml plain">=</code><code
class="xml string">"<b>adAggregateAuthenticator</b>"</code> <code
class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.Authenticator"</code></div>
<div class="line number54 index53 alt1"><code class="xml spaces">
</code><code class="xml color1">p:authenticationResponseHandlers-ref</code><code
class="xml plain">=</code><code class="xml string">"adAuthenticationResponseHandler"</code><code
class="xml plain">></code></div>
<div class="line number55 index54 alt2"><code class="xml spaces">
</code><code class="xml plain"><</code><code class="xml
keyword">constructor-arg</code> <code class="xml color1">index</code><code
class="xml plain">=</code><code class="xml string">"0"</code>
<code class="xml color1">ref</code><code class="xml plain">=</code><code
class="xml string">"adAggregateDnResolver"</code> <code
class="xml plain">/></code></div>
<div class="line number56 index55 alt1"><code class="xml spaces">
</code><code class="xml plain"><</code><code class="xml
keyword">constructor-arg</code> <code class="xml color1">index</code><code
class="xml plain">=</code><code class="xml string">"1"</code>
<code class="xml color1">ref</code><code class="xml plain">=</code><code
class="xml string">"adAggregateAuthHandler"</code> <code
class="xml plain">/></code></div>
<div class="line number57 index56 alt2"><code class="xml spaces"></code><code
class="xml plain"></</code><code class="xml keyword">bean</code><code
class="xml plain">></code></div>
<div class="line number58 index57 alt1"><code class="xml spaces"></code><code
class="xml plain"><</code><code class="xml keyword">bean</code>
<code class="xml color1">id</code><code class="xml plain">=</code><code
class="xml string">"adAuthenticationResponseHandler"</code> <code
class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.ext.ActiveDirectoryAuthenticationResponseHandler"</code>
<code class="xml plain">/></code></div>
<div class="line number59 index58 alt2"><code class="xml spaces"></code><code
class="xml plain"><</code><code class="xml keyword">bean</code>
<code class="xml color1">id</code><code class="xml plain">=</code><code
class="xml string">"adAggregateDnResolver"</code> <code
class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.AggregateDnResolver"</code><code
class="xml plain">></code></div>
<div class="line number60 index59 alt1"><code class="xml spaces">
</code><code class="xml plain"><</code><code class="xml
keyword">constructor-arg</code> <code class="xml color1">index</code><code
class="xml plain">=</code><code class="xml string">"0"</code>
<code class="xml color1">ref</code><code class="xml plain">=</code><code
class="xml string">"adDnResolvers"</code> <code class="xml
plain">/></code></div>
<div class="line number61 index60 alt2"><code class="xml spaces"></code><code
class="xml plain"></</code><code class="xml keyword">bean</code><code
class="xml plain">></code></div>
<div class="line number62 index61 alt1"><code class="xml spaces"></code><code
class="xml plain"><</code><code class="xml keyword">bean</code>
<code class="xml color1">id</code><code class="xml plain">=</code><code
class="xml string">"adAggregateAuthHandler"</code> <code
class="xml color1">class</code><code class="xml plain">=</code><code
class="xml string">"org.ldaptive.auth.AggregateDnResolver$AuthenticationHandler"</code></div>
<div class="line number63 index62 alt2"><code class="xml spaces">
</code><code class="xml color1">p:authenticationHandlers-ref</code><code
class="xml plain">=</code><code class="xml string">"adAuthHandlers"</code>
<code class="xml plain">/></code></div>
<div class="line number64 index63 alt1"><code class="xml spaces"></code><code
class="xml plain"><</code><code class="xml keyword">util:map</code>
<code class="xml color1">id</code><code class="xml plain">=</code><code
class="xml string">"adDnResolvers"</code><code class="xml
plain">></code></div>
<div class="line number65 index64 alt2"><code class="xml spaces">
</code><code class="xml plain"><</code><code class="xml
keyword">entry</code> <code class="xml color1">key</code><code
class="xml plain">=</code><code class="xml string">"directory1_filter1"</code>
<code class="xml color1">value-ref</code><code class="xml plain">=</code><code
class="xml string">"adDnResolver1"</code> <code class="xml
plain">/></code></div>
<div class="line number67 index66 alt2"><code class="xml spaces">
</code><code class="xml plain"><</code><code class="xml
keyword">entry</code> <code class="xml color1">key</code><code
class="xml plain">=</code><code class="xml string">"directory2_filter3"</code>
<code class="xml color1">value-ref</code><code class="xml plain">=</code><code
class="xml string">"adDnResolver2"</code> <code class="xml
plain">/></code></div>
<div class="line number69 index68 alt2"><code class="xml spaces"></code><code
class="xml plain"></</code><code class="xml keyword">util:map</code><code
class="xml plain">></code><br>
</div>
</div>
<p>
<code class="xml comments"><!-- define DN resolvers and
authentication handlers for each directory... --></code></p>
<p><br>
</p>
Someone of you already know a solution for this use case? What I
need to do to solve this situation and authenticate the users
provided by both directories?<br>
<br>
I didn't find a class on ldaptive javadocs that can help me...<br>
<br>
Can you help me, please?<br>
<br>
Thank you very much for all help that you can give to me.<br>
<p><br>
</p>
<p>Best Regards,<br>
</p>
<pre class="moz-signature" cols="72">--
Marco Malavolti
Consortium GARR - Servizio IDEM GARR AAI
Via dei Tizii, 6 - I-00185 (ROMA)
CF: 37284570583 - PI:07577141000
Skype: marco.mala</pre>
</body>
</html>