Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C#Console Application app.config中嵌入webclient的凭据?_C#_.net_Webclient_App Config_Networkcredentials - Fatal编程技术网

在C#Console Application app.config中嵌入webclient的凭据?

在C#Console Application app.config中嵌入webclient的凭据?,c#,.net,webclient,app-config,networkcredentials,C#,.net,Webclient,App Config,Networkcredentials,目前我正在使用类似这样的登录方法登录,但我想将其嵌入app.config文件以确保安全 现在看起来是这样的 WebClient c = new WebClient(); c.Credentials = new System.Net.NetworkCredential("UN", "PW", "server"); 如何将其嵌入app.config文件 <appSettings> <add key="NetworkCredentialUserName" value="UN

目前我正在使用类似这样的登录方法登录,但我想将其嵌入app.config文件以确保安全

现在看起来是这样的

WebClient c = new WebClient();  
c.Credentials = new System.Net.NetworkCredential("UN", "PW", "server");
如何将其嵌入app.config文件

<appSettings>
  <add key="NetworkCredentialUserName" value="UN" />
  <add key="NetworkCredentialPassword" value="PW" />
</appSettings>

然而,这并不能保证它们的安全。如果网络凭据用户名和密码是敏感的,我会考虑使用像pkCS12PueTeCudioDebug提供程序(NuGET包)之类的加密加密APP.CONFIG APPACTION段。我会测试的!这些密钥不是随机的,但您可以随意命名它们。请记住,使用同一密钥的应用程序设置不能超过1个。除此之外,您可能还需要使用
ProtectedData
class对密码进行加密。请参阅这篇MSDN文章了解详细信息:像一个魔咒一样工作,并感谢安东提供的额外信息!标记作为答案,向上投票给所有人。
var networkCredentialUserName = ConfigurationManager.AppSettings["NetworkCredentialUserName"];
var networkCredentialPassword = ConfigurationManager.AppSettings["NetworkCredentialPassword"];
c.Credentials = new System.Net.NetworkCredential(networkCredentialUserName, networkCredentialPassword , "server");