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 :

Mot de passe interne à l'application


Sujet :

C#

  1. #1
    Membre du Club
    Homme Profil pro
    call center
    Inscrit en
    Janvier 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : call center
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 212
    Points : 68
    Points
    68
    Par défaut Mot de passe interne à l'application
    Bonjour,

    pour les besoins de mon projet, je cherche à mettre un mot de passe unique.
    J'aurai plus tard une base de données avec nom d'utilisateur et mdp mais pour l'instant un mdp en dur dansl'appli m'arrangerait.
    Je n'ai pas trouvé la réponse à cette question...
    Quelqu'un saurait-il comment faire?

    merci.

  2. #2
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Quel est ton souci exactement ?
    Tu peux par exemple définir des valeurs statiques constantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class Credentials
    {
        internal const string user = "Francois";
        internal const string password = "Pepito";
     
        internal static bool Check(string usr, string pass)
        {
            return usr == Credentials.user && pass == Credentials.password;
        }
    }
    Et au moment du check :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (Credentials.Check(providedUser, providedPassword))
    {
        MessageBox.Show("Bonjour Francois, voulez-vous vraiment lancer ces missiles nucléaires ?"...);
    }

  3. #3
    Membre du Club
    Homme Profil pro
    call center
    Inscrit en
    Janvier 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : call center
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 212
    Points : 68
    Points
    68
    Par défaut
    Bonjour et merci Pragmateek,

    Tout d'abord, je te rassure, je ne suis pas dans le lancement de missiles nucléaires...


    Mon plus gros soucis pour répondre à ta question: je débute en c#!
    Pour le reste il s'agit juste d'un mdp pour que personne n'accède à l'appli avant son lancement.

    J'ai réussi à faire des forms et même à appeler un form depuis un autre, ce qui à priori va me servir puisqu'il faut mettre un forme pour la saisie mdp j'imagine...

    Me confirmes tu que je dois associer ces codes au nouveau form de la demande de mot de passe?

  4. #4
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Oui tu peux les placer à ce niveau là mais je te conseille de faire une classe dédiée comme j'ai fait (Credentials) qui sera accessible de partout.

    Par contre j'ai un doute : tu développes une application lourde avec WinForms/WPF ou web avec ASP.Net WebForms/MVC ?

    Parce que si c'est du web ASP.Net intègre déjà ce type de tuyauterie d'authentification.

  5. #5
    Membre du Club
    Homme Profil pro
    call center
    Inscrit en
    Janvier 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : call center
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 212
    Points : 68
    Points
    68
    Par défaut
    Je développe un petit utilitaire avec Visual Studio c#.
    Ce serait déjà intégrable depuis VS10?

  6. #6
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Oui mon code fonctionnera quel que soit le contexte.
    Le souci c'est la sécurité puisque les credentials apparaîtront en clair dans l'assembly, mais c'est bon pour valider la tuyauterie d'authentification

    Prochaine étape : crypter le tout (ou mieux utiliser du hash) et embarquer les valeurs protégées.

  7. #7
    Membre du Club
    Homme Profil pro
    call center
    Inscrit en
    Janvier 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : call center
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 212
    Points : 68
    Points
    68
    Par défaut
    Merci pour toutes tes réponses.
    Pour autant, je dois t'avouer que vu mon niveau actuel en .net et C#, je ne pige pas tout...
    Un peu trop technique pour moi...
    Je vais tacher de décrypter avec le temps...

    Par exemple, ca veut dire quoi que "cela apparaitra en clair dans l'assembly"...?

    Deuxième question, quelqu'un peut il retrouver le code d'une appli VS10/C# à partir du .exe?

  8. #8
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Par exemple, ca veut dire quoi que "cela apparaitra en clair dans l'assembly"...?
    L'assembly c'est ce que produit le compilateur C# : soit un EXE soit une DLL.
    Dans les deux cas les constantes sont embarquées telles quelles.

    Deuxième question, quelqu'un peut il retrouver le code d'une appli VS10/C# à partir du .exe?
    Oui car le compilateur C# génère un byte-code intermédiaire (MSLI alias CIL alias IL) et il n'est pas très agressif concernant l'optimisation (c'est le domaine du compilateur natif JITter mais c'est une autre histoire).
    La solution est d'utiliser un outil d'obfuscation qui va faire en sorte que ton code soit le moins compréhensible possible par un humain qui le décompilerait.

  9. #9
    Membre du Club
    Homme Profil pro
    call center
    Inscrit en
    Janvier 2014
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : call center
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 212
    Points : 68
    Points
    68
    Par défaut
    Très intéressant!

    J'ai commencé à regarder sur le net quels sont ces logiciels...
    Je vais prendre le temps d'étudier où et comment intégrer le code que tu m'as écrit...

Discussions similaires

  1. Limitation de mot de passe avec une application
    Par pascal_T dans le forum Administration
    Réponses: 2
    Dernier message: 08/09/2008, 10h34
  2. mot de passe pour une application access
    Par samirasanae dans le forum IHM
    Réponses: 2
    Dernier message: 18/07/2008, 11h22
  3. mot de passe root dans application
    Par KalKul dans le forum Linux
    Réponses: 7
    Dernier message: 05/05/2007, 09h25
  4. mot de passe dans une application delphi
    Par Dark_Wishmaster dans le forum Delphi
    Réponses: 1
    Dernier message: 30/04/2007, 20h31
  5. Gestion d'un mot de passe interne
    Par julio02200 dans le forum Access
    Réponses: 12
    Dernier message: 21/06/2006, 17h47

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