如果从VS2012执行,但在IIS上托管时无法正常工作

时间:2015-03-16 14:37:39

标签: c# asp.net asp.net-mvc iis iis-express

我正在从MVC网站执行此代码。如果我从VS 2012 IIS运行此代码它正在工作,但如果我在IIS服务器上托管该网站,它不起作用。我试过调试但是有一些错误代码。如果我也模仿我的身份并传递我的身份,但一切都是徒劳的。

代码:

    System.Diagnostics.Process proc = new System.Diagnostics.Process();

    Char[] chr = Password.ToCharArray();

    System.Security.SecureString pwd = new System.Security.SecureString();

    foreach (char c in chr)
    {
        pwd.AppendChar(c);
    }

    proc.StartInfo.FileName = path to WZZip.exe

    //proc.StartInfo.Arguments = -ys20480 pathtosplit landingZone;  
    proc.StartInfo.UserName = UserName;  //Comes from config file
    proc.StartInfo.Password = pwd;        //Comes from config file
    proc.StartInfo.Domain = Domain;      //Comes from config file
    proc.StartInfo.RedirectStandardError = true;
    proc.StartInfo.RedirectStandardOutput = true;
    proc.StartInfo.UseShellExecute = false;
    bool result = proc.Start();

1 个答案:

答案 0 :(得分:1)

通过iis运行exe时你应该从一些问题开始:

A)我是否应该绕过保护IIS服务器和Windows系统的内置安全性?

B)如果你允许可执行文件使用路径进入操作系统或IIS服务器,那么其他人也可以使用它,即#34; HAcker" ?

C)对Windows和IIS服务器进行了更改,以保护系统免受攻击"攻击"并限制漏洞的表面积。  正在对系统进行什么安全监控? IIS服务器? 您将为可执行文件实施哪些安全保护?

如果你可以证明A - C的风险是合理的,那么你可以"解决问题"限制。

如果您了解风险,Technet可以使用工具来解决某些问题http://blogs.technet.com/b/elevationpowertoys/

对于Windows Vista Windows 7 Windows 2008,您拥有标准用户和权限和权限限制

线程http://forums.iis.net/p/1178151/1981859.aspx#1981859,谁可以做什么。

您可以搜索(Goole或Bing)以获得"对Windows Destop安全性的更改" "会话(0)对系统&amp ;;的变化和影响服务"

您还可以获得“Vista开发者故事”的副本。来自Microsoft下载中心。

您应该检查MSDN库的应用程序兼容性以及如何使用用户访问控制(UAC)进行设计。

许多安全更改已添加到Windows 2003和IIS 6.0服务器中。

最后你可以在IIS中添加MIME类型

  • 打开IIS管理器。

  • 浏览到ThinApp EXE所在的IIS站点或子文件夹。

  • 右键单击该站点或子文件夹,然后选择“属性”。

  • 选择HTTP HEADERS选项卡。

  • 点击MIME TYPES按钮。

  • 在扩展程序框中,输入" .exe"。

  • 在“MIME类型”框中,键入" application / octet-stream"。

  • 单击“确定”。