我应该将敏感数据传递给.NET中的Process.Start调用吗?
发布时间:2020-12-14 04:01:13 所属栏目:Windows 来源:网络整理
导读:我正在开发一个.NET Windows应用程序,它将使用Process.Start启动在同一台PC上运行的另一个内部开发的.NET应用程序.我需要将数据库连接信息(包括用户ID和密码)传递给目标应用程序.我正在尝试确定在发送之前是否需要加密信息. 假设最终用户的PC没有受到损害,如
我正在开发一个.NET
Windows应用程序,它将使用Process.Start启动在同一台PC上运行的另一个内部开发的.NET应用程序.我需要将数据库连接信息(包括用户ID和密码)传递给目标应用程序.我正在尝试确定在发送之前是否需要加密信息.
假设最终用户的PC没有受到损害,如果我在参数中未加密地传递连接信息,那么连接信息是否会暴露在任何地方? 这样的事情会好吗…… string myExecutable = "myApp.exe"; string server = "myServer"; string database = "top_secret_data"; string userID = "myUser"; string password = "ABC123"; string dbInfo = string.Format("server={0} database={1} userID={2} password={3}",server,database,userID,password); ProcessStartInfo startInfo = new ProcessStartInfo(myExecutable,dbInfo); Process.Start(startInfo); 或者我应该使用这样的东西…… var crypto = new MySymmetricCryptoLib.Crypto(); string myExecutable = "myApp.exe"; string server = crypto.Encrypt("myServer"); string database = crypto.Encrypt("top_secret_data"); string userID = crypto.Encrypt("myUser"); string password = crypto.Encrypt("ABC123"); string dbInfo = string.Format("server={0} database={1} userID={2} password={3}",dbInfo); Process.Start(startInfo); 解决方法
检索调用进程的参数非常简单,因此它们将在本地公开给具有技术头脑的用户.如果这不是你的问题,那我就不用担心了,因为你说你没有通过网络进行传输而你的问题要求我们假设机器没有受到损害.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |