1

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 クラスを使用してこれらの引数を安全な方法で送信する方法はありますか?

ありがとう!

4

2 に答える 2

1

どこに送る?コードから WinApi に渡されます。それはメモリ内操作であり、十分に安全です。

于 2010-04-27T17:00:47.887 に答える
1

これは、他の方法と同じになる標準のコマンド ライン メカニズムを使用しています。コマンドライン引数をプログラムに送信する「安全な」方法はありません。これは単なる標準プロセスであるためです。

そうは言っても、これローカル ユーザーのアカウントで既に実行しているため、ローカルでのみアクセスできます。これは、ユーザーがこれをコマンド プロンプト ウィンドウに入力するのと同じくらい安全です...

于 2010-04-27T17:01:33.700 に答える