有没有办法将我的flex web应用程序连接到Active Directory,并获取记录的用户名?
现在我们有一个PHP脚本连接到flex应用程序,它从用户获取用户/传递输入并检查AD中是否有这样的用户,并且密码是否正确。
我不想要求用户/通行证,而是让应用程序获得与其连接的域用户名,因此我可以使用它(检查用户是否可以访问我的应用程序等)。
有办法吗?
答案 0 :(得分: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...";
}
}
?>
启动应用程序后,您需要使用Windows登录凭据访问LDAP。
`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
我需要的用户名/密码, 是管理员凭据,还是任何用户 在系统上?
您可以单独获取用户名,而不是密码...当用户登录到他的窗口的机器时,我们可以使用C#中的Environment.username
检查他的凭据,在PHP中我们可以使用AUTH_USER来验证用户登录in有效。
另外,你知道我在哪里可以找到 变量列表(如auth_user) 我可以获得哪些信息?
http://in3.php.net/manual/en/ref.ldap.php
您可以从上面的链接中获取大量信息。