Vous n'êtes pas identifié(e).
Pages : 1
Merci JC pour ta réponse
Le code marche en lui même car javai deux utilisateurs dans Ma BDD un avec le groupes = 1 et un autre avec le groupe = 2 ensuite c'est 2 utilisateur sont dans Mon LDAP
MAIS il a fallu supprimer l'utilisateur1 groupes = 1 de LDAP du coups quand je veut mettre l'utilisateur2 en groupe = 1 a la place de groupe = 2 pour qu'il est accès a tout le site cela ne marche pas.
Pour ce qu'il ne marche pas
mon code permet de donner des droit ( envoie de documennt publier des actualité dans le site intranet ) uniquement pour ceux qui font partie du groupes = 1
la on peut voir que j'ai fait toutes les condition et malgré ca qd je me connecte avec un utilisateur du groupe = 1 il ne pas pas publier une actualiter
bonjour,
je vais vous présenter mon projet je doit crée un site intranet pour mon entreprise le site est finaliser mais je doit crée des règles selon l’utilisateur
en effet certains utilisateur n'auront droit a certains accès du site intranet
j'ai crée les différentes conditions mais cela ne fonctionne pas
Merci pour ta réponse JC
j'ai pas très bien saisie le problème qui a dans mon algorithme de traitement
pouvez_vous me donner un exemple s'il vous plait
cordialement
Bonjour,
je vous ecrit car cela fait un moment que j'ai un probléme de connexion a mon site intranet
je vous explique:
j'ai créé une page connexion_ldap.php ce code me permet de me connecter via un utilisateur créé dans LDAP
mais probléme ca ne marche pas et voila les erreurs qui me retourne
Connexion au serveur
Le résultat de connexion est Resource id #3
Utilisation de LDAPv3 Connexion authentifiée ...
Utilisateur authentifié avec succès !Recherche suivant le filtre (email=*@vernon27.fr)
Le résultat de la recherche est Resource id #4
LDAP-Errno: 0
LDAP-Error: Success
Le nombre d'entrées retournées est 0
Lecture de ces entrées ....
Données pour 0 entrées:
Warning: ldap_get_attributes() expects parameter 2 to be resource, boolean given in C:\Program Files\EasyPHP-12.1\www\Intranet-2\connexion_ldap.php on line 87
attributs dans cette entrée :
Notice: Undefined variable: groupes in C:\Program Files\EasyPHP-12.1\www\Intranet-2\connexion_ldap.php on line 120
Fermeture de la connexionOK Auth USER
Notice: Undefined variable: groupes in C:\Program Files\EasyPHP-12.1\www\Intranet-2\connexion_ldap.php on line 147
Notice: Undefined index: nom in C:\Program Files\EasyPHP-12.1\www\Intranet-2\connexion_ldap.php on line 148
Notice: Undefined index: prenom in C:\Program Files\EasyPHP-12.1\www\Intranet-2\connexion_ldap.php on line 149
Notice: Undefined variable: groupes in C:\Program Files\EasyPHP-12.1\www\Intranet-2\connexion_ldap.php on line 152
Vous n'avez pas de droit d'utilisation.
Retour
et voila mon code
// Connexion au serveur
echo "Connexion au serveur <br />";
$conn=ldap_connect($ldapServer);
// on teste : le serveur LDAP est-il trouvé ?
if ($conn)
{
echo "Le résultat de connexion est ".$conn ."<br />";
}
else
{
die("connexion impossible au serveur LDAP");
}
// 2ème étape : on effectue une liaison au serveur, ici de type "anonyme" pour une recherche permise par un accès en lecture seule
// On dit qu'on utilise LDAP V3, sinon la V2 par défaut est utilisé et le bind ne passe pas.
if (ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3))
{
echo "Utilisation de LDAPv3 \n";
}
else
{
echo "Impossible d'utiliser LDAP V3\n";
exit;
}
print ("Connexion authentifiée ...<br />");
$bindServerLDAP=ldap_bind($conn,$rdn,$mdp);
// nom d'utilisateur
$identifiant = $_POST['login'];
// mot de passe utilisateur
$auth_pass = $_POST['password'];
// nom de domaine
$domaine = "VERNON27.local";
// nom d'utilisateur + @ + nom de domaine
$auth_user = $identifiant."@".$domaine;
// resultat de connexion
if (!($bind=@ldap_bind($conn, $auth_user, $auth_pass)))
{
// l'utilisateur ou le mdp est refusé
echo "Nom d'utilisateur ou mot de passe refusé ! ";
echo "<a href='index.php'>Retour";
}
else
{
// l'utilisateur ou le mdp est accepté
echo "Utilisateur authentifié avec succès !";
echo "Recherche suivant le filtre (email=*@vernon27.fr) <br />";
$query = "mail=".$_POST['login']."@vernon27.fr";
$result = ldap_search($conn, $baseDN, $query);
echo "Le résultat de la recherche est $result <br />";
echo "LDAP-Errno: " . ldap_errno($conn) . "<br />\n";
echo "LDAP-Error: " . ldap_error($conn) . "<br />\n";
echo "Le nombre d'entrées retournées est ".ldap_count_entries($conn,$result)."<p />";
echo "Lecture de ces entrées ....<p />";
$info = ldap_get_entries($conn, $result);
echo "Données pour ".$info["count"]." entrées:<p />";
// Atrributs de l'entrée
$entry = ldap_first_entry($conn, $result);
$attrs = ldap_get_attributes($conn, $entry);
echo $attrs["count"] . " attributs dans cette entrée :<p>";
//Démarrage de la session
session_start();
// Informations de l'entrée
for ($i=0; $i < $info["count"]; $i++)
{
//Mise en session des données
$_SESSION['prenom'] = $info[$i]["givenname"][0];
$_SESSION['nom'] = $info[$i]["sn"][0];
$_SESSION['courriel'] = $info[$i]["mail"][0];
$d = 0;
while ($info[$i]["memberof"][$d])
{
echo $info[$i]["memberof"][$d];
echo '<br>';
$pieces = explode(',', $info[$i]["memberof"][$d]);
echo $pieces[0];
$groupes = $groupes.''.$pieces[0].'.';
echo '<br>';
$d++;
}
}
/*
while ($array[$d])
{
$groupes = $array[$d]'.';
$d++;
}*/
echo $groupes;
echo "Fermeture de la connexion";
ldap_close($conn);
// Vérification de l'existence de l'utilisateur
$reqVerif = mysqli_query($link,
' SELECT Id_utilisateurs, Num_sections
FROM utilisateurs
WHERE Pseudo="'.$_POST['login'].'"
')or die("Pb avec la requete: $reqVerif");
$existUser = mysqli_fetch_array($reqVerif);
if($existUser['Id_utilisateurs'] == '')
{
//Création de l'utilisateur pour la première fois
mysqli_query($link, "INSERT INTO utilisateurs (Id_utilisateurs, Nom, Prenom, Pseudo, Mot_de_passe, Courriel, Telephone, Groupes, Num_groupes, Num_sections)
VALUES('', '".$_SESSION['nom']."', '".$_SESSION['prenom']."', '".$_POST['login']."', '', '".$_SESSION['courriel']."', '5557545759', '".$groupes."', '1', '1')");
echo "Insertion en base de données. Veuillez vous reconnecter pour accèder à l'intranet.";
}
else
{
//Connexion de l'utilisateur déjà présent dans la base avec UPDATE du statut si modification
echo "OK Auth USER</br>";
mysqli_query($link,
" UPDATE utilisateurs
SET Groupes = '".$groupes."'
WHERE Nom = '".$_SESSION['nom']."'
AND Prenom = '".$_SESSION['prenom']."'
");
if(strstr($groupes, 'Intra_Intranet'))
{
$_SESSION['id_utilisateurs'] = $existUser['Id_utilisateurs'];
$_SESSION['num_sections'] = $existUser['Num_sections'];
//echo "<a href='accueil.php'>Poursuivre</a>";
header('Location: accueil.php');
}
else
echo "Vous n'avez pas de droit d'utilisation.";
echo '<br>';
echo '<a href="index.php">Retour</a>';
}
}
?>
pouvez_vous m'aider cordialement
Pages : 1