2013-03-28 2 views
1

Je fais construire une interface graphique pour la connexion aux bases de données MySQL, et j'ai une fenêtre où les utilisateurs peuvent entrer dans: Host, User, Password, Port et Connection Name. Je voudrais enregistrer les informations de connexion pour plusieurs connexions de base de données MySQL.Enregistrement Mot de passe/Nom d'utilisateur Informations

Je veux Connection Name être un nom unique et quand quelqu'un ouvre l'écran principal à l'application il y a une liste de connexions précédemment enregistrées. Lorsque l'utilisateur clique sur l'un des Connection Names, il se connecte à la base de données. Et ils peuvent ensuite exécuter des requêtes.

Ce que je voudrais savoir est, quelle serait la meilleure façon de sauver ces connexions?

À mon avis, l'épargne dans un fichier plat juste ne ressemble pas à un moyen sûr de le faire.

Répondre

1

Vous pouvez crypter les données avec le mot de passe de l'utilisateur. N'oubliez pas de re-chiffrer le changement de mot de passe. Ce n'est pas le cas ici, mais si vous avez des données volumineuses à chiffrer/déchiffrer, vous pouvez avoir une clé statuc pour les données mais une clé ecrypt avec un mot de passe utilisateur.

Il y a beaucoup de solutions pour stocker en toute sécurité des mots de passe pour le bureau, mais je ne suis pas au courant si aucun d'entre eux ont des liaisons java.

1

Si vos utilisateurs se connecter/mot de passe, vous pouvez utiliser leur mot de passe pour chiffrer les données de connexions.

Si ce n'est pas le cas (ils devraient!) Alors votre meilleure option dépend de l'OS: API trousseau sous OSX ou DPAPI sous Windows, je ne connais pas Linux mais il a probablement une API équivalente. Et vous avez raison: c'est une idée horrible de mettre les informations de connexion dans un fichier texte

Questions connexes