mirror of
https://github.com/BookStackApp/BookStack.git
synced 2024-11-24 20:02:35 +01:00
Update Ldap.php
This is a very crude workaround, a better solution is explained in the comments I added.
This commit is contained in:
parent
0fb1fc87c8
commit
340d3f833b
@ -18,6 +18,24 @@ class Ldap
|
|||||||
*/
|
*/
|
||||||
public function connect($hostName, $port)
|
public function connect($hostName, $port)
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
|
* LDAPS is not working because even if port 363 is specified,
|
||||||
|
* BookStack tries to open a LDAP connection on the LDAPS channel.
|
||||||
|
* The if-clause below fixed this, although it would be better to
|
||||||
|
* change the settings in .env from
|
||||||
|
* LDAP_SERVER=servername:port
|
||||||
|
* to
|
||||||
|
* LDAP_SERVER=ldap://servername:389
|
||||||
|
* LDAP_SERVER=ldaps://servername:363
|
||||||
|
* in order to be compatible with non-standard setups. Currently,
|
||||||
|
* specifying ldap:// or ldaps:// results in an error because BookStack
|
||||||
|
* splits at ":" and takes the seconds chunk (in this case "//servername"
|
||||||
|
* as the port value.
|
||||||
|
*/
|
||||||
|
if ($port == 363)
|
||||||
|
{
|
||||||
|
$hostName = "ldaps://".$hostName;
|
||||||
|
}
|
||||||
return ldap_connect($hostName, $port);
|
return ldap_connect($hostName, $port);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -94,4 +112,4 @@ class Ldap
|
|||||||
return ldap_bind($ldapConnection, $bindRdn, $bindPassword);
|
return ldap_bind($ldapConnection, $bindRdn, $bindPassword);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user