2010-05-13 11 views
6

¿Hay alguna forma de conectar mi aplicación web flexible a Active Directory y obtener el nombre de usuario registrado?Conexión de flex/php a Active Directory

Ahora tenemos un script PHP conectado a la aplicación flex, que obtiene la entrada de usuario/pase del usuario y verifica si hay tal usuario en el AD, y que la contraseña es correcta.
No quiero pedir el usuario/pase, pero hacer que la aplicación obtenga el nombre de usuario del dominio que está conectado a él, así que podría usarlo (verifique si el usuario tiene acceso a mi aplicación y tal).

¿Hay alguna manera de hacerlo?

Respuesta

3
<?php 

// using ldap bind 
$ldaprdn = 'uname';  // ldap rdn or dn 
$ldappass = 'password'; // associated password 

// connect to ldap server 
$ldapconn = ldap_connect("ldap.example.com") 
    or die("Could not connect to LDAP server."); 

if ($ldapconn) { 

    // binding to ldap server 
    $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass); 

    // verify binding 
    if ($ldapbind) { 
     echo "LDAP bind successful..."; 
    } else { 
     echo "LDAP bind failed..."; 
    } 

} 

?> 

Cuando se inicia la aplicación, debe acceder al LDAP con las credenciales de inicio de sesión de Windows.

`AUTH_USER` request variable is the one which you have to check. 
    This will hold your Windows login username and AUTH_USER will be 
    MYDOMAINNAME\user.name 

El nombre de usuario/contraseña que necesito para esto, es que las credenciales de administrador, o cualquier usuario en el sistema?

Usted puede obtener el nombre de usuario solo, no la contraseña ... cuando el usuario entra en la máquina de su ventana, que pueden comprobar sus credenciales mediante Environment.username en C# y en PHP podemos utilizar AUTH_USER para verificar que el usuario se haya identificado es válida.

Plus, ¿sabe dónde puedo encontrar una lista de variables (como auth_user) de qué información puedo obtener?

http://in3.php.net/manual/en/ref.ldap.php

Usted puede obtener una gran cantidad de información desde el enlace anterior.

+0

El nombre de usuario/contraseña que necesito para esto, ¿son las credenciales de administrador, o cualquier usuario en el sistema? Además, ¿sabe dónde puedo encontrar una lista de variables (como auth_user) de las cuales puedo obtener información? – modz0r

+0

Sí, no me refería a obtener la contraseña del usuario. Me refiero al usuario/contraseña que necesito ingresar en las variables $ ldaprdn/$ ldappass. Comprobaré lo que escribiste, y el enlace, mañana ... pero parece que eso es lo que necesitaba (una vez que lo verifique, aceptaré la respuesta). ¡Gracias! – modz0r

+0

Ok, parece que es más o menos lo que usamos, y no es exactamente lo que necesitamos ... pero eso es lo mejor que podemos obtener. Lo que quería hacer es obtener esta información sin pedirle al usuario su nombre de usuario/contraseña. Bueno, es lo más cerca que puedo llegar. ¡Gracias por la ayuda! – modz0r

Cuestiones relacionadas