我正在使用System.Diagnostics.Process从Windows控制台应用程序执行svn命令。这是流程的配置:
svn.StartInfo.FileName = svnPath;
svn.StartInfo.Arguments = string.Format("copy {0}/trunk/ {0}/tags/{1} -r head -q --username {3} --password {4} -m \"{2}\"", basePathToRepo, tagName, message, svnUserName, svnPassword);
svn.StartInfo.UseShellExecute = false;
svn.Start();
svn.WaitForExit();
我的问题是那些包含svn凭证的参数是以不安全的方式发送的(我想)。
有没有办法使用Process类以安全的方式发送这些参数?
谢谢!
答案 0 :(得分:1)
发送到哪里?它们从您的代码传递到WinApi。它是内存中的操作,足够安全。
答案 1 :(得分:1)
这是使用标准命令行机制,它将与任何其他方法相同。没有“安全”的方式将命令行参数发送到程序,因为它只是一个标准过程。
话虽如此, 只能在本地访问,因为您已在本地用户的帐户中运行此功能。这与用户在命令提示符窗口中输入此内容一样安全......