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

avec Java Discussion :

Mettre en oeuvre un mot de passe


Sujet :

avec Java

  1. #1
    Membre actif Avatar de kalina
    Femme Profil pro
    Développeur Java
    Inscrit en
    Avril 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2009
    Messages : 220
    Points : 293
    Points
    293
    Par défaut Mettre en oeuvre un mot de passe
    Salut tout le monde,
    Mon logiciel va être utilisé par plusieurs utilisateurs,je voudrai que chacun d'eux s'identifie avant d'accéder au programme à l'aide d'un mot de passe; je sais pas comment faire ça! j'utilise NetBeans et j'accède à une base de données Access, pouvez-vous m'aider svp?
    Merci d'avance!

  2. #2
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    Pour une base de donnée classique :

    Tu crée une table MOTDEPASSE
    contenant 2 arguments par tuples {login et motDePasse}

    Au début de ton programme tu consulte la table MOTDEPASSE et tu regarde si le login et le mot de passe que l'utilisateur a entré son correct.
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  3. #3
    Membre actif Avatar de kalina
    Femme Profil pro
    Développeur Java
    Inscrit en
    Avril 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2009
    Messages : 220
    Points : 293
    Points
    293
    Par défaut problème
    Bonsoir
    Merci pour la réponse; c ce que j'ai fait, mai ya un problème, j'crois que c parce que je manipule pas bien Access:
    le mot de passe ou le nom d'utilisateur que je récupère n'est jamais le même que celui que je saisis même si je tape exactement la même chose, celà est dû au fait que quand je récupère,mon ResultSet me ramène toute la longueur de mon champ(y compris les blanc); alors ce que je fait:
    avec un subString je verifie si mon mot de passe correspond au début de la chaîne récupérée, mais c clair que ce n'est pas du tout fiable n'est-ce pas?
    alors si vous avez une petite idée, je vous remercie de me la confier.
    MERCI D'AVANCE

  4. #4
    Membre émérite
    Avatar de azstar
    Homme Profil pro
    Architecte Technique BizTalk/.NET
    Inscrit en
    Juillet 2008
    Messages
    1 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Technique BizTalk/.NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 198
    Points : 2 424
    Points
    2 424
    Par défaut
    slt

    si tu re deparace des blanc ou les espaces essai de utiliser la fct trim
    ou replace ("a replace ","le replacant")

    ou si tu veut compare deux string essai d'utilise string1.equal(string2)
    elle returne true si elles sont eqaux et false si l'invese
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    if (string1.equals(string1))
    //string1 == string2
    else
    //string1 <> string2

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par kalina Voir le message
    mon ResultSet me ramène toute la longueur de mon champ(y compris les blanc);
    C'est parce que tu as défini une table avec des champs de taille fixe. Quand tu défini ta table coté accès, utilise des varchar2.


    PS: définire un user/pass via une table n'est utile que si t'es dans un shéma où l'application s'éxécute sur un serveur. Si elle s'exécute directement sur le poste client ça sert à rien et c'est même dangeureux (le client aura dans ce cas le mot de passe accès, et pourra l'utiliser pour récupérer la liste des mots de passes des autres utilisateurs)

  6. #6
    Membre actif Avatar de kalina
    Femme Profil pro
    Développeur Java
    Inscrit en
    Avril 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2009
    Messages : 220
    Points : 293
    Points
    293
    Par défaut
    Bonsoir,
    Merci à tous pour vos réponses, et bien vu Tchiz! c'est vrai que ce serait mieu d'utiliser varchar2 pour mes champs à accès, et oui je suis d'accord : utiliser une table pour mes mots de passe peut être dangereux, d'autant plus que mon application s'exécute sur un poste client, mais voilà je ne sais pas comment faire autrement! alors pouvez-vous m'aider s'il vous plaît? Merci d'avance

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    si t'exécute coté client, il faut un accès à la base de donnée par utilisateur et tu utiliser cette paire utilisateur/mot de passe pour la connection base de données

  8. #8
    Membre actif Avatar de kalina
    Femme Profil pro
    Développeur Java
    Inscrit en
    Avril 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2009
    Messages : 220
    Points : 293
    Points
    293
    Par défaut
    bonsoir,
    J'suis désolée tchize j'saisie pas très bien ce que vous voulez dire,enfin il est vrai que je n'est rien dit à propos de mon application. L'utilisateur doit accèder à l'application après identification(user,motDePasse), l'application se connecte à la base de données access grâce au mot de passe que j'ai défini pour la base (je fait ça avec un getConnection(....)) et l'utilisateur ne peut accèder à la base que via l'application, d'ailleur je voudrais bien pouvoir cacher ma base(l'utilisateur ne doit pas la trouver sur son pc )mais j'sais même pas si c'est possible!
    Donc voilà, le problème du mot de passe se situe au niveau de l'accès de l'utilisateur à l'application et non pas à la base,et j'sais pas comment faire à part utilise une table pour les user/motDePasse!
    merci pour votre interrêt

  9. #9
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    a partit du moment ou la connection à la base de donnée se fait depuis le pc client, la seule authentification potable, c'est de donner un account base de donnée à chaque utilisateur et d'utiliser ce user / pass dans le getConnection().

    En effet, si tu stocke le user/pass de la base de données dans ton application et que tu utilise une table pour l'authentification de tes users, l'utilisateur n'a aucun problème à les extraire, se connecter à la base de données et y rajouter des accounts pour ton application.

    Si tu ne veux pas que l'utilisateur aie un accès direct à la base, alors faut revoir ton design, il va te falloir un serveur intermédiaire qui gère la connection db et fournis les services aux applications clientes

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ou mettre sa demande de mot de passe
    Par pierrot67 dans le forum Bases de données
    Réponses: 6
    Dernier message: 10/07/2006, 08h52
  2. [VBA] EXCEL comment mettre un mot de passe dans d’une macro?
    Par POUY64 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 24/01/2006, 16h13
  3. Mettre un mot de passe sur un partage réseau
    Par maxonman dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 06/10/2005, 10h22
  4. Smbclient mettre le mot de passe dans la ligne de commande
    Par EpOnYmE187 dans le forum Réseau
    Réponses: 2
    Dernier message: 28/07/2005, 19h39
  5. Réponses: 3
    Dernier message: 12/07/2004, 23h27

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