即使我没有存储密码,程序是否可以存储密码?
问题描述:
我试图编写一个程序,该程序将获得当前的用户名和域名,然后要求用户输入他/她自己的密码用于安全目的,如果它验证,那么它将引导用户到主程序。即使我没有存储密码,程序是否可以存储密码?
我的问题是用户退出后,程序会将用户名,域名或密码存储在缓存中。或者它不会在计算机中存储任何内容。
如果它将它存储在缓存中。在用户退出程序后,如何确保这些内容都不会在程序中的任何位置存储。
编辑
我使用using System.Security.Principal;
来获取用户名和域名。
至于密码我使用窗体窗体要求用户输入密码。
目前我只是窗口形式的程序而不是web编程。
谢谢
答
这假设程序是网络软件...
在用户的浏览器可能会保存它,如果他们告诉自己的浏览器来存储密码。作为该软件的开发者,你无能为力。
除非您明确地让软件将密码写入服务器上的某种存储(文件,数据库,memcached等),否则密码将不会存储在您的程序中。
您使用LDAP进行验证吗? – 2012-01-03 21:14:44
您必须在应用程序退出之前将您存储用户/传递数据的变量的内存空间清零。 'password ='thisisnottherealpassword';'覆盖实际值。如果数据所在的内存空间碰巧交换到磁盘,那么您将在磁盘上存储值,直到交换空间的特定位被覆盖,等等。 – 2012-01-03 21:14:47
Metro?的WinForms? WPF? Silverlight的? ASP.Net? MonoTouch的? – SLaks 2012-01-03 21:14:53