如何在c#windows应用程序中安装时保存用户名和密码?

时间:2012-08-04 09:47:51

标签: c# installation settings

我正在研究这个C#Windows应用程序(.Net 3.5,VS 2008),我必须创建一个exe文件,到目前为止没有问题, 该应用程序使用betfair交换API,这需要首先“登录”以获取任何其他服务的会话令牌,

所以我的团队负责人希望我以这样的方式部署应用程序 -

  
      
  1. 应用程序应在安装时向客户询问用户名和密码
  2.   
  3. 如果用户输入用户名和密码,则应用程序每次都会直接启动并使用提供的用户名和密码进行记录   自动进入Web服务。
  4.   
  5. 如果用户在安装时没有输入USER / Pass,则安装后应用程序必须分别询问用户名密码   时间推出。
  6.   

所以我的主要问题是: 如何在安装时获取和存储用户名/密码

我试着在app.config中编写它,但它以某种方式弄乱了我的网络服务设置:/

2 个答案:

答案 0 :(得分:1)

我认为你可以用稍微不同的方法来做到这一点:

  • 创建将安装程序的安装程序
  • 在安装结束时,使用交换机凭据(/credentials
  • 启动您的程序
  • 此命令行开关将允许用户输入和保存身份验证凭据

您可以将凭据保存在当前用户的settings app.config文件中... 当然,您必须开发链接到/credentials选项的所有逻辑(表单,ecc)。

答案 1 :(得分:1)

只需要注意几点。

首先,app.config文件通常不被视为安全媒体,因此您不应在其中存储用户名/密码(特别是如果它们未加密)

在Windows应用程序中存储这些详细信息的常见位置在注册表中(可以被允许以降低安全风险)。

所有密码都应以加密格式存储。不幸的是,鉴于这需要与外部系统相比,这种加密需要是可逆的。