У меня есть служба WCF, размещенная на сервере с реальным IP-адресом, но без доменного имени. Клиенты - это настольные приложения .NET. Мне нужно зашифровать данные, возвращающиеся назад, и заставить их между клиентами и сервером. Как я могу это сделать? Я понимаю, что для сертификатов, необходимых для подключения SSL, требуется имя домена. это точно? Какие у меня варианты?Шифрование сообщений, отправленных в службы WCF, размещенные на сервере с реальным IP
3
A
ответ
5
Если все ваши клиенты - это приложения .NET, рассмотрите возможность использования NetTcpBinding, которое по умолчанию безопасно. Все пакеты сообщений подписаны и шифруются по протоколу TCP.
Вы также можете контролировать уровень защиты на контрактах сообщений, обеспечивая гранулированный контроль над конкретными заголовками или элементами кузова.
Вы можете использовать ProtectionLevel. Возможные варианты: None
, Sign
и EncryptAndSign
.
- None отключает защиту сообщений.
- EncryptAndSign обеспечивает полное сообщение по умолчанию и является значением по умолчанию .
- Знак указывает на то, что сообщение должно быть подписано, но не зашифрованы
WCF предоставляет богатые функции безопасности, для более подробной информации проверить Windows Communication Foundation Security
насколько велика вероятность его столкнуться с проблемами брандмауэра, если я использую NetTcpBinding по сравнению с WsHttpBinding ? или нет разницы? – Emad
Вы можете установить TCP-порт как исключение в правилах брандмауэра. – 2010-06-27 09:58:24