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

Windows Forms Discussion :

[VB 2005] Comment créer une partie privée dans une Application WinForms


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut [VB 2005] Comment créer une partie privée dans une Application WinForms
    Voilà je voudrais savoir s'il était possible de créer une partie Administration sur une Application WinForms qui permettent de faire des éditions et autres avec un accès par Mot de Passe et tout.

    Etant donné que je ne connais aucun contrôle sur ce point (à part le textbox et sa propriété PasswordChar ), je ne vais pas aller loin.

    Donc si quelqu'un avait un exemple d'utilisation d'une telle inteface, ce serait sympa de me montrer comment vous avez fait.

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Question bête : le mot de passe il sera stocké où ? dans l'appli ?

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Ben je pensais le stocké dans une variable privé accessible que par la fonction de vérification !

    Donc oui dans l'application !

  4. #4
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Ok, tu sais que du code .Net ça se décompile ? (comme n'importe quel code en fait)
    Donc tu as bien conscience qu'on pourra cracker ton appli assez facilement ?

  5. #5
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Ben ouais je sais mais vu que je n'ai pas encore essayer de décompiler mon appli je ne connais pas très bien les risques ni les méthodes les plus sécurisé pour se genre de gestion.

    Donc toute aide sur ce sujet m'aiderai

    Mais oui je savais que le .Net se décompilai donc forcément je m'exposai à des risques mais bon dans l'immédiat une solution simple et de premier abord ^^

  6. #6
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Bah pour une solution simple, la TextBox avec PasswordChar suffit
    Tu fais une Form dans laquelle tu colles ton interface admin, et tu ne l'ouvres que quand ton user entre le bon mot de passe...

    J'ai ptet pas bien compris ton pb en fait

  7. #7
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Ouais d'accord pour l'interface ça se pense pouvoir y arriver (je fais du PHP aussi ^^) mais pour le mot de passe tu disais que c'était pas sûr de mettre ça dans l'appli donc comment je peux faire autrement ?

    Merci d'avance

  8. #8
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Si tu veux une vraie sécurité, faut faire du Web.
    En client lourd, tout ton code est distribué, donc y'a forcément moyen pour un petit malin de trouver le moyen, de la contourner.

    Exemple : je prend ton assembly et je créé mon propre programme qui va instancier la Form d'administration

    Si y'avais une solution vraiment sure, on trouverai pas tous ces jeux crackés sur eMule

    Mais bon.. si une solution moyennement sécurisée te convient, intéresse toi au cryptage/décryptage, ça te permet de mettre ton password dans ton appli, mais de façon moins visible.

    Comment ça "pessismiste" ? Non, "réaliste"

  9. #9
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Je vois le genre. Est ce que le Cryptage MD5 fonctione sous VB .Net ?

    Parce que j'ai pas encore fait de Web sous VB Net donc ...

    Tu peux m'aider sur le sujet

    Merci

  10. #10
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Bah en fait, je suis très mauvais en sécurité. Je ne connais que les problèmes, pas les solutions

    Mais y'a surement qqn qui sait... (google ptet ?)

  11. #11
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Ok je vais regarder ça ( est mon AMI ) ! Merci encore.

    Si jamais quelqu'un connaît des solutions qu'il n'hésite pas à poster

    Merci à toi Mose !

    Merci d'avance à tous ceux qui répondront !

  12. #12
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    Merci d'avance à tous ceux qui répondront !
    merci d'avance à toi de répondre pour exposer ta solution

    moi j'ai fait un truc moyen niveau sécurité :
    - stockage du login et mot de passe en encodé en base64 (avec une appli console VB.net que j'ai faite viteuf)
    - récupération des identifiants dans mon appli qui sont décodées avant de m'en servir...
    mais comme tu as vu : rien de sécurisé
    tout au plus en lisant le fichier de conf on ne voit pas au premier coup d'oeil les identifiants.

    Si tu as une meilleur solution....

  13. #13
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Salut .


    Pour ton problème d'interface graphique, il te suffit de faire les vérifications d'accorder ou non le droit d'édition après (en utilisant par exemple la propriété enable des compos).

    Mais plus interressant est ton problème de sécurité.
    En effet comme dit précedement un app .NET ce décompil merveillesement bien et permet de récup les string en clair.
    Perso je te conseil d'utiliser une somme MD5, .NET le fait très bien (voir google j'ai pas ma source sous les yeux). De plus il te suffit de stocker les sommes MD5 dans un fichier et de comparer. Reste le problème de ton fichier ou tu stockes tes sommes MD5. En effet si tout le monde peut lire et écrire dedans il ne reste plus qu'a remplacer la somme MD5 d'un utilisateur par un autre pour pouvoir utiliser le compte.
    Et sur ces bonnes paroles je te laisse réfléchir à une solution
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  14. #14
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Merci je vais essayer avec le MD5 en effet et je pense que pour les stocker je vais les mettre dans un endroit secret ^^

    Allez je go taper mon code et je reviendrai vous montrer le résultat

  15. #15
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    J'ai trouvé une petite astuce qui semble efficace puisque c'est le Windows qui gère cela.

    Puisque mon Application ne servira que sur des PCs auquel j'ai un accès j'ai donc pris cette option, celle d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            Dim User() As String
            User = Split(My.User.Name, "\")
            If User(1) = "D4rkTiger" Then
                If My.User.IsAuthenticated Then
                    MessageBox.Show("Vous êtes Administrateur")
                    Me.mnuAdministration.Visible = True
                End If
            Else
                MessageBox.Show("Vous êtes Utilisateur")
            End If
    Ce procédé vérifie que le nom de l'Utilisateur est bien "D4rkTiger" (Moi ) et qu'il est authentifié (Normal aussi ça ).

    Voilà un début de sécurité mais j'ai pas encore essayé de la piratée aussi donc je ne sais pas si c'est fiable à 100 %

    Je reviendrai si j'ai des nouvelles solutions !

    PS: N'hésitez pas non plus à donner vos solutions

  16. #16
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    pourquoi ne compares tu pas le md5 de ton login au md5 de la personne connectée? tu auras encore plus de sécurité...

  17. #17
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    C'est parce que je peux pas comparé de MD5 puisque j'en utilise pas

    En fait là j'utilise le login de Windows XP pour faire ma sécurité. Si l'User de Windows XP n'est pas celui attendu et n'est pas connecté alors il n'est pas considéré comme Admin (Normal )

    Je me suis dirigé vers cela car :
    D4rkTiger a dit:
    Puisque mon Application ne servira que sur des PCs auquel j'ai un accès j'ai donc pris cette option, celle d'utiliser :
    Voilà ! mais je n'abandonnes pas le MD5

  18. #18
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    OK, j'avais bien compris ta technique, mais pourquoi est-ce que tu n'encryptes pas ton login windows?

    comment vas-tu empêcher une personne qui a récupéré ton appli, de le décompiler, récupérer ton nom d'utilisateur (non codé), de créer ce même utilisateur sur son propre PC et d'avoir accès à l'interface d'administration en ouvrant tout simplement ton appli?

    Bon, c'est peut-être extrême, mais quitte à sécuriser...
    je ferai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    User = Split(My.User.Name, "\")
            If md5(User(1)) = md5deD4rkTiger Then
    non?

  19. #19
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Ah ouais effectivement c'est pas bête ! Je crois que effectivement je vais faire cela !

    Merci de ton conseil.

    PS: Pour la décompilation de mon Appli je cherche toujours à l'empêcher ! Mais j'ai pas encore trouvé

  20. #20
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Citation Envoyé par D4rkTiger
    PS: Pour la décompilation de mon Appli je cherche toujours à l'empêcher ! Mais j'ai pas encore trouvé
    Le seul moyen d'empêcher la décompilation, c'est de ne pas fournir d'exécutable.
    C'est pour ça que des tas de gens se mettent aux appli web.

    Dans le même goût, l'industrie du disque voudrait bien empêcher que les clients ne puissent ripper leurs CD, et ils n'ont toujours pas trouvé

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Comment créer un nouvel élément dans une table
    Par Theinfrarougegp dans le forum JDBC
    Réponses: 2
    Dernier message: 13/02/2015, 13h13
  2. [Débutant] comment créer des liens hypertexte dans une webpart
    Par zanoubya dans le forum SharePoint
    Réponses: 3
    Dernier message: 26/08/2013, 10h16
  3. [Drupal] Support affichage smartphone et avoir une partie privée
    Par bruce-willis dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 23/08/2011, 00h49
  4. Réponses: 8
    Dernier message: 26/03/2010, 08h16
  5. Réponses: 6
    Dernier message: 13/11/2009, 16h06

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