部署.NET WinForms应用程序的最不利企业环境是什么?

xj3cbfub  于 2022-11-25  发布在  .NET
关注(0)|答案(5)|浏览(134)

假设您正在编写一个基于网络的WinForms应用程序,该应用程序应该在一个“偏执”的环境中运行,这是因为客户站点的公司政策非常严格。这种恶劣的环境有什么样的限制?您围绕这些限制做了什么设计?
以下是一些示例:

  • 问题:防火墙限制非常严格,只允许出站端口80通信。解决方案:仅使用HTTP进行联网。
  • 问题:不允许使用.NET Framework。解决方案:将您应用程序转变为Web应用程序。

您在现实客户环境中遇到过哪些此类限制,例如银行软件(通常需要在特别严格的环境中运行)?

nnsrf1az

nnsrf1az1#

好吧,问题的第一部分,我不确定。但是,关于你的要点。你可以在端口80上运行你的服务器,而不是使用HTTP,而是使用你的自定义协议。另外,防火墙肯定允许SSL(443),您也可以将您的协议 Package 在SSL中。由于不允许.NET框架,您可以使用Xenocode的PostBuild或类似的. NET“静态链接”类应用程序。此外,对于HTTP内容,您可以使您的应用程序通过HTTP进行通信,但使用Web服务,因此仍然提供富客户端。
以下是PostBuild的链接:
https://secure.xenocode.com/Products/Postbuild-for-NET/

uklbhaso

uklbhaso2#

那些坚持使用IE6的公司。如果你试图绕过网络应用程序的限制,这可能会增加整个开销。
不给他们的用户管理员权限在他们的机器上安装东西也是一件大事,因为他们可能坚持在浏览器上进行一些安全设置。

hfyxw5xn

hfyxw5xn3#

强制所有网络流量通过端口80是一个很好的选择。然后要求端口80上有一个重定向器,以允许多个服务器应用程序“监听”一个端口,因为打开任何其他端口都会有“安全风险”。

blmhpbnm

blmhpbnm4#

你可能会发现,最大的问题是那些不定期运行Windows Update、计算机无法访问互联网的公司。我的客户就是这样,但他们需要这样。
这意味着当你推出你的软件时,你需要知道他们有什么.net平台,告诉他们“更新到最新”并不总是一个选项。在没有互联网的情况下,在每个桌面上安装更新,并推出所有的.net版本、服务包和微软补丁,这是一个真实的的痛苦。所以如果你提供的代码需要用户没有的东西,您可能需要重写它。

qkf9rpyu

qkf9rpyu5#

在.NET 2.0发布3年后,被迫在旧的框架(如.NET 1.1)中进行开发。桌面和服务器团队之间的脱节也是如此。桌面团队认为.NET不好,不安全,而服务器团队的React正好相反,他们喜欢.NET,因为它能够通过信任权限锁定环境。
要想改变公司的政策,你做不了多少,要让他们接受新的东西,这是一个非常缓慢的过程。

相关问题