コード例 #1
0
ファイル: edit_responsable.php プロジェクト: rhertzog/lcs
							// Passage au mode Gepi, rien de spécial à faire, si ce n'est annoncer à l'administrateur
							// qu'il va falloir réinitialiser les mots de passe
							$pass_init_required = true;
							// Et si accès en écriture au LDAP, on supprime le compte.
							if ($ldap_write_access) {
								$delete_ldap_user = true;
							}
						}

						// On effectue les opérations LDAP
						if (isset($create_ldap_user) && $create_ldap_user) {
							if (!$ldap_server->test_user($current_parent->login)) {
								$parent = mysqli_fetch_object(mysqli_query($GLOBALS["mysqli"], "SELECT distinct(r.login), r.nom, r.prenom, r.civilite, r.mel " .
														"FROM resp_pers r WHERE (" .
														"r.login = '******')"));
								$write_ldap_success = $ldap_server->add_user($parent->login, $parent->nom, $parent->prenom, $parent->mel, $parent->civilite, md5(rand()), "responsable");
								// On transfert le mot de passe à la main
								$ldap_server->set_manual_password($current_parent->login, "{MD5}".base64_encode(pack("H*",$oldmd5password)));
							}
						}
						if (isset($delete_ldap_user) && $delete_ldap_user) {
							if (!$ldap_server->test_user($current_parent->login)) {
								// L'utilisateur n'a pas été trouvé dans l'annuaire.
								$write_ldap_success = true;
							} else {
								$write_ldap_success = $ldap_server->delete_user($current_parent->login);
							}
						}

					}
				}
コード例 #2
0
ファイル: create_eleve.php プロジェクト: rhertzog/lcs
			}

			// Si on a un accès LDAP en écriture, on créé le compte sur le LDAP
			// On ne procède que si le LDAP est configuré en écriture, qu'on a activé
			// l'auth LDAP ou SSO, et que c'est un de ces deux modes qui a été choisi pour cet utilisateur.
			if (LDAPServer::is_setup() && $gepiSettings["ldap_write_access"] == "yes" && ($session_gepi->auth_ldap || $session_gepi->auth_sso) && ($_POST['reg_auth_mode'] == 'auth_ldap' || $_POST['reg_auth_mode'] == 'auth_sso')) {
				$write_ldap = true;
				$write_ldap_success = false;
				// On tente de créer l'utilisateur sur l'annuaire LDAP
				$ldap_server = new LDAPServer();
				if ($ldap_server->test_user($current_eleve->login)) {
					// L'utilisateur a été trouvé dans l'annuaire. On ne l'enregistre pas.
					$write_ldap_success = true;
					$msg.= "L'utilisateur n'a pas pu être ajouté à l'annuaire LDAP, car il y est déjà présent. Il va néanmoins être créé dans la base Gepi.";
				} else {
					$write_ldap_success = $ldap_server->add_user($current_eleve->login, $current_eleve->nom, $current_eleve->prenom, $current_eleve->email, $civilite, '', 'eleve');
				}
			} else {
				$write_ldap = false;
			}


			if (!$write_ldap || ($write_ldap && $write_ldap_success)) {
				if ($_POST['reg_auth_mode'] == "auth_locale") {
					$reg_auth = "gepi";
				} elseif ($_POST['reg_auth_mode'] == "auth_ldap") {
					$reg_auth = "ldap";
				} elseif ($_POST['reg_auth_mode'] == "auth_sso") {
					$reg_auth = "sso";
				}
コード例 #3
0
ファイル: modify_user.php プロジェクト: alhousseyni/gepi
				if($lig_tmp->statut=="scolarite"){
					if($_POST['reg_statut']!="scolarite"){
						$sql="DELETE FROM j_scol_classes WHERE login='******';";
						$nettoyage=mysqli_query($GLOBALS["mysqli"], $sql);
					}
				}

				// On effectue les opérations LDAP
				if (isset($create_ldap_user) && $create_ldap_user) {
					$ldap_server = new LDAPServer;
					if ($ldap_server->test_user($user_login)) {
						// L'utilisateur a été trouvé dans l'annuaire. On ne l'enregistre pas.
						$write_ldap_success = true;
						$msg.= "L'utilisateur n'a pas pu être ajouté à l'annuaire LDAP, car il y est déjà présent.<br/>";
					} else {
						$write_ldap_success = $ldap_server->add_user($user_login, $_POST['reg_nom'], $_POST['reg_prenom'], $_POST['reg_email'], $_POST['reg_civilite'], md5(rand()), $_POST['reg_statut']);
						// On transfert le mot de passe à la main
						$ldap_server->set_manual_password($user_login, "{MD5}".base64_encode(pack("H*",$oldmd5password)));
					}
				}

				if (isset($delete_ldap_user) && $delete_ldap_user) {
					$ldap_server = new LDAPServer;
					if (!$ldap_server->test_user($user_login)) {
						// L'utilisateur n'a pas été trouvé dans l'annuaire.
						$write_ldap_success = true;
					} else {
						$write_ldap_success = $ldap_server->delete_user($user_login);
					}
				}
コード例 #4
0
ファイル: edit_eleve.php プロジェクト: rhertzog/lcs
							// qu'il va falloir réinitialiser les mots de passe
							$pass_init_required = true;
							// Et si accès en écriture au LDAP, on supprime le compte.
							if ($ldap_write_access) {
								$delete_ldap_user = true;
							}
						}
	
						// On effectue les opérations LDAP
						if (isset($create_ldap_user) && $create_ldap_user) {
							if (!$ldap_server->test_user($current_eleve->login)) {
								$eleve = mysqli_fetch_object(mysqli_query($GLOBALS["mysqli"], "SELECT distinct(e.login), e.nom, e.prenom, e.sexe, e.email " .
														"FROM eleves e WHERE (" .
														"e.login = '******')"));
								$reg_civilite = $eleve->sexe == "M" ? "M." : "Mlle";
								$write_ldap_success = $ldap_server->add_user($eleve->login, $eleve->nom, $eleve->prenom, $eleve->email, $reg_civilite, md5(rand()), "eleve");
								// On transfert le mot de passe à la main
								$ldap_server->set_manual_password($current_eleve->login, "{MD5}".base64_encode(pack("H*",$oldmd5password)));
							}
						}
						if (isset($delete_ldap_user) && $delete_ldap_user) {
							if (!$ldap_server->test_user($current_eleve->login)) {
								// L'utilisateur n'a pas été trouvé dans l'annuaire.
								$write_ldap_success = true;
							} else {
								$write_ldap_success = $ldap_server->delete_user($current_eleve->login);
							}
						}
	
					}
				}
コード例 #5
0
				//check_token();

				// Si on a un accès LDAP en écriture, on créé le compte sur le LDAP
				// On ne procède que si le LDAP est configuré en écriture, qu'on a activé
				// l'auth LDAP ou SSO, et que c'est un de ces deux modes qui a été choisi pour cet utilisateur.
				if (LDAPServer::is_setup() && $gepiSettings["ldap_write_access"] == "yes" && ($session_gepi->auth_ldap || $session_gepi->auth_sso) && ($_POST['reg_auth_mode'] == 'auth_ldap' || $_POST['reg_auth_mode'] == 'auth_sso')) {
					$write_ldap = true;
					$write_ldap_success = false;
					// On tente de créer l'utilisateur sur l'annuaire LDAP
					$ldap_server = new LDAPServer();
					if ($ldap_server->test_user($_POST['new_login'])) {
						// L'utilisateur a été trouvé dans l'annuaire. On ne l'enregistre pas.
						$write_ldap_success = true;
						$msg.= "L'utilisateur n'a pas pu être ajouté à l'annuaire LDAP, car il y est déjà présent. Il va néanmoins être créé dans la base Gepi.";
					} else {
						$write_ldap_success = $ldap_server->add_user($reg_login, $current_parent->nom, $current_parent->prenom, $current_parent->mel, $current_parent->civilite, '', 'responsable');
					}
				} else {
					$write_ldap = false;
				}
	
				if (!$write_ldap || ($write_ldap && $write_ldap_success)) {
					$reg = true;
					if ($_POST['reg_auth_mode'] == "auth_locale") {
						$reg_auth = "gepi";
					} elseif ($_POST['reg_auth_mode'] == "auth_ldap") {
						$reg_auth = "ldap";
					} elseif ($_POST['reg_auth_mode'] == "auth_sso") {
						$reg_auth = "sso";
					}
					$sql="INSERT INTO utilisateurs SET " .