Преглед изворни кода

Update ldap.php

If the LDAP password is not provided then set authorized to false.
FusionPBX пре 8 година
родитељ
комит
b53bb08025
1 измењених фајлова са 12 додато и 4 уклоњено
  1. 12 4
      core/authentication/resources/classes/plugins/ldap.php

+ 12 - 4
core/authentication/resources/classes/plugins/ldap.php

@@ -62,12 +62,20 @@ class plugin_ldap {
 				//Note: As of 4/16, the call below will fail randomly. PHP debug reports ldap_bind
 				//Note: As of 4/16, the call below will fail randomly. PHP debug reports ldap_bind
 				//called below with all arguments '*uninitialized*'. However, the debugger
 				//called below with all arguments '*uninitialized*'. However, the debugger
 				//single-stepping just before the failing call correctly displays all the values.
 				//single-stepping just before the failing call correctly displays all the values.
-				$bind = ldap_bind($connect, $bind_dn, $bind_pw);
-				if ($bind) {
-					$user_authorized = true;
-					break;
+				if (strlen($bind_pw) > 0) {
+					$bind = ldap_bind($connect, $bind_dn, $bind_pw);
+					if ($bind) {
+						//connected and authorized
+						$user_authorized = true;
+						break;
+					}
+					else {
+						//connection failed
+						$user_authorized = false;
+					}
 				}
 				}
 				else {
 				else {
+					//password not provided
 					$user_authorized = false;
 					$user_authorized = false;
 				}
 				}
 			}
 			}