Empecher 2 utilisateurs en même temps sur la même session

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Empecher 2 utilisateurs en même temps sur la même session

par rebaj83 » 12 févr. 2008, 13:55

L'idée me plait iclo!

Au lieu de faire une restriction à la connexion, je pense faire un mail automatique à l'admin lorsque un compte se connecte deux fois en même temps, comme ça il y aurait envoi d'un mail de prévention à propos de la sécurité et d'avertissement de blocage du compte si cela continue.

C'est pas plus simple?

par iclo » 12 févr. 2008, 13:08

[Mode procédurié On ]Et bon, puisque que c'est une application commerciale, n'oublie pas de logger le profil qui est utiliser plusieurs fois de manière illicite, histoire de pouvoir prendre les mesures qui s'impose.
[Mode procédurié OFF]

par AB » 12 févr. 2008, 13:02

J'apprécierais pas non plus de me faire virer par un autre membre autorisé pendant que je suis entrain de faire une mise à jour... Logiquement c'est au dernier venu d'attendre sont tour.

A part ça tu devrais pourvoir, sans trop de problème, convaincre tes clients que le fait de fermer le navigateur, ferme naturellement leur session. Sinon c'est une faille de sécurité. Et puis s'il ferment par mégarde leur fenêtre ils seront bon pour nouvelle authentification, rien de bien grave.

C'est une mauvaise manip de leur part (qu'ils apprendront bien vite à maitriser), et non pas un manque de convivialité de ton programme.

Dis leur la réalité : Pour vous éviter, en tant qu'administrateur, de faire attention à ce que vous faites, je peux créer une faille de sécurité...

par rebaj83 » 12 févr. 2008, 12:43

Ben je veux pas donner cette possibilité car l'abonnement est nominatif, donc si quelqu'un d'autre veux se connecter au service, il doit payer un abonnement, donc c'est en quelque sorte pour "déranger" ceux qui essaie que je fais souhaite implémenter ça.

Comment ils font par exemple les fournisseurs d'accès internet, ils utilisent un delta?

Oui Zeus, ça pourrait être une solution de vérifier sur la page de login si la session existe encore de rediriger vers l'accueil membre, mais si l'utilisateur a fermé son navigateur, la session n'existe plus? donc c le même souci..

par zeus » 12 févr. 2008, 12:40

Et si tu bloquait l'accès à la page de login s'il est déjà connecté ?

par zigz4g » 12 févr. 2008, 12:30

Pourquoi ne pas simplifier en donnant un login / mot de passe par personne ?
Ils sont si neuneux pour ne pas se rappeler de leur propre compte ?
Ca t'enlève le problème des connexions concurrentielles.

par rebaj83 » 12 févr. 2008, 12:26

En fait je crée un service pour les agents immobilier, donc faut bien se dire que pour eux les sessions c'est du chinois Lol.

Je sais l'idée de la déconnexion est pas terrible, j'essaie de trouver la meilleure solution...

Mais je me dis que quelqu'un qui n'y connait rien et n'est pas habitué au web fonctionne ainsi:

S'il se trouve dans l'espace membre et qu'il ferme sa fenêtre, il va alors tenter de se reconnecter par le formulaire de login, et si c'est dans le laps des 10 min, il se verra alors refuser la connexion, juste?

Et si je cherche à empêcher deux connexions en même temps, c'est pour pas que deux agents se servent du même compte dans la même agence ;)

a+ et merci

par zigz4g » 12 févr. 2008, 12:12

Mais s'il ferme son navigateur, le cookie n'est pas supprimé et il sera toujours connecté ;)

Un membre n'aura pas le droit de se connecter lorsque quelqu'un se sera connecté avec le même compte sur un autre poste il y a moins de 10mn.
Comment corrompre le système :)

par zeus » 12 févr. 2008, 12:09

Mais s'il ferme son navigateur, le cookie n'est pas supprimé et il sera toujours connecté ;)

Un membre n'aura pas le droit de se connecter lorsque quelqu'un se sera connecté avec le même compte sur un autre poste il y a moins de 10mn.

par d0m » 12 févr. 2008, 11:56

en temps qu'utilisateur, j'apprécierai encore moins de me faire virer parce que l'autre utilisateur est là, ça fait encore moins professionel...

par zigz4g » 12 févr. 2008, 11:55

Salut.
Dans ton histoire, si je suis A, je suis déconnecté par B. Dans ce cas, je me reconnecte et B est viré.
B se reconnecte et de nouveau je suis déconnecté ?
Dans ce cas, je change le mot de passe et je suis tranquille ?
Es-tu sur que deux utilisateurs peuvent avoir le même compte ?

par rebaj83 » 12 févr. 2008, 11:50

Salut,

C'est bien ce que je pensais, faire avec un delta, mais cette idée ne me convient pas.

Parce que mes membres sont pour la plupart des professionnels mais pas du monde informatique...

Donc s'ils ferment par mégarde leur fenêtre, et qu'ils essaient de se reconnecter dans les 10 minutes, çà ne marchera pas, ils obtiendront le message d'erreur, et ils seront pas contents...

Sinon j'avais pensé tout simplement : si A est connecté, et que B se connecte, B devient connecté et A est viré, je sais c'est pas très beau, mais au moins çà m'assure qu'un seul compte est connecté à la fois, et si le cas se présente, il suffit que A fasse un changement de mot de passe indiqué par le message d'erreur.

Qu'en pensez vous?

par zeus » 12 févr. 2008, 09:48

Dans l'idée, dOm à raison, mais il manque une petite précision.

Le champs de type date doit contenir la dernière visite de l'utilisateur. Autrement dit, dès qu'un utilisateur connecté affiche une page, tu doit modifier ce champ pour que le delta de 10mn corresponde à un temps d'inactivité avant déconnexion ;)

par d0m » 12 févr. 2008, 09:43

Çà avait déjà été évoqué sur ce forum et il me semble qu'une solution était de mettre en plus d'un champ 1/0 une date avec heures.

Ensuite tu fixes un temps limite genre 10 min.
Pour le test, il faut alors tester sir le drapeau est à 0 (déconnexion effectuée) OU si le temps limite est écoulé.

Empecher 2 utilisateurs en même temps sur la même session

par rebaj83 » 12 févr. 2008, 00:59

Bonjour,

Je cherche à sécuriser un peu plus mon espace membre, non seulement des méchants crackers, mais surtout pour empêcher mes membres de faire n'importe quoi : en effet dans l'espace membre que je propose, mes adhérents peuvent d'une part tirer profit de se mettre à plusieurs sur le même compte (espace membre payant), et d'autre part s'il se connectent à plusieurs ce sera vite le bordel, car les gestions d'infos ne seront pas coordonnées.

J'ai cherché sur le forum mais ce que j'ai trouvé ne me convient pas.

En fait je souhaiterai que pour un compte "test" si un utilisateur A est connecté, l'utilisateur B qui tente de se connecter reçoive un message d'erreur adéquat.

Donc j'ai pensé faire ainsi: passer un champ "connecté" à "1" dans l'enregistrement MYSQL du membre lorsqu'il se connecte.

Mais voila mon souci: si l'utilisateur A ne se déconnecte pas en cliquant sur "se déconnecter" (qui est censé repasser le champ "connecté" à 0), ce dernier champ restera à 1 dans la base, et A ne pourra pas se reconnecter.

Avez vous une idée pour contourner çà?

Merci beaucoup pour votre aide.