私は次のようにDPAPIを使用しProtectData
ています:
var temp = new byte[32]
{
1,1,1,1,1,1,1,1,
2,2,2,2,2,2,2,3,
3,3,3,3,3,3,3,3,
4,4,4,4,4,4,4,4
};
ProtectedData.Protect(temp, null, DataProtectionScope.CurrentUser);
string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
temp が次のようになったとします。
temp = { 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,....31 };
このコードを .exe ファイルと WebService (IIS) から実行したいと考えています。
問題は、exe からコードを実行している場合、現在のユーザーがMyDomain/Administrator
、WebService からコードを実行している場合、現在のユーザーがIIS APPPOOL/MyApp
.
この問題を解決するにはどうすればよいですか? 次のように .exe ファイルから実行しようとしてWebService
います。
Process.Start(@"C:\myexe.exe");
しかし、何らかの理由で機能しませんでした(iisアプリケーションに完全にアクセスできます)。 とにかく、これがこの場合の正しい解決策だとは思いません。
注:セキュリティ上の理由から、変更できませんDataProtectionScope.LocalMachine
。DataProtectionScope.CurrentUser