将flex/php连接到Active Directory

mod*_*z0r 6 php apache-flex active-directory

有没有办法将我的Flex Web应用程序连接到Active Directory,并获取登录的用户名?

现在我们有一个PHP脚本连接到flex应用程序,它从用户获取用户/传递输入并检查AD中是否有这样的用户,并且密码是正确的.
我不想要求用户/通行证,而是让应用程序获得与其连接的域用户名,因此我可以使用它(检查用户是否可以访问我的应用程序等).

有办法吗?

Tha*_*var 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...";
    }

}

?>
Run Code Online (Sandbox Code Playgroud)

当您的应用程序启动时,您需要使用 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
Run Code Online (Sandbox Code Playgroud)

我需要的用户名/密码是管理员凭据还是系统上的任何用户?

您可以单独获取用户名,而不是密码...当用户登录到他的窗口机器时,我们可以Environment.username在 C# 中使用检查他的凭据,在 PHP 中我们可以使用 AUTH_USER 来验证登录的用户是否有效。

另外,您知道在哪里可以找到变量列表(例如 auth_user)并获取哪些信息?

https://www.php.net/manual/en/ref.ldap.php

您可以从上面的链接获得很多信息。