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

Threads & Processus C++ Discussion :

Récuperer le nom du proprietaire d'un processus


Sujet :

Threads & Processus C++

  1. #1
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    321
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 321
    Points : 360
    Points
    360
    Par défaut Récuperer le nom du proprietaire d'un processus
    Bonjour,

    Je suis en train de bouquiner un ouvrage sur la programmation en C/C++ et quelque chose me choque. L'exemple est le code d'une petite application client/serveur en TCP ou le client se connecte pour discuter avec d'autres. Ce que je trouve bizarre, c'est qu'ils proposent deux choix possibles pour s'identifier :
    - le client récupère le nom du proprietaire du processus client (getpwuid()) et l'envoie au serveur : jusque là ok pas de probleme ça se fait bien;
    - le client ne recupere que l'uid du processus client (getuid()), l'envoie au serveur et c'est le serveur qui se debrouille de faire la correspondance avec le nom. C'estça qui me pose probleme : j'admet que ceci est possible si client et serveur sont sur une meme machine (en parsant le fichier /etc/passwd) mais si le client et le serveur sont distants ? Je me pose la question de l'existence d'une telle solution.
    Bien sur seule la première est traitée :/
    Si vous avez une idée, un avis la dessus je suis preneur

  2. #2
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut
    bien le bonjour,

    Citation Envoyé par leyee
    - le client ne recupere que l'uid du processus client (getuid()), l'envoie au serveur et c'est le serveur qui se debrouille de faire la correspondance avec le nom.
    pour que cette méthode fonctionne, il faut que le serveur connaisse les correspondances entre les uid et les noms d'utilisateurs, ce qui est tout à fait possible si par exemple cette correspondance est créée chez le serveur lors de l'enregistrement du client.

    mais si cette correspondance n'existe pas, l'authentification aura un peu de mal à fonctionner .

  3. #3
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    321
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 321
    Points : 360
    Points
    360
    Par défaut
    Merci pour votre réponse,

    C'est bien ce qu'il me semblait il faut donc par exemple que le client envoie une fois noms et uid pour que la correspondance puisse se faire par la suite.

    Merci bien

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 380
    Points : 41 576
    Points
    41 576
    Par défaut
    le problème, c'est que deux clients différents sur deux machines différentes peuvent avoir le même uid sur leurs machines respectives, non ?

  5. #5
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut
    et deux clients differents sur deux machines differentes peuvent aussi avoir le meme nom d'utilisateur.

    pour une bonne authentification, la liste des noms/uid doit etre geree cote serveur et la creation de chaque nouveau compte doit etre faite en verifiant que le nom donne n'est pas deja utilise.

    Et chaque client a juste a connaitre le nom sous lequel il est enregistre aupres du serveur (ou l'uid sous lequel il est enregistre)

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/01/2008, 17h57
  2. [VBA-E]Récuperer le nom d'une feuille sans le N°
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 04/04/2006, 11h33
  3. [VB]récuperer le nom d'un routeur
    Par Mut dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 15/02/2006, 13h33
  4. [ADSI] récuperer un nom de domaine
    Par Overflow64 dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 04/06/2005, 22h16
  5. Changer le nom du proprietaire de la table
    Par ykane dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/07/2004, 16h18

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