WCF netTCPBinding - PullRequest
       27

WCF netTCPBinding

4 голосов
/ 03 марта 2011

WCF netTCPBinding "защищен по умолчанию". Насколько я понимаю, это означает, что ..

  • Абоненты аутентифицируются, используя свои учетные данные Windows.
  • Сообщения подписаны
  • Сообщения зашифрованы.

Однако я могу настроить базовую клиентскую службу WCF, настроенную на моем локальном хосте. Аутентификация будет работать на той же машине, но как работает подпись и шифрование?

WCF нужен сертификат для подписи и шифрования сообщений. Если у меня нет сертификата, как работает мой сервис? Как сообщение, даже если оно отправляется на тот же компьютер, подписывается и шифруется.

Спасибо.

1 Ответ

5 голосов
/ 03 марта 2011

По умолчанию NetTcpBinding использует безопасность транспорта с перечисленными вами характеристиками по умолчанию.

Подписание и шифрование сообщений в этом контексте не означает то же самое, что и в безопасности сообщений.Скорее это означает, что все пакеты данных, отправленные по сетевому транспорту, подписаны и зашифрованы.Это не зависит от сертификатов.Это делается провайдерами безопасности, установленными в операционной системе на отправляющей и получающей машинах и вызываемыми через SSPI ( Интерфейс провайдера поддержки безопасности ) - такой же механизм используется, например, когда учетные данные домена используются для доступанекоторый ресурс, такой как файл на другом компьютере в сети.

Перед отправкой каких-либо данных приложения по соединению привязка организует рукопожатие SSPI между отправителем и получателем, указывая пакет безопасности Negotiate (при этом в качестве фактического протокола безопасности выбирается NTLM или Kerberos, в зависимости отвозможности соответствующих хост-машин).Токены безопасности обмениваются по соединению как часть этого рукопожатия, в конце которого поставщики безопасности двух сторон будут иметь согласованные сеансовые ключи для использования при подписании и шифровании последующих сообщений приложения.

...