2010-05-24 3 views
0

J'écris actuellement un client FTP simple (en utilisant C# et .NET). Il est important que les utilisateurs puissent «mettre en signet» leurs connexions FTP précédentes, y compris les informations d'autorisation, afin de ne pas avoir à taper le mot de passe à chaque fois.Comment puis-je mettre en signet de manière sécurisée les connexions utilisateur dans une application de bureau?

Y a-t-il un moyen de le faire en toute sécurité? Comment d'autres programmes, comme Filezilla et Firefox, parviennent-ils à stocker les connexions des utilisateurs?

Répondre

1

Je peux vous suggérer de stocker les données de connexion FTP de votre application sous forme de fichier chiffré dans le système de fichiers (pour chaque utilisateur connecté). Pour ce faire, l'utilisateur doit utiliser un mot de passe global pour déverrouiller ce stockage (déchiffrer le fichier). Dans les applications Mozilla, il est appelé "maître-mot de passe". Lorsque votre programme démarre, l'utilisateur doit entrer le mot de passe maître (peut-être une paire de connexion et un mot de passe utilisateur). Puis, en utilisant ce mot de passe maître (ou certaines informations dérivées) comme clé, le fichier stocké (avec les données de connexion FTP) sera déchiffré. Cette méthode est sûre, car vous utilisez le cryptage avec la clé, connue uniquement de l'utilisateur de l'application.

En outre, ce mot de passe doit être utilisé lors de la connexion à votre application. Ou n'importe qui peut exécuter votre application et obtenir des données de connexion FTP. Quelque chose comme ... L'utilisateur exécute votre application. Entrées son login & mot de passe. Le programme les utilise comme clé pour le décryptage. Si les données décryptées ne sont pas un mess texte, l'utilisateur est connecté correctement.

Questions connexes