feat: add user details
This commit is contained in:
@@ -330,4 +330,33 @@ class LDAPAuth
|
|||||||
|
|
||||||
return $users;
|
return $users;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getUserDetails($username)
|
||||||
|
{
|
||||||
|
$this->connect();
|
||||||
|
$this->bindServiceAccount();
|
||||||
|
|
||||||
|
$filter = "(sAMAccountName=$username)";
|
||||||
|
$attributes = ["*"]; // Récupère tous les attributs
|
||||||
|
|
||||||
|
$result = ldap_search($this->ad, "DC=epul3a,DC=local", $filter, $attributes);
|
||||||
|
$entries = ldap_get_entries($this->ad, $result);
|
||||||
|
|
||||||
|
if ($entries['count'] > 0) {
|
||||||
|
return $this->cleanLdapEntries($entries[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
private function cleanLdapEntries($entry)
|
||||||
|
{
|
||||||
|
$clean = [];
|
||||||
|
foreach ($entry as $key => $value) {
|
||||||
|
if (!is_numeric($key) && is_array($value)) {
|
||||||
|
$clean[$key] = $value[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $clean;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ echo "Bienvenue " . $_SESSION["sAMAccountName"] . "!";
|
|||||||
echo "<h2>Menu</h2>";
|
echo "<h2>Menu</h2>";
|
||||||
echo "<ul>";
|
echo "<ul>";
|
||||||
if ($_SESSION["is_admin"]) {
|
if ($_SESSION["is_admin"]) {
|
||||||
echo "Vous êtes un administrateur.";
|
echo "Vous êtes un administrateur.<br>";
|
||||||
echo "Vous êtes un administrateur. Vous avez des droits sur les OUs suivantes :";
|
echo "Vous avez des droits sur les OUs suivantes :";
|
||||||
echo "<ul>";
|
echo "<ul>";
|
||||||
foreach ($_SESSION['admin_ous'] as $ou) {
|
foreach ($_SESSION['admin_ous'] as $ou) {
|
||||||
echo "<li>$ou</li>";
|
echo "<li>$ou</li>";
|
||||||
@@ -31,12 +31,10 @@ if ($_SESSION["is_admin"]) {
|
|||||||
foreach ($_SESSION['admin_ous'] as $ou) {
|
foreach ($_SESSION['admin_ous'] as $ou) {
|
||||||
echo "<h3>Gestion de $ou</h3>";
|
echo "<h3>Gestion de $ou</h3>";
|
||||||
echo "<a href='../views/list_users.php?ou=" . urlencode($ou) . "'>Voir les utilisateurs</a><br>";
|
echo "<a href='../views/list_users.php?ou=" . urlencode($ou) . "'>Voir les utilisateurs</a><br>";
|
||||||
echo "<a href='../views/add_user.php?ou=" . urlencode($ou) . "'>Ajouter un utilisateur</a>";
|
echo "<a href='../views/add_user.php?ou=" . urlencode($ou) . "'>Ajouter un utilisateur</a><br><br>";
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "<li><a href='../views/list_users.php'>Liste complète des utilisateurs</a></li>";
|
echo "<a href='../views/list_users.php'>Liste complète des utilisateurs des OU administrées</a><br>";
|
||||||
echo "<li><a href='../views/add_user.php'>Ajouter un utilisateur</a></li>";
|
|
||||||
|
|
||||||
|
|
||||||
echo "<pre>Debug - OUs administrées : ";
|
echo "<pre>Debug - OUs administrées : ";
|
||||||
print_r($_SESSION['admin_ous']);
|
print_r($_SESSION['admin_ous']);
|
||||||
@@ -69,6 +67,18 @@ echo "<pre>Groupes de l'utilisateur : ";
|
|||||||
print_r($ldapAuth->getUserGroups($user_dn));
|
print_r($ldapAuth->getUserGroups($user_dn));
|
||||||
echo "</pre>";
|
echo "</pre>";
|
||||||
|
|
||||||
|
// Ajouter cette section après l'affichage des groupes
|
||||||
|
$user_details = $ldapAuth->getUserDetails($_SESSION['sAMAccountName']);
|
||||||
|
echo "<h3>Vos informations de compte :</h3>";
|
||||||
|
echo "<table border='1'>";
|
||||||
|
echo "<tr><th>Attribut</th><th>Valeur</th></tr>";
|
||||||
|
foreach ($user_details as $key => $value) {
|
||||||
|
if (!is_array($value) && $key !== 'count') {
|
||||||
|
echo "<tr><td>$key</td><td>$value</td></tr>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
echo "</table>";
|
||||||
|
|
||||||
// Bouton de déconnexion
|
// Bouton de déconnexion
|
||||||
echo "<form method='post' action='../controllers/logout.php'>";
|
echo "<form method='post' action='../controllers/logout.php'>";
|
||||||
echo "<input type='submit' value='Déconnexion'>";
|
echo "<input type='submit' value='Déconnexion'>";
|
||||||
|
|||||||
Reference in New Issue
Block a user