[TYPO3-UG Italy] accesso ldap o compliant

max mfratoni at hotmail.com
Wed Sep 27 15:51:44 CEST 2006


risolto alla grande ragazzi! grazie per i consigli, abbiamo imparato anche 
qualcosa di nuovo, mi riferisco all'esempio in php per testare ldap 
(indipensabile).

Come al solito il problema era una cavolata, nel mio caso passavo 
l'autenticazione sbagliata, nome utente e password al posto di nome 
utente at dominio e password, maldetta abitudine.

inoltre ho aggiunto il suffisso ldap nel campo server, alcuni tutorial non 
lo citano.

grazie ancora e viva i newsgroup!

"Francesco Pessina" <typo3news at yahoo.it> ha scritto nel messaggio 
news:mailman.1.1159361279.8268.typo3-ug-italy at lists.netfielders.de...
> Ciao a tutti,
>
> Scusate la latitanza ma ho dovuto fare modifiche radicali al mio web e 
> cio' mi ha rubato molto tempo...
>
> Il problema dell' "unable to bind the server" e' un problema tipico che 
> non sempre riguarda la estensione eu_ldap ma PHP con LDAP. Quindi 
> consiglierei i seguenti passi:
> 1) verificare che il firewall di 2003 apra la porta 389 in ingresso, che 
> non ci siano limitazioni su tale ambito e che, se presente e configurato, 
> l'SCW non blocchi il servizio LDAP dal punto di vista network
> 2) provare con del codice PHP semplice semplice a fare una interrogazione 
> sul proprio LDAP se la comunicazione LDAP<->PHP funzia o meno; a fine 
> messaggio vi allego un test di ldap in PHP che uso abitualmente quando ho 
> problemi :-)
> 3) io ho avuto difficolta' con eu_ldap nel caso di autenticazione nella 
> forma nome.dominio\nome.utente; ho cambiato la modalita' in 
> nome.utente at nome.dominio e tutto funzia alla grande.
> 4) anche se in tedesco, consiglio la "lettura" di questo tutorial 
> rilasciato dallo stesso autore che ha fatto l'estensione (le figure e le 
> indicazioni degli step sono cumunque comprensibili):
> http://www.entios.de/uploads/media/t3n_01_ldap.pdf
>
> Per il resto concordo anch'io, l'uso dei filtri e' l'ultima cosa da 
> implementare, prima verificare che si abbia il dialogo PHP<->LDAP.
>
> Saluti, Francesco
>
>
> ===================== Salvare in LDAP.php ============================
> <?php
> // ritorna l'elenco degli utenti AD con alcune loro info.
>
> $ldap_host="xxx.xxx.xxx.xxx"; // l'IP del server AD, non scomodiamo il DNS 
> locale..
> $ldap_user="nome.utente at nome.dominio"; // utente di AD con diritto di 
> lettura (users)
> $ldap_pass="password_utente"; // la password di "nome.utente"
> $ldap_base="DC=nome,DC=dominio"; // corrisponde a "nome.dominio"
> $ldap_filter="(&(objectClass=user)(objectCategory=person)(samaccountname=*))";
> $ldap_object=array('displayname','mail','givenname','cn');
>
> echo "<h3>LDAP query test</h3>";
> echo "Connecting to ".$ldap_host."...";
> $ldap_conn=ldap_connect($ldap_host) or die("Could not connect to LDAP 
> server.");
> echo "connect result is [" . $ldap_conn . "]<br />";
>
> if ($ldap_conn) {
> if (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
>    echo "Using LDAPv3<br />";
> } else {
>    echo "Failed to set protocol version to 3<br />";
> }
> echo "Binding ...";
> $ldap_bind=ldap_bind($ldap_conn,$ldap_user, $ldap_pass);    // this is an 
> "anonymous" bind, typically
>
> echo "Bind result is [" . $ldap_bind ."]. ";
> if ($ldap_bind) {
>    echo "LDAP bind successful...<br />";
>
>    echo "Searching for [".$ldap_filter."] ...<br />";
>
>    $ldap_result=ldap_search($ldap_conn, $ldap_base, $ldap_filter);
>    echo "Search result is [" . $ldap_result . "]<br />";
>
>    echo "Number of entires returned is [" . ldap_count_entries($ldap_conn, 
> $ldap_result) . "].<br />";
>    $info = ldap_get_entries($ldap_conn, $ldap_result);
>
>    echo "Data for [" . $info["count"] . "] items returned:<p>";
>
>    for ($i=0; $i<$info["count"]; $i++) {
>    print_r($info[$i]);
>        echo "dn is: " . $info[$i]["dn"] . "<br />";
>        echo "first cn entry is: " . $info[$i]["cn"][0] . "<br />";
>        echo "first group entry is: " . $info[$i]["ou"][0] . "<br />";
>        echo "first email entry is: " . $info[$i]["mail"][0] . "<br /><hr 
> />";
>    }
> } else {
>    echo "LDAP bind failed...<br />";
> }
>
>
> echo "Closing connection";
> ldap_close($ldap_conn);
>
> } else {
>    echo "<h4>Unable to connect to LDAP server</h4>";
> }
> ?>
> ======================================================================
>
>
> Mauro Lorenzutti ha scritto:
>>> francamente non sono esperto di queste cose, avete da suggerirmi un 
>>> filtro
>>> basato solo sull'account? per eseguire un prova!
>>
>> In rete puoi trovare un sacco di tutorial su LDAP, per iniziare puoi
>> dare un'occhiata a:
>> http://www.microsoft.com/italy/technet/prodtechnol/exchange/2003/insider/ldapquery.mspx
>>
>> Saluti,
>>  Mauro Lorenzutti
>>
>>
>> e-mail:  mauro.lorenzutti at webformat.com
>>
>> ---------------------------------------------------------
>> WEBFORMAT srl | Corte Europa, 12 | I-33097 SPILIMBERGO PN
>>      Tel +39-0427-926.389  --  Fax +39-0427-927.653
>>        info at webformat.com  --  www.webformat.com
>> ---------------------------------------------------------
>> 





More information about the TYPO3-UG-italy mailing list