summaryrefslogtreecommitdiffstats
path: root/ldap-site-mngmt/webinterface/lib
diff options
context:
space:
mode:
Diffstat (limited to 'ldap-site-mngmt/webinterface/lib')
-rw-r--r--ldap-site-mngmt/webinterface/lib/config.inc.php13
-rw-r--r--ldap-site-mngmt/webinterface/lib/ldap.inc.php56
2 files changed, 39 insertions, 30 deletions
diff --git a/ldap-site-mngmt/webinterface/lib/config.inc.php b/ldap-site-mngmt/webinterface/lib/config.inc.php
index 50d7e465..653cc262 100644
--- a/ldap-site-mngmt/webinterface/lib/config.inc.php
+++ b/ldap-site-mngmt/webinterface/lib/config.inc.php
@@ -8,18 +8,21 @@
# Anlegen einer Variablen für den Speicherort von den CSVs
# $TMPPATH_CSV="/home/gruppe1/public_html/htdocs/";
- // einige LDAP-Angaben:
- // der Anwendungs-LDAP
- define('LDAP_HOST', '132.230.9.56');
+ # einige LDAP-Angaben:
+ # der Anwendungs-LDAP
+ define('LDAP_HOST', 'ldap://oranje.ruf.uni-freiburg.de');
+ #define('LDAP_HOST', 'ldaps://oranje.ruf.uni-freiburg.de');
define('LDAP_PORT', 389);
+ #define('LDAP_PORT', 636);
$suffix = "dc=uni-freiburg,dc=de";
$domsuffix = "uni-freiburg.de";
- // der LDAP-Server für die Authentisierung der User
+
+ # der LDAP-Server für die Authentisierung der User
#define('LDAP_HOST_RZ', '132.230.1.61');
#define('LDAP_PORT_RZ', 636);
#$suffix_rz = "dc=uni-freiburg,dc=de";
- // einige Sachen, die aus Sicherheitsgründen in produktiven Umgebungen geändert werden sollten!!!
+ # einige Sachen, die aus Sicherheitsgründen in produktiven Umgebungen geändert werden sollten!!!
#$dummyUid = "rz-ldap"; // Dummy-User für einige Aktionen - muss angelegt werden!!!
#$dummyPassword = "dummy";
diff --git a/ldap-site-mngmt/webinterface/lib/ldap.inc.php b/ldap-site-mngmt/webinterface/lib/ldap.inc.php
index 204e3e3c..793a54a4 100644
--- a/ldap-site-mngmt/webinterface/lib/ldap.inc.php
+++ b/ldap-site-mngmt/webinterface/lib/ldap.inc.php
@@ -34,31 +34,37 @@ function uniLdapConnect($userRdn = "", $userPwd = "") {
# Connect zum LDAP-Server OK
if(ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
# Optionen gesetzt
- if($userRdn != "" && $userPwd != "") {
- # Anmeldung als User.
- if($result = @ldap_bind($ds, "uid=".$userRdn.",ou=people,".$suffix, $userPwd)) {
- # Bind erfolgreich ausgeführt
- return $ds;
- } else {
- # Bind nicht erfolreich.
- if(ldap_error($ds) == "Invalid credentials") {
- $ldapError .= "Bind nicht erfolgreich: die Zugangsdaten sind nicht korrekt.<br>\n";
- } else {
- $ldapError .= "Bind als User nicht erfolgreich: ".ldap_error($ds)."<br>\n";
- }
- return false;
- }
- } else {
- # Anonymer Bind.
- if($result = ldap_bind($ds)) {
- # Anonymer Bind erfolgreich ausgeführt
- return $ds;
- } else {
- # Anonymer Bind nicht erfolreich.
- $ldapError .= "Anonymer Bind nicht erfolgreich: ".ldap_error($ds)."<br>\n";
- return false;
- }
- }
+ if (ldap_start_tls($ds)){
+ if($userRdn != "" && $userPwd != "") {
+ # Anmeldung als User.
+ if($result = @ldap_bind($ds, "uid=".$userRdn.",ou=people,".$suffix, $userPwd)) {
+ # Bind erfolgreich ausgeführt
+ return $ds;
+ } else {
+ # Bind nicht erfolreich.
+ if(ldap_error($ds) == "Invalid credentials") {
+ $ldapError .= "Bind nicht erfolgreich: die Zugangsdaten sind nicht korrekt.<br>\n";
+ } else {
+ $ldapError .= "Bind als User nicht erfolgreich: ".ldap_error($ds)."<br>\n";
+ }
+ #print_r(ldap_error($ds));echo "<br><br>";
+ return false;
+ }
+ } else {
+ # Anonymer Bind.
+ if($result = ldap_bind($ds)) {
+ # Anonymer Bind erfolgreich ausgeführt
+ return $ds;
+ } else {
+ # Anonymer Bind nicht erfolreich.
+ $ldapError .= "Anonymer Bind nicht erfolgreich: ".ldap_error($ds)."<br>\n";
+ return false;
+ }
+ }
+ } else {
+ # TLS starten fehlgeschlagen
+ $ldapError .= "TLS starten fehlgeschlagen: ".ldap_error($ds)."<br>\n";
+ }
} else {
# Optionen setzen fehlgeschlagen
$ldapError .= "Protokollversion setzen fehlgeschlagen: ".ldap_error($ds)."<br>\n";