IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Savoir si l'utilisateur est connecté au Web


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut Savoir si l'utilisateur est connecté au Web
    Bonjour à tous,

    Je voudrais savoir s'il y'a une manière portable de savoir si l'utilisateur courant est connecté au Web.
    J'imagine qu'il va falloir que je me tourne vers une librairie qui gère les sockets.
    Je viens d'installer asio (boost), et je suis plongé dans la doc mais pour l'instant je ne vois rien.

    Merci d'avance!

    Sp@rtan03

  2. #2
    Rédacteur
    Avatar de pi-2r
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 487
    Par défaut
    Citation Envoyé par Spartan03
    J'imagine qu'il va falloir que je me tourne vers une librairie qui gère les sockets.
    En effet ,je te conseil ce lien: http://c.developpez.com/WalrusSock/
    Les pièges de l'Internet
    Helix, réponse à une intrusion


    "La plus grande gloire n'est pas de ne jamais tomber, mais de se relever à chaque chute." Confucius
    "Si j'ai vu plus loin, c'est en me tenant sur les épaules de géants." Isaac Newton

  3. #3
    Membre chevronné Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Par défaut
    L' API inet a une fonction qui fait ça.
    http://c.developpez.com/sources/bcb/?page=internet

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut
    Ok, d'accord!

    Mais est-ce que les winsocks sont portables. Au niveau du serveur surtout, car les clients seront presque tous sous Windows mais le serveur sera probablement sous Linux.
    Je ne pense pas vu que la librairie winsock n'est pas standard et qu'il existe des librairies comme (boost.)ASIO qui vantent leur portabilité.

  5. #5
    Membre chevronné Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Par défaut
    Les sockets BSD correspondent à une norme établie.

    La majorité des plate-formes s'y conforment. A part une, qui est payante. Elle s'est tout simplement appropriée l' API en la ré-écrivant, en ajoutant des fonctions WSA dont l' utilité m' échappe, etc... La liste des différences entre les sockets windows et le reste du monde est très longue, j'ai d'ailleurs écrit un livre à ce sujet.

    Par conséquent non, "winsock n'est pas portable", les sockets non plus d' ailleurs, pour la même raison. C'est dommage qu'un code compile et fonctionne bien sur UNIX/Linux/FreeBSD/OS/2/Solaris/Mac mais pas sur MS. Et vice-versa.

    Mais à mon avis l'idée du serveur dédié linux est une bonne approche. Mon conseil: fais ton client windows d'un côté, et le serveur linux de l' autre. De toute façon il y aura deux liens en téléchargement. Au pire on s'en sort très bien avec quelques directives pré-processeur ou quelques macros.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut
    Citation Envoyé par Lunixinclar
    Mais à mon avis l'idée du serveur dédié linux est une bonne approche. Mon conseil: fais ton client windows d'un côté, et le serveur linux de l' autre. De toute façon il y aura deux liens en téléchargement. Au pire on s'en sort très bien avec quelques directives pré-processeur ou quelques macros.
    Le problème, c'est que mon application va être distribuée (gratuitement), ce n'est pas (seulement) pour mon usage perso, elle doit donc être portable.
    Sinon, effectivement, je code une appli. Windows pour mon client, une linux pour mon serveur et c'est bon!

    Je m'explique, il s'agit d'un petit programme qui sert à vraiment bannir une personne malveillante d'un site.
    En effet, aucun moyen efficace n'a encore été trouvé à ce jour.

    La solution serait alors de connaitre en permanence l'IP d'un membre banni (la plupart des IP étant dynamiques).
    Ce que je propose, c'est un programme qu'on installe sur l'ordinateur d'un banni (là je n'ai pas encore trouvé comment faire pour l'installer), qui doit être le plus léger possible et qui doit marcher sous Windows, MAC et Linux (il s'agit du prog. client). Ce programme vérifie si l'utilisateur est connecté au Web toutes les 5 secondes et s'il l'est, il envoie son IP au serveur et, dès qu'il se déconnecte, il se remet en attente de connection. Sinon, il réenvoie l'IP toutes les 20 secondes.
    Coté serveur, ce programme récéptionne les IP, les stocke dans un fichier avec une syntaxe particulière (au départ j'avais pensé à du XML) et, lorsqu'il n'a plus de nouvelles d'une IP depuis plus de 50 secondes, il l'efface de ce fichier (d'où l'utilité du réenvoi de l'IP toute les 20 secondes) afin de ne pas pénaliser un nouveau connecté qui récupérerait l'IP d'un banni déconnecté.
    Le Webmaster, pour sa part, gère les bannis à sa manière. Il peut leur empêcher l'accès à l'espace membre ou carréement à tout le site et ce, grâce à des langages Web dynamiques tels que le PHP ou l'ASP.

    Je coderai donc aussi une petite bibliothèque PHP et une ASP qui permettent de savoir si l'IP d'un client qui appelle une page ($_SEVER['REMOTE_ADDR'] en php) est bannie en analysant le contenu du fichier des IP bannies.
    Le fichier devrait ressembler à ceci :

    IP_bannie1|timestamp(\n)
    IP_bannie2|timestamp(\n)
    etc...
    Ou IP_bannie représente l'IP bannie et timestamp le time_t auquel on a reçu l'IP pour la dernière fois.

    Donc, pour cette raison, l'application, aussi bien du côté du serveur que du client, devra être portable et, donc, j'aimerais bien ne pas avoir à écrire une appli pour chaque OS. C'est pourquoi j'essaie de bosser avec une librairie portable.

    J'ai entendu dire que ASIO était très bien (d'ailleurs, s'il elle va être intégrée à boost, c'est surement qu'elle l'est).
    Mais je trouve la doc un peu faible.
    Connaissez vous des tutos sur ASIO?

  7. #7
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par défaut
    Tu veux donc créer un cheval de Troie pour bannir des utilisateurs de façon certaine ?

    Ca ne me parait pas terrible comme idée (en tous cas, j'aurais vraiment tendance à fuir ce genre de sites... au moins ça leur éviterait de me bannir ). Et puis ta solution se révèlera inefficace pour les clients 'protégés'...

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut
    Citation Envoyé par Eusebe
    Tu veux donc créer un cheval de Troie pour bannir des utilisateurs de façon certaine ?

    Ca ne me parait pas terrible comme idée (en tous cas, j'aurais vraiment tendance à fuir ce genre de sites... au moins ça leur éviterait de me bannir ). Et puis ta solution se révèlera inefficace pour les clients 'protégés'...
    Pour une fois qu'un cheval de troie serait utile.

    Si le webmaster ne fait pas une utilisation abusive de cette appli. il n'y a aucune raison que tu te fasses bannir. Seulement, sur tous les forums qui parlenet de conception et d'administration de site web on voit des sujets du genre "[aide] bannir un membre" dans lesquels des webmasters en ont marre que certains *** viennent mettre le bordel sur leurs forums sans raison et se réinscrivent chaque fois qu'on désactive leur compte.
    Pour ce qui est des clients protégés, un antispy à besoin de définitions pour désinstaller un tel programme non??
    Quant aux firewall, ils n'ont pas l'air de bien déranger les spywares.

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 192
    Par défaut
    Personellement ça me paraît à la limite de la légalité un programme comme ça... Qu'un tiers sache à n'importe quel moment si je suis connecté à internet ou non, et qui plus est en installant un programme certainement sans mon accord sur mon poste, ça me fait beaucoup penser à une violation de vie privée ou un truc comme ça (spyware en tout cas, qui sera fiché vite fait par les antivirus)...

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut
    Citation Envoyé par borisd
    Personellement ça me paraît à la limite de la légalité un programme comme ça... Qu'un tiers sache à n'importe quel moment si je suis connecté à internet ou non, et qui plus est en installant un programme certainement sans mon accord sur mon poste, ça me fait beaucoup penser à une violation de vie privée ou un truc comme ça (spyware en tout cas, qui sera fiché vite fait par les antivirus)...
    Si tu as une autre solution à me proposer je suis tout à toi.
    Enfin sache qu'il existe déja de tels programme semblables mais beaucoup moins gentils.
    Généralement financés par des grosses boites, il envoie à un serveur ce que tu tape, sur quels sites tu te connecte etc...
    Il paraît même que des spywares de microsoft sont installés par défaut sur Windows.

    Niveau légalité, tu as raison, il faudra que je consulte la législation.
    Ce qui est sur c'est que je n'ai aucune intention malveillante en codant ce programme et je ne le distribuerait pas OpenSource afin qu'il ne soit pas facilement transformable en un programme malveillant.

  11. #11
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par défaut
    Citation Envoyé par Spartan03
    Si le webmaster ne fait pas une utilisation abusive de cette appli. il n'y a aucune raison que tu te fasses bannir.
    Ce que je disais juste, c'est que si j'avais connaissance d'un site qui utiliserait ces techniques, je l'éviterais...
    Citation Envoyé par Spartan03
    Seulement, sur tous les forums qui parlenet de conception et d'administration de site web on voit des sujets du genre "[aide] bannir un membre" dans lesquels des webmasters en ont marre que certains *** viennent mettre le bordel sur leurs forums sans raison et se réinscrivent chaque fois qu'on désactive leur compte.
    Et oui, c'est vrai que c'est une plaie... Une bonne solution serait la bienvenue, mais je n'en connais pas (à moins de verrouiller très strictement les utilisateurs pouvant se connecter à un site ou un forum, mais il y a toujours des risques de dérive)
    Citation Envoyé par Spartan03
    Pour ce qui est des clients protégés, un antispy à besoin de définitions pour désinstaller un tel programme non??
    Quant aux firewall, ils n'ont pas l'air de bien déranger les spywares.
    Pour les antispy / antivirus, oui en effet, mais s'il était utilisé, ton outil serait rapidement repéré...
    Pour les firewall, ça dépend de leur configuration...
    Et tu as d'autres solutions pour contourner ton outil, comme par exemple l'utilisation d'un proxy...
    Citation Envoyé par Spartan03
    Il paraît même que des spywares de microsoft sont installés par défaut sur Windows.
    C'est vrai... même que Microsoft fournis lui-même un anti-spyware pour s'en débarrasser !

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut
    Citation Envoyé par Eusebe
    C'est vrai... même que Microsoft fournis lui-même un anti-spyware pour s'en débarrasser !
    En même temps les principaux producteurs de "petits" virus (pas des gros truc genre LoveSan) sont les compagnies qui vendent des antivirus!

    Ceci dit une fois un processus d'installation crée, je coderai une appli qui permet de virer ce prog... seulement avec accord du webmaster qui mettra l'IP "libérée" dans un fichier!

    Ceci dit c'est vrai que quand j'y réfléchi, les méthodes de contournement sont encore nombreuses.

  13. #13
    Membre chevronné Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Par défaut
    C'est non. Désolé mais je suis d'accord avec les intervenants.
    Si vraiment tu tombes sur quelqu'un de "malveillant" c'est direction la CNIL et plainte à la gendarmerie (les institutions aussi se modernisent).
    Qu'aurait-il fait de si "malveillant" pour se retrouver avec ce genre d' espion -sans la garantie qu'il fonctionne- en d' autres termes quelle est la définition de "malveillant"?

  14. #14
    Membre éclairé
    Inscrit en
    Octobre 2004
    Messages
    616
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 616
    Par défaut
    Tout dépend de ton "site", mais une gestion de menbre par invitation seulement , et en banissant la personne qui à invité un fouteur de trouble, tu t'assure une tranquilité certaine Mais ca demande pas mal de bouche à oreille pour se lancer un site comme ca, et ce n'est pas adapté pour un site perso , car il y a peu de chance que tu passe l'étape du bouche à oreilles .

    En espèrant que ca serve .

  15. #15
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Par défaut
    Citation Envoyé par Lunixinclar
    Qu'aurait-il fait de si "malveillant" pour se retrouver avec ce genre d' espion -sans la garantie qu'il fonctionne- en d' autres termes quelle est la définition de "malveillant"?
    Pas quelque chose de forcément très grave mais du genre, sur un forum d'entraide, à insulter les gens qui postent, à signaler tout et n'importe quoi aux modérateurs qui ont déjà assez de boulot comme ça etc...
    Malheureusement ça existe et quand on banni ces personnes, elles se réinscrivent la plupart du temps.

    Je sais qu'il y'a des gens qui ont des problèmes avec des fauteurs de troubles dans ce genre là.
    Mais c'est limite légal, défendable avec un bon avocat, mais je ne veux pas d'emmerdes.
    Je vais laisser tomber ce projet et retourner à mon bon vieux Moteur3D!
    De toute façon ça n'a rien d'"important" pour moi, je ne suis pas encore Webmaster et je programme comme loisir.

    Merci quand même!

Discussions similaires

  1. [Débutant] Savoir si l'ordinateur est connecté à un site web
    Par T4unt dans le forum C#
    Réponses: 4
    Dernier message: 25/02/2013, 20h18
  2. Savoir si l'utilisateur est connecté à Internet ou non
    Par YANN-56 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/01/2010, 13h48
  3. Réponses: 1
    Dernier message: 29/10/2009, 11h09
  4. Savoir si un utilisateur est connecté
    Par acheda dans le forum Langage
    Réponses: 5
    Dernier message: 30/08/2007, 16h55
  5. [Active Directory] Savoir si un utilisateur est connecté
    Par bl4ckwolf dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 15/08/2006, 16h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo