Я просто соберу все это в ответ, чтобы все было в одном месте, и его легче было найти, а не разложить среди комментариев.Использование BasicHttpBinding
означает, что ваши учетные данные будут передаваться в незашифрованном виде по проводам, то есть они могут быть перехвачены по пути без особых проблем.Вы можете избежать этой проблемы, используя WsHttpBinding
, что позволяет использовать один из трех различных типов безопасности: Transport
, Message
или TransportWithMessageCredential
.Вы можете прочитать об этих здесь .Имейте в виду, однако, что для любого из них вам понадобится сертификат той или иной формы.
Этот вопрос содержит краткое обсуждение некоторых других вариантов безопасности WCF.Если вы намерены использовать BasicHttpBinding
и передавать свои учетные данные по проводам, вы можете, по крайней мере, подумать о том, чтобы маскировать их каким-либо образом, прежде чем делать это, возможно, sha1 с солью или что-то подобное.Если вы не хотите использовать какие-либо встроенные и готовые решения, такие как членство в ASP.NET, вам придется самостоятельно выяснить, какой тип токена аутентификации вы хотите передать взад и вперед.