В какой корпоративной среде враждебнее всего развертывать приложение .NET WinForms? - PullRequest
5 голосов
/ 04 мая 2009

Предположим, вы писали сетевое приложение WinForms, которое должно работать в «параноидальной» среде из-за ограничительных политик компании на сайте клиента. Какие ограничения были в такой враждебной среде, и что вы делали, чтобы создать вокруг них?

Некоторые примеры для начала:

  • Проблема: существует очень ограниченный межсетевой экран, который разрешает только исходящий трафик порта 80. Решение: используйте только HTTP для работы в сети.
  • Проблема: .NET Framework не разрешен. Решение: превратите ваше приложение в веб-приложение.

С какими ограничениями вы сталкиваетесь в реальных ситуациях клиентов, например, в банковском программном обеспечении (которое обычно должно жить в особенно строгих условиях)?

Ответы [ 5 ]

3 голосов
/ 04 мая 2009

Ну, первая часть вопроса, я не уверен в этом. Тем не менее, что касается ваших пунктов пули. Вы можете запустить свой сервер на порту 80 и НЕ использовать HTTP, а свой собственный протокол. Кроме того, конечно, брандмауэр разрешает SSL (443), вы можете также обернуть свой протокол в SSL. Поскольку платформа .NET не разрешена, вы можете использовать PostBuild в Xenocode или аналогичное приложение типа «статическое связывание» для .NET. Кроме того, что касается HTTP, вы можете заставить свое приложение взаимодействовать по HTTP, но использовать веб-службы и, следовательно, по-прежнему предоставлять расширенный клиент.

Вот ссылка на PostBuild:

https://secure.xenocode.com/Products/Postbuild-for-NET/

2 голосов
/ 04 мая 2009

Компании, которые настаивают на том, чтобы придерживаться IE6. Это может привести к дополнительным расходам, если вы попытаетесь обойти ограничения с помощью веб-приложения.

Не дает своим пользователям права администратора для установки вещей на их компьютер, это также большая проблема, как и некоторые настройки безопасности браузера, на которых они могут настаивать.

1 голос
/ 04 мая 2009

Вероятно, самая большая проблема, с которой вы столкнетесь, - это компании, которые не запускают Windows Update регулярно и не имеют доступа в Интернет на своих компьютерах. Мои клиенты такие, но тогда они должны быть.

Это означает, что когда вы развертываете свое программное обеспечение, вам необходимо знать, какая у него платформа .net, и сказать им, что «обновите до последней версии», не всегда возможно. Очень сложно установить обновления без Интернета на каждом рабочем столе и получить все версии .net, пакеты обновления и MS-патчи. Поэтому, если вы предоставляете код, требующий чего-то, чего у пользователя нет, вам, возможно, придется его переписать.

1 голос
/ 04 мая 2009

Хорошим является форсирование всего сетевого трафика через порт 80. И затем требование перенаправителя на порт 80, чтобы позволить нескольким серверным приложениям «прослушивать» один порт, поскольку открытие любого другого порта было бы «угрозой безопасности».

0 голосов
/ 04 мая 2009

Будучи вынужденным разрабатывать в старых фреймворках, таких как .NET 1.1, через 3 года после выпуска .NET 2.0. Также разрыв между рабочим столом и командами сервера. Коллектив настольных компьютеров считал, что .NET был плохим и небезопасным, в то время как команда серверов действовала прямо противоположно и любила .NET, потому что у него была возможность блокировать среду с разрешениями доверия.

Не так много вы можете сделать, чтобы изменить корпоративную политику, которая очень быстро. Это медленный, очень медленный процесс, чтобы заставить их принять что-то новое.

...